From 6d48b6f4e39f97ddf05e4fe5241156db8c43d5f4 Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Tue, 26 Apr 2022 09:27:55 +0200 Subject: [PATCH 01/14] fix: Confirm Creation with Decimal --- backend/src/graphql/resolver/AdminResolver.ts | 5 ++--- backend/src/seeds/graphql/mutations.ts | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/backend/src/graphql/resolver/AdminResolver.ts b/backend/src/graphql/resolver/AdminResolver.ts index 379412cdc..2009af3b0 100644 --- a/backend/src/graphql/resolver/AdminResolver.ts +++ b/backend/src/graphql/resolver/AdminResolver.ts @@ -333,8 +333,7 @@ export class AdminResolver { decay = calculateDecay(lastTransaction.balance, lastTransaction.balanceDate, receivedCallDate) newBalance = decay.balance } - // TODO pending creations decimal - newBalance = newBalance.add(new Decimal(Number(pendingCreation.amount)).toString()) + newBalance = newBalance.add(pendingCreation.amount.toString()) const transaction = new DbTransaction() transaction.typeId = TransactionTypeId.CREATION @@ -516,7 +515,7 @@ function isCreationValid(creations: Decimal[], amount: Decimal, creationDate: Da throw new Error(`No Creation found!`) } - if (amount.greaterThan(creations[index])) { + if (amount.greaterThan(creations[index].toString())) { throw new Error( `The amount (${amount} GDD) to be created exceeds the available amount (${creations[index]} GDD) for this month.`, ) diff --git a/backend/src/seeds/graphql/mutations.ts b/backend/src/seeds/graphql/mutations.ts index fc662cf19..601b1fbbf 100644 --- a/backend/src/seeds/graphql/mutations.ts +++ b/backend/src/seeds/graphql/mutations.ts @@ -86,7 +86,7 @@ export const createTransactionLink = gql` export const createPendingCreation = gql` mutation ( $email: String! - $amount: Float! + $amount: Decimal! $memo: String! $creationDate: String! $moderator: Int! From f9589fad840369d9ec84502d6bc83ac845392655 Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Tue, 26 Apr 2022 12:22:40 +0200 Subject: [PATCH 02/14] force NODE_ENV=development for seed target --- backend/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/package.json b/backend/package.json index c5318d674..641a24601 100644 --- a/backend/package.json +++ b/backend/package.json @@ -14,7 +14,7 @@ "dev": "cross-env TZ=UTC nodemon -w src --ext ts --exec ts-node -r tsconfig-paths/register src/index.ts", "lint": "eslint --max-warnings=0 --ext .js,.ts .", "test": "cross-env TZ=UTC NODE_ENV=development jest --runInBand --coverage --forceExit --detectOpenHandles", - "seed": "cross-env TZ=UTC ts-node -r tsconfig-paths/register src/seeds/index.ts" + "seed": "cross-env TZ=UTC NODE_ENV=development ts-node -r tsconfig-paths/register src/seeds/index.ts" }, "dependencies": { "@types/jest": "^27.0.2", From ad68c881ed1312bc91afc41258fe0b517a093646 Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Tue, 26 Apr 2022 12:36:24 +0200 Subject: [PATCH 03/14] debug server --- backend/src/seeds/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/backend/src/seeds/index.ts b/backend/src/seeds/index.ts index 37c9992a7..dc71291cb 100644 --- a/backend/src/seeds/index.ts +++ b/backend/src/seeds/index.ts @@ -43,6 +43,7 @@ const resetEntity = async (entity: any) => { const run = async () => { const server = await createServer(context) const seedClient = createTestClient(server.apollo) + console.log(seedClient) const { con } = server await cleanDB() From 205a1d6fd4682b74c5b45a5c7c1a2707752c2221 Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Tue, 26 Apr 2022 12:38:12 +0200 Subject: [PATCH 04/14] debug server --- backend/src/seeds/factory/user.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/backend/src/seeds/factory/user.ts b/backend/src/seeds/factory/user.ts index 4b5913d48..18f66d109 100644 --- a/backend/src/seeds/factory/user.ts +++ b/backend/src/seeds/factory/user.ts @@ -10,6 +10,8 @@ export const userFactory = async ( ): Promise => { const { mutate } = client + console.log(client) + const { data: { createUser: { id }, From ae679bcb4c267dfc8153ce0864240f7f9b614248 Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Tue, 26 Apr 2022 12:41:56 +0200 Subject: [PATCH 05/14] debug server --- backend/src/seeds/factory/user.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/src/seeds/factory/user.ts b/backend/src/seeds/factory/user.ts index 18f66d109..bee82e444 100644 --- a/backend/src/seeds/factory/user.ts +++ b/backend/src/seeds/factory/user.ts @@ -2,7 +2,7 @@ import { createUser, setPassword } from '@/seeds/graphql/mutations' import { User } from '@entity/User' import { LoginEmailOptIn } from '@entity/LoginEmailOptIn' import { UserInterface } from '@/seeds/users/UserInterface' -import { ApolloServerTestClient } from 'apollo-server-testing' +import { ApolloServerTestClient } from 'apollo-server-testing/dist/createTestClient' export const userFactory = async ( client: ApolloServerTestClient, From d212ccb4b7901a4b0f2d3eb9bfab59c397a17212 Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Tue, 26 Apr 2022 12:45:23 +0200 Subject: [PATCH 06/14] debug server --- backend/package.json | 2 +- backend/src/seeds/factory/user.ts | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/backend/package.json b/backend/package.json index 641a24601..c3c916d50 100644 --- a/backend/package.json +++ b/backend/package.json @@ -14,7 +14,7 @@ "dev": "cross-env TZ=UTC nodemon -w src --ext ts --exec ts-node -r tsconfig-paths/register src/index.ts", "lint": "eslint --max-warnings=0 --ext .js,.ts .", "test": "cross-env TZ=UTC NODE_ENV=development jest --runInBand --coverage --forceExit --detectOpenHandles", - "seed": "cross-env TZ=UTC NODE_ENV=development ts-node -r tsconfig-paths/register src/seeds/index.ts" + "seed": "TZ=UTC NODE_ENV=development ts-node -r tsconfig-paths/register src/seeds/index.ts" }, "dependencies": { "@types/jest": "^27.0.2", diff --git a/backend/src/seeds/factory/user.ts b/backend/src/seeds/factory/user.ts index bee82e444..4b5913d48 100644 --- a/backend/src/seeds/factory/user.ts +++ b/backend/src/seeds/factory/user.ts @@ -2,7 +2,7 @@ import { createUser, setPassword } from '@/seeds/graphql/mutations' import { User } from '@entity/User' import { LoginEmailOptIn } from '@entity/LoginEmailOptIn' import { UserInterface } from '@/seeds/users/UserInterface' -import { ApolloServerTestClient } from 'apollo-server-testing/dist/createTestClient' +import { ApolloServerTestClient } from 'apollo-server-testing' export const userFactory = async ( client: ApolloServerTestClient, @@ -10,8 +10,6 @@ export const userFactory = async ( ): Promise => { const { mutate } = client - console.log(client) - const { data: { createUser: { id }, From 3ff2ee659e77aa4128229387cf48b44c2bfc2e74 Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Tue, 26 Apr 2022 12:47:40 +0200 Subject: [PATCH 07/14] debug server --- backend/package.json | 2 +- backend/src/seeds/factory/user.ts | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/backend/package.json b/backend/package.json index c3c916d50..641a24601 100644 --- a/backend/package.json +++ b/backend/package.json @@ -14,7 +14,7 @@ "dev": "cross-env TZ=UTC nodemon -w src --ext ts --exec ts-node -r tsconfig-paths/register src/index.ts", "lint": "eslint --max-warnings=0 --ext .js,.ts .", "test": "cross-env TZ=UTC NODE_ENV=development jest --runInBand --coverage --forceExit --detectOpenHandles", - "seed": "TZ=UTC NODE_ENV=development ts-node -r tsconfig-paths/register src/seeds/index.ts" + "seed": "cross-env TZ=UTC NODE_ENV=development ts-node -r tsconfig-paths/register src/seeds/index.ts" }, "dependencies": { "@types/jest": "^27.0.2", diff --git a/backend/src/seeds/factory/user.ts b/backend/src/seeds/factory/user.ts index 4b5913d48..b09211052 100644 --- a/backend/src/seeds/factory/user.ts +++ b/backend/src/seeds/factory/user.ts @@ -10,6 +10,8 @@ export const userFactory = async ( ): Promise => { const { mutate } = client + console.log(user) + const { data: { createUser: { id }, From e639b732833ae391990411df93c4220303a6ca49 Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Tue, 26 Apr 2022 12:49:28 +0200 Subject: [PATCH 08/14] debug server --- backend/src/seeds/factory/user.ts | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/backend/src/seeds/factory/user.ts b/backend/src/seeds/factory/user.ts index b09211052..81e4785dd 100644 --- a/backend/src/seeds/factory/user.ts +++ b/backend/src/seeds/factory/user.ts @@ -5,13 +5,11 @@ import { UserInterface } from '@/seeds/users/UserInterface' import { ApolloServerTestClient } from 'apollo-server-testing' export const userFactory = async ( - client: ApolloServerTestClient, + client: any, user: UserInterface, ): Promise => { const { mutate } = client - console.log(user) - const { data: { createUser: { id }, From bef2badd89f5af7ccc31ed0e0504c9e2de4368e8 Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Tue, 26 Apr 2022 12:58:31 +0200 Subject: [PATCH 09/14] debug seeed on stage1 --- .../graphql/resolver/AdminResolver.test.ts | 25 +++++++++++++++++++ backend/src/graphql/resolver/UserResolver.ts | 1 + 2 files changed, 26 insertions(+) create mode 100644 backend/src/graphql/resolver/AdminResolver.test.ts diff --git a/backend/src/graphql/resolver/AdminResolver.test.ts b/backend/src/graphql/resolver/AdminResolver.test.ts new file mode 100644 index 000000000..0855f8f27 --- /dev/null +++ b/backend/src/graphql/resolver/AdminResolver.test.ts @@ -0,0 +1,25 @@ +import { testEnvironment, headerPushMock, resetToken, cleanDB } from '@test/helpers' +import { seedAll } from '@/seeds/index' + +let mutate: any, query: any, con: any +let testEnv: any + +beforeAll(async () => { + testEnv = await testEnvironment() + mutate = testEnv.mutate + query = testEnv.query + con = testEnv.con + await cleanDB() + seedAll(testEnv.testClient) +}) + +afterAll(async () => { + await cleanDB() + await con.close() +}) + +describe('AdminResolver', () => { + it('runs', () => { + expect(true).toBe(true) + }) +}) diff --git a/backend/src/graphql/resolver/UserResolver.ts b/backend/src/graphql/resolver/UserResolver.ts index 4ab5a901b..4f4de63fe 100644 --- a/backend/src/graphql/resolver/UserResolver.ts +++ b/backend/src/graphql/resolver/UserResolver.ts @@ -283,6 +283,7 @@ export class UserResolver { @Args() { email, firstName, lastName, language, publisherId, redeemCode = null }: CreateUserArgs, ): Promise { + console.log('------', email) // TODO: wrong default value (should be null), how does graphql work here? Is it an required field? // default int publisher_id = 0; From 8d1ead22eb82ae27ac2392b44f83c2790275c4dc Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Tue, 26 Apr 2022 13:08:19 +0200 Subject: [PATCH 10/14] disable email on stage1 --- deployment/bare_metal/.env.dist | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deployment/bare_metal/.env.dist b/deployment/bare_metal/.env.dist index a1751a859..a7e266bdf 100644 --- a/deployment/bare_metal/.env.dist +++ b/deployment/bare_metal/.env.dist @@ -38,7 +38,7 @@ KLICKTIPP_PASSWORD= KLICKTIPP_APIKEY_DE= KLICKTIPP_APIKEY_EN= -EMAIL=true +EMAIL=false EMAIL_USERNAME=peter@lustig.de EMAIL_SENDER=peter@lustig.de EMAIL_PASSWORD=1234 From 6810c7b50dfd097933965c1accf00dcef56ffa33 Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Tue, 26 Apr 2022 13:24:25 +0200 Subject: [PATCH 11/14] remove comment --- backend/src/graphql/resolver/UserResolver.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/backend/src/graphql/resolver/UserResolver.ts b/backend/src/graphql/resolver/UserResolver.ts index 4f4de63fe..4ab5a901b 100644 --- a/backend/src/graphql/resolver/UserResolver.ts +++ b/backend/src/graphql/resolver/UserResolver.ts @@ -283,7 +283,6 @@ export class UserResolver { @Args() { email, firstName, lastName, language, publisherId, redeemCode = null }: CreateUserArgs, ): Promise { - console.log('------', email) // TODO: wrong default value (should be null), how does graphql work here? Is it an required field? // default int publisher_id = 0; From 2ca291684c4051bf7c96f08b4e2e5cd6cdd1ac58 Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Tue, 26 Apr 2022 13:26:59 +0200 Subject: [PATCH 12/14] Delete AdminResolver.test.ts --- .../graphql/resolver/AdminResolver.test.ts | 25 ------------------- 1 file changed, 25 deletions(-) delete mode 100644 backend/src/graphql/resolver/AdminResolver.test.ts diff --git a/backend/src/graphql/resolver/AdminResolver.test.ts b/backend/src/graphql/resolver/AdminResolver.test.ts deleted file mode 100644 index 0855f8f27..000000000 --- a/backend/src/graphql/resolver/AdminResolver.test.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { testEnvironment, headerPushMock, resetToken, cleanDB } from '@test/helpers' -import { seedAll } from '@/seeds/index' - -let mutate: any, query: any, con: any -let testEnv: any - -beforeAll(async () => { - testEnv = await testEnvironment() - mutate = testEnv.mutate - query = testEnv.query - con = testEnv.con - await cleanDB() - seedAll(testEnv.testClient) -}) - -afterAll(async () => { - await cleanDB() - await con.close() -}) - -describe('AdminResolver', () => { - it('runs', () => { - expect(true).toBe(true) - }) -}) From b06e3c3c044e426860f72363127eba2e68dbdd58 Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Tue, 26 Apr 2022 13:28:36 +0200 Subject: [PATCH 13/14] proper TS definition --- backend/src/seeds/factory/user.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/src/seeds/factory/user.ts b/backend/src/seeds/factory/user.ts index 81e4785dd..4b5913d48 100644 --- a/backend/src/seeds/factory/user.ts +++ b/backend/src/seeds/factory/user.ts @@ -5,7 +5,7 @@ import { UserInterface } from '@/seeds/users/UserInterface' import { ApolloServerTestClient } from 'apollo-server-testing' export const userFactory = async ( - client: any, + client: ApolloServerTestClient, user: UserInterface, ): Promise => { const { mutate } = client From e5dd373f526fceff646927905c797027b685b922 Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Tue, 26 Apr 2022 13:30:21 +0200 Subject: [PATCH 14/14] no console --- backend/src/seeds/index.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/backend/src/seeds/index.ts b/backend/src/seeds/index.ts index dc71291cb..37c9992a7 100644 --- a/backend/src/seeds/index.ts +++ b/backend/src/seeds/index.ts @@ -43,7 +43,6 @@ const resetEntity = async (entity: any) => { const run = async () => { const server = await createServer(context) const seedClient = createTestClient(server.apollo) - console.log(seedClient) const { con } = server await cleanDB()