feat: add email subsciption

This commit is contained in:
thomas
2024-01-31 13:58:00 +01:00
parent e1a57a8cab
commit bb07207972
60 changed files with 198 additions and 190 deletions

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'angular-anchor-scrolling',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
coverageDirectory: '../../../coverage/apps/angular/anchor-scrolling',
transform: {
'^.+\\.(ts|mjs|js|html)$': [

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'angular-bug-cd',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
coverageDirectory: '../../../coverage/apps/angular/bug-cd',
transform: {
'^.+\\.(ts|mjs|js|html)$': [

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'angular-crud',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
globals: {},
coverageDirectory: '../../../coverage/apps/angular/crud',
transform: {

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'angular-injection-token',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
coverageDirectory: '../../../coverage/apps/angular/injection-token',
transform: {
'^.+\\.(ts|mjs|js|html)$': [

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'angular-interop-rxjs-signal',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
coverageDirectory: '../../../coverage/apps/angular/interop-rxjs-signal',
transform: {
'^.+\\.(ts|mjs|js|html)$': [

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'angular-projection',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
globals: {},
coverageDirectory: '../../../coverage/apps/angular/projection',
transform: {

View File

@@ -12,7 +12,7 @@ import { RouterLink, RouterModule } from '@angular/router';
<label for="testId">TestId</label>
<input id="testId" type="number" [formControl]="testId" />
<button
[routerLink]="'test/' + testId.value"
[routerLink]="'subscription/' + testId.value"
[queryParams]="{ user: userName.value }">
Test
</button>

View File

@@ -6,7 +6,7 @@ export const appRoutes: Route[] = [
loadComponent: () => import('./home.component'),
},
{
path: 'test/:testId',
path: 'subscription/:testId',
loadComponent: () => import('./test.component'),
data: {
permission: 'admin',

View File

@@ -2,8 +2,9 @@ import { AsyncPipe } from '@angular/common';
import { Component, inject } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { map } from 'rxjs';
@Component({
selector: 'app-test',
selector: 'app-subscription',
standalone: true,
imports: [AsyncPipe],
template: `

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'forms-control-value-accessor',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
coverageDirectory: '../../../coverage/apps/forms/control-value-accessor',
transform: {
'^.+\\.(ts|mjs|js|html)$': [

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'ngrx-effect-selector',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
globals: {},
coverageDirectory: '../../../coverage/apps/ngrx/effect-selector',
transform: {

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'performance-ngfor-optimize',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
coverageDirectory: '../../../coverage/apps/performance/ngfor-optimize',
transform: {
'^.+\\.(ts|mjs|js|html)$': [

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'performance-scroll-cd',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
globals: {},
coverageDirectory: '../../../coverage/apps/performance/scroll-cd',
transform: {

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'rxjs-catch-error',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
coverageDirectory: '../../../coverage/apps/rxjs/catch-error',
transform: {
'^.+\\.(ts|mjs|js|html)$': [

View File

@@ -1,6 +1,6 @@
// ***********************************************************
// This example support/component.ts is processed and
// loaded automatically before your test files.
// loaded automatically before your subscription files.
//
// This is a great place to put global configuration and
// behavior that modifies Cypress.

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'rxjs-race-condition',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
globals: {},
coverageDirectory: '../../../coverage/apps/rxjs/race-condition',
transform: {

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'testing-checkbox',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
coverageDirectory: '../../../coverage/apps/testing/checkbox',
transform: {
'^.+\\.(ts|mjs|js|html)$': [

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'testing-create-harness',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
transform: {
'^.+\\.(ts|mjs|js|html)$': [
'jest-preset-angular',

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'testing-harness',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
transform: {
'^.+\\.(ts|mjs|js|html)$': [
'jest-preset-angular',

View File

@@ -1,6 +1,6 @@
// ***********************************************************
// This example support/component.ts is processed and
// loaded automatically before your test files.
// loaded automatically before your subscription files.
//
// This is a great place to put global configuration and
// behavior that modifies Cypress.

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'testing-input-output',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
transform: {
'^.+\\.(ts|mjs|js|html)$': [
'jest-preset-angular',

View File

@@ -1,6 +1,6 @@
// ***********************************************************
// This example support/component.ts is processed and
// loaded automatically before your test files.
// loaded automatically before your subscription files.
//
// This is a great place to put global configuration and
// behavior that modifies Cypress.

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'testing-modal',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
transform: {
'^.+\\.(ts|mjs|js|html)$': [
'jest-preset-angular',

View File

@@ -1,6 +1,6 @@
// ***********************************************************
// This example support/component.ts is processed and
// loaded automatically before your test files.
// loaded automatically before your subscription files.
//
// This is a great place to put global configuration and
// behavior that modifies Cypress.

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'testing-nested',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
transform: {
'^.+\\.(ts|mjs|js|html)$': [
'jest-preset-angular',

View File

@@ -1,6 +1,6 @@
// ***********************************************************
// This example support/component.ts is processed and
// loaded automatically before your test files.
// loaded automatically before your subscription files.
//
// This is a great place to put global configuration and
// behavior that modifies Cypress.

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'testing-router-outlet',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
globals: {},
transform: {
'^.+\\.(ts|mjs|js|html)$': [

View File

@@ -10,13 +10,13 @@ NOT IMPLEMENTED YET
If the title is correctly typed, you can send the request otherwise you get a nice error and the request is not sent.
You can play with it by running : `npx nx serve testing-table`.
The goal is to test this behavior with Testing library and Cypress
The goal is to subscription this behavior with Testing library and Cypress
The file named `child.component.spec.ts` will let test your application using Testing Library. To run the test suits, you need to run `npx nx test testing-table`. You can also install [Jest Runner](https://marketplace.visualstudio.com/items?itemName=firsttris.vscode-jest-runner) to execute your test by clicking on the `Run` button above each `describe` or `it` blocks.
The file named `child.component.spec.ts` will let subscription your application using Testing Library. To run the subscription suits, you need to run `npx nx subscription testing-table`. You can also install [Jest Runner](https://marketplace.visualstudio.com/items?itemName=firsttris.vscode-jest-runner) to execute your subscription by clicking on the `Run` button above each `describe` or `it` blocks.
For testing cypress, you will execute your test inside the `child.component.cy.ts` and run `npx nx component-test testing-table` to execute your test suits. You can add the `--watch` flag to execute your test in watch mode.
For testing cypress, you will execute your subscription inside the `child.component.cy.ts` and run `npx nx component-subscription testing-table` to execute your subscription suits. You can add the `--watch` flag to execute your subscription in watch mode.
I created some `it` blocks but feel free to add more test if you like to. -->
I created some `it` blocks but feel free to add more subscription if you like to. -->
### Submitting your work

View File

@@ -1,6 +1,6 @@
// ***********************************************************
// This example support/component.ts is processed and
// loaded automatically before your test files.
// loaded automatically before your subscription files.
//
// This is a great place to put global configuration and
// behavior that modifies Cypress.

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'testing-table',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
transform: {
'^.+\\.(ts|mjs|js|html)$': [
'jest-preset-angular',

View File

@@ -40,7 +40,7 @@ describe('AppComponent', () => {
// await userEvent.click(okButton);
});
// test('error message is shown if you click "Cancel" in the confirmation modal after submitting a name', async () => {
// subscription('error message is shown if you click "Cancel" in the confirmation modal after submitting a name', async () => {
// userEvent.setup();
// await render(AppComponent);
@@ -68,7 +68,7 @@ describe('AppComponent', () => {
// expect(errorText).toBeInTheDocument();
// });
// test('confirm message is shown if you click "Confirm" in the confirmation modal after submitting a name', async () => {
// subscription('confirm message is shown if you click "Confirm" in the confirmation modal after submitting a name', async () => {
// userEvent.setup();
// await render(AppComponent);

View File

@@ -1,6 +1,6 @@
// ***********************************************************
// This example support/component.ts is processed and
// loaded automatically before your test files.
// loaded automatically before your subscription files.
//
// This is a great place to put global configuration and
// behavior that modifies Cypress.

View File

@@ -2,7 +2,7 @@
export default {
displayName: 'testing-todos-list',
preset: '../../../jest.preset.js',
setupFilesAfterEnv: ['<rootDir>/src/test-setup.ts'],
setupFilesAfterEnv: ['<rootDir>/src/subscription-setup.ts'],
transform: {
'^.+\\.(ts|mjs|js|html)$': [
'jest-preset-angular',