diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 34ebeff11..d467ff987 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,6 +1,6 @@ name: gradido test CI -on: [push] +on: push jobs: ############################################################################## @@ -15,7 +15,7 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # FRONTEND ############################################################### ########################################################################## @@ -24,7 +24,7 @@ jobs: docker build --target test -t "gradido/frontend:test" frontend/ docker save "gradido/frontend:test" > /tmp/frontend.tar - name: Upload Artifact - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: docker-frontend-test path: /tmp/frontend.tar @@ -41,7 +41,7 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # ADMIN INTERFACE ######################################################## ########################################################################## @@ -50,7 +50,7 @@ jobs: docker build --target test -t "gradido/admin:test" admin/ --build-arg NODE_ENV="test" docker save "gradido/admin:test" > /tmp/admin.tar - name: Upload Artifact - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: docker-admin-test path: /tmp/admin.tar @@ -67,7 +67,7 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # BACKEND ################################################################ ########################################################################## @@ -76,7 +76,7 @@ jobs: docker build -f ./backend/Dockerfile --target test -t "gradido/backend:test" . docker save "gradido/backend:test" > /tmp/backend.tar - name: Upload Artifact - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: docker-backend-test path: /tmp/backend.tar @@ -93,7 +93,7 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # DATABASE UP ############################################################ ########################################################################## @@ -102,7 +102,7 @@ jobs: docker build --target test_up -t "gradido/database:test_up" database/ docker save "gradido/database:test_up" > /tmp/database_up.tar - name: Upload Artifact - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: docker-database-test_up path: /tmp/database_up.tar @@ -119,7 +119,7 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # BUILD MARIADB DOCKER IMAGE ############################################# ########################################################################## @@ -128,7 +128,7 @@ jobs: docker build --target mariadb_server -t "gradido/mariadb:test" -f ./mariadb/Dockerfile ./ docker save "gradido/mariadb:test" > /tmp/mariadb.tar - name: Upload Artifact - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: docker-mariadb-test path: /tmp/mariadb.tar @@ -145,7 +145,7 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # BUILD NGINX DOCKER IMAGE ############################################### ########################################################################## @@ -154,7 +154,7 @@ jobs: docker build -t "gradido/nginx:test" nginx/ docker save "gradido/nginx:test" > /tmp/nginx.tar - name: Upload Artifact - uses: actions/upload-artifact@v2 + uses: actions/upload-artifact@v3 with: name: docker-nginx-test path: /tmp/nginx.tar @@ -171,12 +171,12 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # DOWNLOAD DOCKER IMAGE ################################################## ########################################################################## - name: Download Docker Image (Frontend) - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: docker-frontend-test path: /tmp @@ -200,12 +200,12 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # DOWNLOAD DOCKER IMAGE ################################################## ########################################################################## - name: Download Docker Image (Frontend) - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: docker-frontend-test path: /tmp @@ -229,12 +229,12 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # DOWNLOAD DOCKER IMAGE ################################################## ########################################################################## - name: Download Docker Image (Frontend) - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: docker-frontend-test path: /tmp @@ -258,12 +258,12 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # DOWNLOAD DOCKER IMAGE ################################################## ########################################################################## - name: Download Docker Image (Admin Interface) - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: docker-admin-test path: /tmp @@ -287,12 +287,12 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # DOWNLOAD DOCKER IMAGE ################################################## ########################################################################## - name: Download Docker Image (Admin Interface) - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: docker-admin-test path: /tmp @@ -308,7 +308,7 @@ jobs: # JOB: LOCALES ADMIN ######################################################### ############################################################################## locales_admin: - name: Locales - Admin + name: Locales - Admin Interface runs-on: ubuntu-latest needs: [build_test_admin] steps: @@ -316,12 +316,12 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # DOWNLOAD DOCKER IMAGE ################################################## ########################################################################## - name: Download Docker Image (Admin Interface) - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: docker-admin-test path: /tmp @@ -345,12 +345,12 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # DOWNLOAD DOCKER IMAGE ################################################## ########################################################################## - name: Download Docker Image (Backend) - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: docker-backend-test path: /tmp @@ -374,12 +374,12 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # DOWNLOAD DOCKER IMAGE ################################################## ########################################################################## - name: Download Docker Image (Backend) - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: docker-database-test_up path: /tmp @@ -403,12 +403,12 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # DOWNLOAD DOCKER IMAGES ################################################# ########################################################################## - name: Download Docker Image (Frontend) - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: docker-frontend-test path: /tmp @@ -453,12 +453,12 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # DOWNLOAD DOCKER IMAGES ################################################# ########################################################################## - name: Download Docker Image (Admin Interface) - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: docker-admin-test path: /tmp @@ -495,12 +495,12 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # DOWNLOAD DOCKER IMAGES ################################################# ########################################################################## - name: Download Docker Image (Mariadb) - uses: actions/download-artifact@v2 + uses: actions/download-artifact@v3 with: name: docker-mariadb-test path: /tmp @@ -543,7 +543,7 @@ jobs: # CHECKOUT CODE ########################################################## ########################################################################## - name: Checkout code - uses: actions/checkout@v2 + uses: actions/checkout@v3 ########################################################################## # DOCKER COMPOSE DATABASE UP + RESET ##################################### ########################################################################## @@ -553,3 +553,110 @@ jobs: run: docker-compose -f docker-compose.yml run -T database yarn up - name: database | reset run: docker-compose -f docker-compose.yml run -T database yarn reset + + ############################################################################## + # JOB: END-TO-END TESTS ##################################################### + ############################################################################## + end-to-end-tests: + name: End-to-End Tests + runs-on: ubuntu-latest + # needs: [build_test_mariadb, build_test_database_up, build_test_backend, build_test_admin, build_test_frontend, build_test_nginx] + steps: + ########################################################################## + # CHECKOUT CODE ########################################################## + ########################################################################## + - name: Checkout code + uses: actions/checkout@v3 + ########################################################################## + # DOWNLOAD DOCKER IMAGES ################################################# + ########################################################################## + # - name: Download Docker Image (Mariadb) + # uses: actions/download-artifact@v3 + # with: + # name: docker-mariadb-test + # path: /tmp + # - name: Load Docker Image (Mariadb) + # run: docker load < /tmp/mariadb.tar + # - name: Download Docker Image (Database Up) + # uses: actions/download-artifact@v3 + # with: + # name: docker-database-test_up + # path: /tmp + # - name: Load Docker Image (Database Up) + # run: docker load < /tmp/database_up.tar + # - name: Download Docker Image (Backend) + # uses: actions/download-artifact@v3 + # with: + # name: docker-backend-test + # path: /tmp + # - name: Load Docker Image (Backend) + # run: docker load < /tmp/backend.tar + # - name: Download Docker Image (Frontend) + # uses: actions/download-artifact@v3 + # with: + # name: docker-frontend-test + # path: /tmp + # - name: Load Docker Image (Frontend) + # run: docker load < /tmp/frontend.tar + # - name: Download Docker Image (Admin Interface) + # uses: actions/download-artifact@v3 + # with: + # name: docker-admin-test + # path: /tmp + # - name: Load Docker Image (Admin Interface) + # run: docker load < /tmp/admin.tar + # - name: Download Docker Image (Nginx) + # uses: actions/download-artifact@v3 + # with: + # name: docker-nginx-test + # path: /tmp + # - name: Load Docker Image (Nginx) + # run: docker load < /tmp/nginx.tar + ########################################################################## + # BOOT UP THE TEST SYSTEM ################################################ + ########################################################################## + - name: Boot up test system | docker-compose mariadb + run: docker-compose up --detach mariadb + + - name: Sleep for 30 seconds + run: sleep 30s + + - name: Boot up test system | docker-compose database + run: docker-compose up --detach --no-deps database + + - name: Boot up test system | docker-compose backend + run: docker-compose up --detach --no-deps backend + + - name: Sleep for 90 seconds + run: sleep 90s + + - name: Boot up test system | seed backend + run: | + sudo chown runner:docker -R * + cd database + yarn && yarn dev_reset + cd ../backend + yarn && yarn seed + cd .. + + - name: Boot up test system | docker-compose frontends + run: docker-compose up --detach --no-deps frontend admin nginx + + - name: Sleep for 2.5 minutes + run: sleep 150s + + ########################################################################## + # END-TO-END TESTS ####################################################### + ########################################################################## + - name: End-to-end tests | run tests + id: e2e-tests + run: | + cd e2e-tests/cypress/tests/ + yarn + yarn run cypress run --spec cypress/e2e/User.Authentication.feature + - name: End-to-end tests | if tests failed, upload screenshots + if: steps.e2e-tests.outcome == 'failure' + uses: actions/upload-artifact@v3 + with: + name: cypress-screenshots + path: /home/runner/work/gradido/gradido/e2e-tests/cypress/tests/cypress/screenshots/ diff --git a/CHANGELOG.md b/CHANGELOG.md index d4eb48283..754566658 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,8 +4,37 @@ All notable changes to this project will be documented in this file. Dates are d Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog). +#### [1.13.3](https://github.com/gradido/gradido/compare/1.13.2...1.13.3) + +- 2294 contribution links on its own page [`#2312`](https://github.com/gradido/gradido/pull/2312) +- fix: Change Orange Color [`#2302`](https://github.com/gradido/gradido/pull/2302) +- fix: Release Statistic Query Runner [`#2320`](https://github.com/gradido/gradido/pull/2320) +- bug: 2295 remove horizontal scrollbar in admin overview [`#2311`](https://github.com/gradido/gradido/pull/2311) +- 2292 community information contact [`#2313`](https://github.com/gradido/gradido/pull/2313) +- bug: 2315 Contribution Month and TEST FAIL in MASTER [`#2316`](https://github.com/gradido/gradido/pull/2316) +- 2291 add button for close contribution messages box [`#2314`](https://github.com/gradido/gradido/pull/2314) + +#### [1.13.2](https://github.com/gradido/gradido/compare/1.13.1...1.13.2) + +> 28 October 2022 + +- release: Version 1.13.2 [`#2307`](https://github.com/gradido/gradido/pull/2307) +- fix: 🍰 Links In Contribution Messages Target Blank [`#2306`](https://github.com/gradido/gradido/pull/2306) +- fix: Link in Contribution Messages [`#2305`](https://github.com/gradido/gradido/pull/2305) +- Refactor: 🍰 Change the query so that we only look on the ``contributions`` table. [`#2217`](https://github.com/gradido/gradido/pull/2217) +- Refactor: Admin Resolver Events and Logging [`#2244`](https://github.com/gradido/gradido/pull/2244) +- contibution messages, links are recognised [`#2248`](https://github.com/gradido/gradido/pull/2248) +- fix: Include Deleted Email Contacts in User Search [`#2281`](https://github.com/gradido/gradido/pull/2281) +- fix: Pagination Contributions jumps to wrong Page [`#2284`](https://github.com/gradido/gradido/pull/2284) +- fix: Changed some texts in E-Mails and Frontend [`#2276`](https://github.com/gradido/gradido/pull/2276) +- Feat: 🍰 Add `deletedBy` To Contributions And Admin Can Not Delete Own User Contribution [`#2236`](https://github.com/gradido/gradido/pull/2236) +- deleted contributions are displayed to the user [`#2277`](https://github.com/gradido/gradido/pull/2277) + #### [1.13.1](https://github.com/gradido/gradido/compare/1.13.0...1.13.1) +> 20 October 2022 + +- release: Version 1.13.1 [`#2279`](https://github.com/gradido/gradido/pull/2279) - Fix: correctly evaluate to EMAIL_TEST_MODE to false [`#2273`](https://github.com/gradido/gradido/pull/2273) - Refactor: Contribution resolver logs and events [`#2231`](https://github.com/gradido/gradido/pull/2231) diff --git a/admin/package.json b/admin/package.json index 2db889771..370f504b8 100644 --- a/admin/package.json +++ b/admin/package.json @@ -3,7 +3,7 @@ "description": "Administraion Interface for Gradido", "main": "index.js", "author": "Moriz Wahl", - "version": "1.13.1", + "version": "1.13.3", "license": "Apache-2.0", "private": false, "scripts": { diff --git a/admin/src/components/ContentFooter.vue b/admin/src/components/ContentFooter.vue index bab3f5d12..a875100f6 100644 --- a/admin/src/components/ContentFooter.vue +++ b/admin/src/components/ContentFooter.vue @@ -1,7 +1,7 @@ diff --git a/admin/src/pages/Overview.spec.js b/admin/src/pages/Overview.spec.js index 1861c5330..affd018a7 100644 --- a/admin/src/pages/Overview.spec.js +++ b/admin/src/pages/Overview.spec.js @@ -1,6 +1,5 @@ import { mount } from '@vue/test-utils' import Overview from './Overview.vue' -import { listContributionLinks } from '@/graphql/listContributionLinks.js' import { communityStatistics } from '@/graphql/communityStatistics.js' import { listUnconfirmedContributions } from '@/graphql/listUnconfirmedContributions.js' @@ -36,27 +35,6 @@ const apolloQueryMock = jest }, }, }) - .mockResolvedValueOnce({ - data: { - listContributionLinks: { - links: [ - { - id: 1, - name: 'Meditation', - memo: 'Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut l', - amount: '200', - validFrom: '2022-04-01', - validTo: '2022-08-01', - cycle: 'täglich', - maxPerCycle: '3', - maxAmountPerMonth: 0, - link: 'https://localhost/redeem/CL-1a2345678', - }, - ], - count: 1, - }, - }, - }) .mockResolvedValue({ data: { listUnconfirmedContributions: [ @@ -118,14 +96,6 @@ describe('Overview', () => { ) }) - it('calls listContributionLinks', () => { - expect(apolloQueryMock).toBeCalledWith( - expect.objectContaining({ - query: listContributionLinks, - }), - ) - }) - it('commits three pending creations to store', () => { expect(storeCommitMock).toBeCalledWith('setOpenCreations', 3) }) diff --git a/admin/src/pages/Overview.vue b/admin/src/pages/Overview.vue index cfa247b8e..57bf7ff8c 100644 --- a/admin/src/pages/Overview.vue +++ b/admin/src/pages/Overview.vue @@ -28,31 +28,21 @@ - diff --git a/admin/src/router/router.test.js b/admin/src/router/router.test.js index eb9b646cb..22273c15b 100644 --- a/admin/src/router/router.test.js +++ b/admin/src/router/router.test.js @@ -45,7 +45,7 @@ describe('router', () => { describe('routes', () => { it('has seven routes defined', () => { - expect(routes).toHaveLength(7) + expect(routes).toHaveLength(8) }) it('has "/overview" as default', async () => { @@ -81,6 +81,13 @@ describe('router', () => { }) }) + describe('contribution-links', () => { + it('loads the "ContributionLinks" component', async () => { + const component = await routes.find((r) => r.path === '/contribution-links').component() + expect(component.default.name).toBe('ContributionLinks') + }) + }) + describe('not found page', () => { it('renders the "NotFound" component', async () => { const component = await routes.find((r) => r.path === '*').component() diff --git a/admin/src/router/routes.js b/admin/src/router/routes.js index 72e7b1ac5..ee82f128e 100644 --- a/admin/src/router/routes.js +++ b/admin/src/router/routes.js @@ -23,6 +23,10 @@ const routes = [ path: '/creation-confirm', component: () => import('@/pages/CreationConfirm.vue'), }, + { + path: '/contribution-links', + component: () => import('@/pages/ContributionLinks.vue'), + }, { path: '*', component: () => import('@/components/NotFoundPage.vue'), diff --git a/backend/package.json b/backend/package.json index 6cd886735..77d3b8064 100644 --- a/backend/package.json +++ b/backend/package.json @@ -1,6 +1,6 @@ { "name": "gradido-backend", - "version": "1.13.1", + "version": "1.13.3", "description": "Gradido unified backend providing an API-Service for Gradido Transactions", "main": "src/index.ts", "repository": "https://github.com/gradido/gradido/backend", diff --git a/backend/src/graphql/resolver/StatisticsResolver.ts b/backend/src/graphql/resolver/StatisticsResolver.ts index b0c061d91..7bfae319e 100644 --- a/backend/src/graphql/resolver/StatisticsResolver.ts +++ b/backend/src/graphql/resolver/StatisticsResolver.ts @@ -63,6 +63,8 @@ export class StatisticsResolver { .where('transaction.decay IS NOT NULL') .getRawOne() + await queryRunner.release() + return { totalUsers, activeUsers, diff --git a/database/package.json b/database/package.json index 0a97b5135..096c7a9bd 100644 --- a/database/package.json +++ b/database/package.json @@ -1,6 +1,6 @@ { "name": "gradido-database", - "version": "1.13.1", + "version": "1.13.3", "description": "Gradido Database Tool to execute database migrations", "main": "src/index.ts", "repository": "https://github.com/gradido/gradido/database", diff --git a/frontend/package.json b/frontend/package.json index 2fc892f9f..4e983d716 100755 --- a/frontend/package.json +++ b/frontend/package.json @@ -1,6 +1,6 @@ { "name": "bootstrap-vue-gradido-wallet", - "version": "1.13.1", + "version": "1.13.3", "private": true, "scripts": { "start": "node run/server.js", diff --git a/frontend/src/assets/scss/custom/gradido-custom/_color.scss b/frontend/src/assets/scss/custom/gradido-custom/_color.scss index 20fcbefd6..f42555adf 100644 --- a/frontend/src/assets/scss/custom/gradido-custom/_color.scss +++ b/frontend/src/assets/scss/custom/gradido-custom/_color.scss @@ -33,7 +33,9 @@ $indigo: #5603ad !default; $purple: #8965e0 !default; $pink: #f3a4b5 !default; $red: #f5365c !default; -$orange: #fb6340 !default; + +// $orange: #fb6340 !default; +$orange: #8c0505 !default; $yellow: #ffd600 !default; $green: #2dce89 !default; $teal: #11cdef !default; diff --git a/frontend/src/components/ContributionMessages/ContributionMessagesList.vue b/frontend/src/components/ContributionMessages/ContributionMessagesList.vue index 5f1c03b22..4b7045a40 100644 --- a/frontend/src/components/ContributionMessages/ContributionMessagesList.vue +++ b/frontend/src/components/ContributionMessages/ContributionMessagesList.vue @@ -5,15 +5,23 @@ - -
- - {{ $t('form.close') }} + + + + +
+ + + {{ $t('form.close') }} +
@@ -55,4 +63,7 @@ export default { .temp-message { margin-top: 50px; } +.clearboth { + clear: both; +} diff --git a/frontend/src/components/ContributionMessages/LinkifyMessage.vue b/frontend/src/components/ContributionMessages/LinkifyMessage.vue index fc577adf9..09418858f 100644 --- a/frontend/src/components/ContributionMessages/LinkifyMessage.vue +++ b/frontend/src/components/ContributionMessages/LinkifyMessage.vue @@ -1,7 +1,7 @@