@comicrelief/component-library 7.19.1 → 7.19.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/cypress/integration/components/atoms/button.spec.js +113 -0
  2. package/cypress/integration/components/atoms/buttonWithStates.spec.js +53 -0
  3. package/cypress/integration/components/atoms/checkbox.spec.js +68 -0
  4. package/cypress/integration/components/atoms/confetti.spec.js +52 -0
  5. package/cypress/integration/components/atoms/errorText.spec.js +51 -0
  6. package/cypress/integration/components/atoms/label.spec.js +104 -0
  7. package/cypress/integration/components/atoms/link.spec.js +207 -0
  8. package/cypress/integration/components/atoms/logo.spec.js +149 -0
  9. package/cypress/integration/components/atoms/pagination.spec.js +214 -0
  10. package/cypress/integration/components/atoms/picture.spec.js +147 -0
  11. package/cypress/integration/components/atoms/radioButton.spec.js +81 -0
  12. package/cypress/integration/components/atoms/richText.spec.js +75 -0
  13. package/cypress/integration/components/atoms/select.spec.js +89 -0
  14. package/cypress/integration/components/atoms/text.spec.js +180 -0
  15. package/cypress/integration/components/atoms/textArea.spec.js +91 -0
  16. package/cypress/integration/components/atoms/textInputWithDrop.spec.js +78 -0
  17. package/cypress/integration/components/molecules/accordion.spec.js +72 -0
  18. package/cypress/integration/components/molecules/articleTeaser.spec.js +110 -0
  19. package/cypress/integration/components/molecules/banner.spec.js +72 -0
  20. package/cypress/integration/components/molecules/box.spec.js +112 -0
  21. package/cypress/integration/components/molecules/card.spec.js +113 -0
  22. package/cypress/integration/components/molecules/chip.spec.js +70 -0
  23. package/cypress/integration/components/molecules/countdown.spec.js +73 -0
  24. package/cypress/integration/components/molecules/descriptor.spec.js +147 -0
  25. package/cypress/integration/components/molecules/doubleCopy.spec.js +81 -0
  26. package/cypress/integration/components/molecules/heroBanner.spec.js +71 -0
  27. package/cypress/integration/components/molecules/infoBanner.spec.js +71 -0
  28. package/cypress/integration/components/molecules/partnerLink.spec.js +70 -0
  29. package/cypress/integration/components/molecules/promo.spec.js +76 -0
  30. package/cypress/integration/components/{Molecules/SchoolLookup.spec.js → molecules/schoolLookup.spec.js} +6 -0
  31. package/cypress/integration/components/molecules/searchInput.spec.js +74 -0
  32. package/cypress/integration/components/molecules/searchResult.spec.js +202 -0
  33. package/cypress/integration/components/molecules/shareButton.spec.js +78 -0
  34. package/cypress/integration/components/molecules/simpleSchoolLookup.spec.js +84 -0
  35. package/cypress/integration/components/molecules/singleMessage.spec.js +537 -0
  36. package/cypress/integration/components/molecules/singleMessageDs.spec.js +248 -0
  37. package/cypress/integration/components/molecules/videoBanner.spec.js +140 -0
  38. package/cypress/integration/components/organisms/cookieBanner.spec.js +82 -0
  39. package/cypress/integration/components/organisms/footer.spec.js +166 -0
  40. package/dist/components/Organisms/Footer/__snapshots__/Footer.test.js.snap +1 -1
  41. package/dist/components/Organisms/Footer/data/footerCopy.js +1 -1
  42. package/package.json +1 -1
  43. package/src/components/Organisms/Footer/__snapshots__/Footer.test.js.snap +1 -1
  44. package/src/components/Organisms/Footer/data/footerCopy.js +1 -1
  45. package/cypress/integration/components/Atoms/Checkbox.spec.js +0 -69
  46. package/cypress/integration/components/Atoms/Link.spec.js +0 -217
  47. package/cypress/integration/components/Atoms/Logo.spec.js +0 -155
  48. package/cypress/integration/components/Atoms/Pagination.spec.js +0 -217
  49. package/cypress/integration/components/Atoms/Picture.spec.js +0 -147
  50. package/cypress/integration/components/Atoms/RadioButton.spec.js +0 -81
  51. package/cypress/integration/components/Atoms/RichText.spec.js +0 -75
  52. package/cypress/integration/components/Atoms/Select.spec.js +0 -89
  53. package/cypress/integration/components/Atoms/Text.spec.js +0 -180
  54. package/cypress/integration/components/Atoms/TextArea.spec.js +0 -91
  55. package/cypress/integration/components/Molecules/ArticleTeaser.spec.js +0 -111
  56. package/cypress/integration/components/Molecules/Box.spec.js +0 -112
  57. package/cypress/integration/components/Molecules/Card.spec.js +0 -113
  58. package/cypress/integration/components/Molecules/DoubleCopy.spec.js +0 -81
  59. package/cypress/integration/components/Molecules/HeroBanner.spec.js +0 -71
  60. package/cypress/integration/components/Molecules/InfoBanner.spec.js +0 -71
  61. package/cypress/integration/components/Molecules/PartnerLink.spec.js +0 -70
  62. package/cypress/integration/components/Molecules/Promo.spec.js +0 -76
  63. package/cypress/integration/components/Molecules/SearchInput.spec.js +0 -74
  64. package/cypress/integration/components/Molecules/SearchResult.spec.js +0 -202
  65. package/cypress/integration/components/Molecules/ShareButton.spec.js +0 -78
  66. package/cypress/integration/components/Molecules/SingleMessage.spec.js +0 -537
  67. package/cypress/integration/components/Molecules/VideoBanner.spec.js +0 -70
  68. package/cypress/integration/components/Organisms/CookieBanner.spec.js +0 -82
  69. package/cypress/integration/components/Organisms/Footer.spec.js +0 -166
  70. /package/cypress/integration/components/{Atoms/Input.spec.js → atoms/input.spec.js} +0 -0
  71. /package/cypress/integration/components/{Atoms/SocialIcons.spec.js → atoms/socialIcons.spec.js} +0 -0
  72. /package/cypress/integration/components/{Molecules/CardDs.spec.js → molecules/cardDs.spec.js} +0 -0
  73. /package/cypress/integration/components/{Molecules/Typeahead.spec.js → molecules/typeahead.spec.js} +0 -0
  74. /package/cypress/integration/components/{Organisms/Donate.spec.js → organisms/donate.spec.js} +0 -0
  75. /package/cypress/integration/components/{Organisms/EmailSignUp.spec.js → organisms/emailSignUp.spec.js} +0 -0
  76. /package/cypress/integration/components/{Organisms/Header.spec.js → organisms/header.spec.js} +0 -0
  77. /package/cypress/integration/components/{Atoms/MarketingPreferencesDSForm.spec.js → organisms/marketingPreferencesDSForm.spec.js} +0 -0
  78. /package/cypress/integration/components/{Organisms/Membership.spec.js → organisms/membership.spec.js} +0 -0
@@ -1,147 +0,0 @@
1
- describe('Picture component', () => {
2
- before(() => {
3
- // go to picture component
4
- cy.visit('/#picture');
5
- cy.wait(2500)
6
- });
7
-
8
- describe('props and methods section', () => {
9
- beforeEach(() => {
10
- cy.get('[data-testid="Picture-container"] button[name="rsg-usage"]')
11
- .contains('Props & methods')
12
- .as('propsBtn');
13
-
14
- cy.get('@propsBtn')
15
- .closest('[class^=rsg--tabs]')
16
- .as('container');
17
- });
18
-
19
- it('is present', () => {
20
- cy.get('@propsBtn').should('exist');
21
- });
22
-
23
- it('does not show table initially', () => {
24
- cy.get('@container')
25
- .find('table')
26
- .should('not.exist');
27
- });
28
-
29
- it('shows the table on button click', () => {
30
- cy.get('@propsBtn').click();
31
- cy.get('@container')
32
- .find('table')
33
- .should('contain', 'Prop name');
34
- });
35
- });
36
-
37
- describe('Picture section', () => {
38
- beforeEach(() => {
39
- cy.get('[data-testid="Picture-example-1"]')
40
- .as('container')
41
- .find('[data-preview="Picture"]')
42
- .as('preview');
43
-
44
- cy.get('@container')
45
- .find('button')
46
- .contains('View Code')
47
- .as('viewCodeBtn');
48
- });
49
-
50
- it('render picture section', () => {
51
- cy.get('@container')
52
- .should('exist')
53
- });
54
-
55
- it('has view code button', () => {
56
- cy.get('@viewCodeBtn').should('exist');
57
- });
58
-
59
- it('shows code on click', () => {
60
- cy.get('@viewCodeBtn').click();
61
- cy.get('@container')
62
- .find('textarea')
63
- .should('exist');
64
- });
65
-
66
- it('closes code on click', () => {
67
- cy.get('@viewCodeBtn').click();
68
- cy.get('@container')
69
- .find('textarea')
70
- .should('not.exist');
71
- });
72
- });
73
-
74
- describe('custom size picture section', () => {
75
- beforeEach(() => {
76
- cy.get('[data-testid="Picture-example-3"]')
77
- .as('container')
78
- .find('[data-preview="Picture"]')
79
- .as('preview');
80
-
81
- cy.get('@container')
82
- .find('button')
83
- .contains('View Code')
84
- .as('viewCodeBtn');
85
- });
86
-
87
- it('should check custom size section', () => {
88
- cy.get('@container')
89
- .should('exist');
90
- });
91
-
92
- it('has view code button', () => {
93
- cy.get('@viewCodeBtn').should('exist');
94
- });
95
-
96
- it('shows code on click', () => {
97
- cy.get('@viewCodeBtn').click();
98
- cy.get('@container')
99
- .find('textarea')
100
- .should('exist');
101
- });
102
-
103
- it('closes code on click', () => {
104
- cy.get('@viewCodeBtn').click();
105
- cy.get('@container')
106
- .find('textarea')
107
- .should('not.exist');
108
- });
109
- });
110
-
111
- describe('Single image section', () => {
112
- beforeEach(() => {
113
- cy.get('[data-testid="Picture-example-5"]')
114
- .as('container')
115
- .find('[data-preview="Picture"]')
116
- .as('preview');
117
-
118
- cy.get('@container')
119
- .find('button')
120
- .contains('View Code')
121
- .as('viewCodeBtn');
122
- });
123
-
124
- it('should check custom size picture section', () => {
125
- cy.get('@container')
126
- .should('exist');
127
- });
128
-
129
- it('has view code button', () => {
130
- cy.get('@viewCodeBtn').should('exist');
131
- });
132
-
133
- it('shows code on click', () => {
134
- cy.get('@viewCodeBtn').click();
135
- cy.get('@container')
136
- .find('textarea')
137
- .should('exist');
138
- });
139
-
140
- it('closes code on click', () => {
141
- cy.get('@viewCodeBtn').click();
142
- cy.get('@container')
143
- .find('textarea')
144
- .should('not.exist');
145
- });
146
- });
147
- });
@@ -1,81 +0,0 @@
1
- describe('Radio Button component', () => {
2
- before(() => {
3
- // go to radio button component
4
- cy.visit('/#radiobutton');
5
- cy.wait(2500)
6
- });
7
-
8
- describe('props and methods section', () => {
9
- beforeEach(() => {
10
- cy.get('[data-testid="RadioButton-container"] button[name="rsg-usage"]')
11
- .contains('Props & methods')
12
- .as('propsBtn');
13
-
14
- cy.get('@propsBtn')
15
- .closest('[class^=rsg--tabs]')
16
- .as('container');
17
- });
18
-
19
- it('is present', () => {
20
- cy.get('@propsBtn').should('exist');
21
- });
22
-
23
- it('does not show table initially', () => {
24
- cy.get('@container')
25
- .find('table')
26
- .should('not.exist');
27
- });
28
-
29
- it('shows the table on button click', () => {
30
- cy.get('@propsBtn').click();
31
- cy.get('@container')
32
- .find('table')
33
- .should('contain', 'Prop name');
34
- });
35
- });
36
-
37
- describe('Radio button section', () => {
38
- beforeEach(() => {
39
- cy.get('[data-testid="RadioButton-example-1"]')
40
- .as('container')
41
- .find('[data-preview="RadioButton"]')
42
- .as('preview');
43
-
44
- cy.get('@container')
45
- .find('button')
46
- .contains('View Code')
47
- .as('viewCodeBtn');
48
- });
49
-
50
- it('renders radio button preview', () => {
51
- cy.get('@container')
52
- .find('label')
53
- .first()
54
- .click();
55
- cy.get('@container')
56
- .find('label:nth-child(2)')
57
- .click();
58
- cy.get('@container')
59
- .find('label:nth-child(3)')
60
- .click();
61
- });
62
-
63
- it('has view code button', () => {
64
- cy.get('@viewCodeBtn').should('exist');
65
- });
66
-
67
- it('shows code on click', () => {
68
- cy.get('@viewCodeBtn').click();
69
- cy.get('@container')
70
- .find('textarea')
71
- .should('exist');
72
- });
73
-
74
- it('closes code on click', () => {
75
- cy.get('@viewCodeBtn').click();
76
- cy.get('@container')
77
- .find('textarea')
78
- .should('not.exist');
79
- });
80
- });
81
- });
@@ -1,75 +0,0 @@
1
- describe('RichText component', () => {
2
- before(() => {
3
- // go to rich text component
4
- cy.visit('/#richtext');
5
- cy.wait(2500)
6
- });
7
-
8
- describe('props and methods section', () => {
9
- beforeEach(() => {
10
- cy.get('[data-testid="RichText-container"] button[name="rsg-usage"]')
11
- .contains('Props & methods')
12
- .as('propsBtn');
13
-
14
- cy.get('@propsBtn')
15
- .closest('[class^=rsg--tabs]')
16
- .as('container');
17
- });
18
-
19
- it('is present', () => {
20
- cy.get('@propsBtn').should('exist');
21
- });
22
-
23
- it('does not show table initially', () => {
24
- cy.get('@container')
25
- .find('table')
26
- .should('not.exist');
27
- });
28
-
29
- it('shows the table on button click', () => {
30
- cy.get('@propsBtn').click();
31
- cy.get('@container')
32
- .find('table')
33
- .should('contain', 'Prop name');
34
- });
35
- });
36
-
37
- describe('Rich text section', () => {
38
- beforeEach(() => {
39
- cy.get('[data-testid="RichText-example-1"]')
40
- .as('container')
41
- .find('[data-preview="RichText"]')
42
- .as('preview');
43
-
44
- cy.get('@container')
45
- .find('button')
46
- .contains('View Code')
47
- .as('viewCodeBtn');
48
- });
49
-
50
- it('should check rich text section', () => {
51
- cy.get('@container')
52
- .find('p')
53
- .should('exist')
54
- .contains('Some strong test markup')
55
- });
56
-
57
- it('has view code button', () => {
58
- cy.get('@viewCodeBtn').should('exist');
59
- });
60
-
61
- it('shows code on click', () => {
62
- cy.get('@viewCodeBtn').click();
63
- cy.get('@container')
64
- .find('textarea')
65
- .should('exist');
66
- });
67
-
68
- it('closes code on click', () => {
69
- cy.get('@viewCodeBtn').click();
70
- cy.get('@container')
71
- .find('textarea')
72
- .should('not.exist');
73
- });
74
- });
75
- });
@@ -1,89 +0,0 @@
1
- describe('SelectField component', () => {
2
- before(() => {
3
- // go to selectfield text component
4
- cy.visit('/#selectfield');
5
- });
6
-
7
- describe('props and methods section', () => {
8
- beforeEach(() => {
9
- cy.get('[data-testid="Select-container"] button[name="rsg-usage"]')
10
- .contains('Props & methods')
11
- .as('propsBtn');
12
-
13
- cy.get('@propsBtn')
14
- .closest('[class^=rsg--tabs]')
15
- .as('container');
16
- });
17
-
18
- it('is present', () => {
19
- cy.get('@propsBtn').should('exist');
20
- });
21
-
22
- it('does not show table initially', () => {
23
- cy.get('@container')
24
- .find('table')
25
- .should('not.exist');
26
- });
27
-
28
- it('shows the table on button click', () => {
29
- cy.get('@propsBtn').click();
30
- cy.get('@container')
31
- .find('table')
32
- .should('contain', 'Prop name');
33
- });
34
- });
35
-
36
- describe('Select Field section', () => {
37
- beforeEach(() => {
38
- cy.get('[data-testid="Select-example-1"]')
39
- .as('container')
40
- .find('[data-preview="Select"]')
41
- .as('preview');
42
-
43
- cy.get('@container')
44
- .find('button')
45
- .contains('View Code')
46
- .as('viewCodeBtn');
47
- });
48
-
49
- it('should check select field functionality', () => {
50
- //first dropdown
51
- cy.get('@container')
52
- .find('h4')
53
- .should('exist')
54
- .contains('DROPDOWN MENU');
55
- cy.get('@container')
56
- .find('label:nth-child(2)')
57
- .first()
58
- .click();
59
-
60
- //second dropdown
61
- cy.get('@container')
62
- .find('label:nth-child(4) > span')
63
- .should('exist')
64
- .contains('This is an error message');
65
- cy.get('@container')
66
- .find('label:nth-child(4)')
67
- .first()
68
- .click();
69
- });
70
-
71
- it('has view code button', () => {
72
- cy.get('@viewCodeBtn').should('exist');
73
- });
74
-
75
- it('shows code on click', () => {
76
- cy.get('@viewCodeBtn').click();
77
- cy.get('@container')
78
- .find('textarea')
79
- .should('exist');
80
- });
81
-
82
- it('closes code on click', () => {
83
- cy.get('@viewCodeBtn').click();
84
- cy.get('@container')
85
- .find('textarea')
86
- .should('not.exist');
87
- });
88
- });
89
- });
@@ -1,180 +0,0 @@
1
- describe('Text component', () => {
2
- before(() => {
3
- // go to text component
4
- cy.visit('/#text');
5
- });
6
-
7
- describe('props and methods section', () => {
8
- beforeEach(() => {
9
- cy.get('[data-testid="Text-container"] button[name="rsg-usage"]')
10
- .contains('Props & methods')
11
- .as('propsBtn');
12
-
13
- cy.get('@propsBtn')
14
- .closest('[class^=rsg--tabs]')
15
- .as('container');
16
- });
17
-
18
- it('is present', () => {
19
- cy.get('@propsBtn').should('exist');
20
- });
21
-
22
- it('does not show table initially', () => {
23
- cy.get('@container')
24
- .find('table')
25
- .should('not.exist');
26
- });
27
-
28
- it('shows the table on button click', () => {
29
- cy.get('@propsBtn').click();
30
- cy.get('@container')
31
- .find('table')
32
- .should('contain', 'Prop name');
33
- });
34
- });
35
-
36
- describe('Text section', () => {
37
- beforeEach(() => {
38
- cy.get('[data-testid="Text-example-0"]')
39
- .as('container')
40
- .find('[data-preview="Text"]')
41
- .as('preview');
42
-
43
- cy.get('@container')
44
- .find('button')
45
- .contains('View Code')
46
- .as('viewCodeBtn');
47
- });
48
-
49
- it('renders text section', () => {
50
- //H1
51
- cy.get('@container')
52
- .find('h1')
53
- .should('exist')
54
- .contains('family: Anton weight: Regular size: 80px / 5rem / super');
55
- //H2
56
- cy.get('@container')
57
- .find('h2')
58
- .should('exist')
59
- .contains('family: Anton weight: Regular size: 64px / 4rem / big');
60
- //H3
61
- cy.get('@container')
62
- .find('h3')
63
- .should('exist')
64
- .contains('family: Anton weight: Regular size: 48px / 3rem / xxl');
65
- //H4
66
- cy.get('@container')
67
- .find('h4')
68
- .should('exist')
69
- .contains('family: Anton weight: Regular size: 32px / 2rem / xl');
70
- //H5
71
- cy.get('@container')
72
- .find('h4')
73
- .should('exist')
74
- .contains('family: Anton weight: Regular size: 24px / 1.5rem / l');
75
- //Body1
76
- cy.get('@container')
77
- .find('p')
78
- .should('exist')
79
- .contains('family: Montserrat weight: Regular size: 20px / 1.25rem / m');
80
- //Body2
81
- cy.get('@container')
82
- .find('p')
83
- .should('exist')
84
- .contains('family: Montserrat weight: Regular size: 16px / 1rem / s');
85
- });
86
-
87
- it('has view code button', () => {
88
- cy.get('@viewCodeBtn').should('exist');
89
- });
90
-
91
- it('shows code on click', () => {
92
- cy.get('@viewCodeBtn').click();
93
- cy.get('@container')
94
- .find('textarea')
95
- .should('exist');
96
- });
97
-
98
- it('closes code on click', () => {
99
- cy.get('@viewCodeBtn').click();
100
- cy.get('@container')
101
- .find('textarea')
102
- .should('not.exist');
103
- });
104
- });
105
-
106
- describe('Text section', () => {
107
- beforeEach(() => {
108
- cy.get('[data-testid="Text-example-2"]')
109
- .as('container')
110
- .find('[data-preview="Text"]')
111
- .as('preview');
112
-
113
- cy.get('@container')
114
- .find('button')
115
- .contains('View Code')
116
- .as('viewCodeBtn');
117
- });
118
-
119
- it('renders Sport Relief text section', () => {
120
- //H1
121
- cy.get('@container')
122
- .find('h1')
123
- .should('exist')
124
- .contains('Heading 1');
125
- //H2
126
- cy.get('@container')
127
- .find('h2')
128
- .should('exist')
129
- .contains('Heading 2');
130
- //H3
131
- cy.get('@container')
132
- .find('h3')
133
- .should('exist')
134
- .contains('Heading 3');
135
- //H4
136
- cy.get('@container')
137
- .find('h4')
138
- .should('exist')
139
- .contains('Heading 4');
140
- //H5
141
- cy.get('@container')
142
- .find('h4')
143
- .should('exist')
144
- .contains('Heading 5');
145
- //Body1
146
- cy.get('@container')
147
- .find('p')
148
- .should('exist')
149
- .contains('Body 1');
150
- //Body2
151
- cy.get('@container')
152
- .find('p')
153
- .should('exist')
154
- .contains('Body 2');
155
- //Bold and uppercase
156
- cy.get('@container')
157
- .find('p')
158
- .should('exist')
159
- .contains('Bold and Uppercase');
160
- });
161
-
162
- it('has view code button', () => {
163
- cy.get('@viewCodeBtn').should('exist');
164
- });
165
-
166
- it('shows code on click', () => {
167
- cy.get('@viewCodeBtn').click();
168
- cy.get('@container')
169
- .find('textarea')
170
- .should('exist');
171
- });
172
-
173
- it('closes code on click', () => {
174
- cy.get('@viewCodeBtn').click();
175
- cy.get('@container')
176
- .find('textarea')
177
- .should('not.exist');
178
- });
179
- });
180
- });
@@ -1,91 +0,0 @@
1
- describe('TextArea component', () => {
2
- before(() => {
3
- // go to text area component
4
- cy.visit('/#textarea');
5
- });
6
-
7
- describe('props and methods section', () => {
8
- beforeEach(() => {
9
- cy.get('[data-testid="TextArea-container"] button[name="rsg-usage"]')
10
- .contains('Props & methods')
11
- .as('propsBtn');
12
-
13
- cy.get('@propsBtn')
14
- .closest('[class^=rsg--tabs]')
15
- .as('container');
16
- });
17
-
18
- it('is present', () => {
19
- cy.get('@propsBtn').should('exist');
20
- });
21
-
22
- it('does not show table initially', () => {
23
- cy.get('@container')
24
- .find('table')
25
- .should('not.exist');
26
- });
27
-
28
- it('shows the table on button click', () => {
29
- cy.get('@propsBtn').click();
30
- cy.get('@container')
31
- .find('table')
32
- .should('contain', 'Prop name');
33
- });
34
- });
35
-
36
- describe('Text Area section', () => {
37
- beforeEach(() => {
38
- cy.get('[data-testid="TextArea-example-1"]')
39
- .as('container')
40
- .find('[data-preview="TextArea"]')
41
- .as('preview');
42
-
43
- cy.get('@container')
44
- .find('button')
45
- .contains('View Code')
46
- .as('viewCodeBtn');
47
- });
48
-
49
- //Long copy/Message field
50
- it('renders Long copy/Message field section', () => {
51
- cy.get('@container')
52
- .find('h4')
53
- .should('exist')
54
- .contains('Long copy/Message field');
55
- cy.get('@container')
56
- .find('label:nth-child(2) > textarea')
57
- .should('exist')
58
- .type('This is a test text');
59
- });
60
-
61
- //Long copy/Message field with error message
62
- it('renders Long copy/Message field with error message', () => {
63
- cy.get('@container')
64
- .find('h4')
65
- .should('exist')
66
- .contains('Long copy/Message field');
67
- cy.get('@container')
68
- .find('label:nth-child(4) > span')
69
- .should('exist')
70
- .contains('This is an error message');
71
- cy.get('@container')
72
- .find('label:nth-child(4) > textarea')
73
- .type('This is a test text 2')
74
- });
75
-
76
- it('has view code button', () => {
77
- cy.get('@viewCodeBtn').should('exist');
78
- });
79
-
80
- it('shows code on click', () => {
81
- cy.get('@viewCodeBtn').click();
82
- cy.get('@container')
83
- .find('textarea')
84
- .should('exist');
85
- });
86
-
87
- it('closes code on click', () => {
88
- cy.get('@viewCodeBtn').click();
89
- });
90
- });
91
- });