From ca74c91fc915fcce74b344b8727ee4325c821b2a Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Wed, 20 Jan 2021 19:06:39 +0100 Subject: [PATCH] language detect: remove unwanted db fields --- backend/src/middleware/languages/languages.js | 20 +------ .../middleware/languages/languages.spec.js | 59 ++++++++----------- backend/src/schema/types/type/Post.gql | 3 - 3 files changed, 27 insertions(+), 55 deletions(-) diff --git a/backend/src/middleware/languages/languages.js b/backend/src/middleware/languages/languages.js index 0cfe6a0e9..3cf760f31 100644 --- a/backend/src/middleware/languages/languages.js +++ b/backend/src/middleware/languages/languages.js @@ -11,31 +11,17 @@ const removeHtmlTags = (input) => { const setPostLanguage = (text) => { const lngDetector = new LanguageDetect() lngDetector.setLanguageType('iso2') - const result = lngDetector.detect(removeHtmlTags(text), 2) - return { - language: result[0][0], - languageScore: result[0][1], - secondaryLanguage: result[1][0], - secondaryLanguageScore: result[1][1], - } + return lngDetector.detect(removeHtmlTags(text), 1)[0][0] } export default { Mutation: { CreatePost: async (resolve, root, args, context, info) => { - const languages = await setPostLanguage(args.content) - args = { - ...args, - ...languages, - } + args.language = await setPostLanguage(args.content) return resolve(root, args, context, info) }, UpdatePost: async (resolve, root, args, context, info) => { - const languages = await setPostLanguage(args.content) - args = { - ...args, - ...languages, - } + args.language = await setPostLanguage(args.content) return resolve(root, args, context, info) }, }, diff --git a/backend/src/middleware/languages/languages.spec.js b/backend/src/middleware/languages/languages.spec.js index 66f8c5f2b..1448e4e4b 100644 --- a/backend/src/middleware/languages/languages.spec.js +++ b/backend/src/middleware/languages/languages.spec.js @@ -32,9 +32,6 @@ const createPostMutation = gql` mutation($title: String!, $content: String!, $categoryIds: [ID]) { CreatePost(title: $title, content: $content, categoryIds: $categoryIds) { language - languageScore - secondaryLanguage - secondaryLanguageScore } } ` @@ -61,17 +58,15 @@ describe('languagesMiddleware', () => { ...variables, content: 'Jeder sollte vor seiner eigenen Tür kehren.', } - const response = await mutate({ - mutation: createPostMutation, - variables, - }) - expect(response).toMatchObject({ + await expect( + mutate({ + mutation: createPostMutation, + variables, + }), + ).resolves.toMatchObject({ data: { CreatePost: { language: 'de', - languageScore: 0.5134188034188034, - secondaryLanguage: 'no', - secondaryLanguageScore: 0.3655555555555555, }, }, }) @@ -82,17 +77,15 @@ describe('languagesMiddleware', () => { ...variables, content: 'A journey of a thousand miles begins with a single step.', } - const response = await mutate({ - mutation: createPostMutation, - variables, - }) - expect(response).toMatchObject({ + await expect( + mutate({ + mutation: createPostMutation, + variables, + }), + ).resolves.toMatchObject({ data: { CreatePost: { language: 'en', - languageScore: 0.3430188679245283, - secondaryLanguage: 'da', - secondaryLanguageScore: 0.19968553459119498, }, }, }) @@ -103,17 +96,15 @@ describe('languagesMiddleware', () => { ...variables, content: 'A caballo regalado, no le mires el diente.', } - const response = await mutate({ - mutation: createPostMutation, - variables, - }) - expect(response).toMatchObject({ + await expect( + mutate({ + mutation: createPostMutation, + variables, + }), + ).resolves.toMatchObject({ data: { CreatePost: { language: 'es', - languageScore: 0.46589743589743593, - secondaryLanguage: 'pt', - secondaryLanguageScore: 0.3834188034188034, }, }, }) @@ -125,17 +116,15 @@ describe('languagesMiddleware', () => { content: 'Jeder sollte vor seiner eigenen
Tür
kehren.', } - const response = await mutate({ - mutation: createPostMutation, - variables, - }) - expect(response).toMatchObject({ + await expect( + mutate({ + mutation: createPostMutation, + variables, + }), + ).resolves.toMatchObject({ data: { CreatePost: { language: 'de', - languageScore: 0.5134188034188034, - secondaryLanguage: 'no', - secondaryLanguageScore: 0.3655555555555555, }, }, }) diff --git a/backend/src/schema/types/type/Post.gql b/backend/src/schema/types/type/Post.gql index 2d8e39719..37f9dd176 100644 --- a/backend/src/schema/types/type/Post.gql +++ b/backend/src/schema/types/type/Post.gql @@ -122,9 +122,6 @@ type Post { createdAt: String updatedAt: String language: String - languageScore: Float - secondaryLanguage: String - secondaryLanguageScore: Float pinnedAt: String @cypher( statement: "MATCH (this)<-[pinned:PINNED]-(:User) WHERE NOT this.deleted = true AND NOT this.disabled = true RETURN pinned.createdAt" )