@@ -10,13 +10,10 @@ describe('OKR Objective Alignment e2e tests', () => {
10
10
cy . getByTestId ( 'add-objective' ) . first ( ) . click ( ) ;
11
11
12
12
cy . getByTestId ( 'title' ) . first ( ) . clear ( ) . type ( 'Objective with new alignment' ) ;
13
- cy . get ( 'select#alignment option:selected' ) . should ( 'contain.text' , 'Bitte wählen' ) ;
14
- cy . get ( 'select#alignment' )
15
- . contains ( 'K - Steigern der URS um 25%' )
16
- . then ( ( $option ) => {
17
- const optionValue = $option . attr ( 'value' ) ;
18
- cy . get ( 'select#alignment' ) . select ( optionValue ! ) ;
19
- } ) ;
13
+ cy . getByTestId ( 'alignmentInput' ) . first ( ) . should ( 'have.attr' , 'placeholder' , 'Bezug wählen' ) ;
14
+ cy . tabForwardUntil ( '[data-testId="alignmentInput"]' ) ;
15
+ cy . realPress ( 'ArrowDown' ) ;
16
+ cy . realPress ( 'Enter' ) ;
20
17
21
18
cy . getByTestId ( 'safe' ) . click ( ) ;
22
19
@@ -31,20 +28,18 @@ describe('OKR Objective Alignment e2e tests', () => {
31
28
. contains ( 'Objective bearbeiten' )
32
29
. click ( ) ;
33
30
34
- cy . get ( 'select#alignment option:selected' ) . should ( 'contain.text' , 'K - Steigern der URS um 25%' ) ;
31
+ cy . getByTestId ( 'alignmentInput' )
32
+ . first ( )
33
+ . should ( 'have.value' , 'O - Als BBT wollen wir den Arbeitsalltag der Members von Puzzle ITC erleichtern.' ) ;
35
34
} ) ;
36
35
37
36
it ( `Update alignment of Objective` , ( ) => {
38
37
cy . getByTestId ( 'add-objective' ) . first ( ) . click ( ) ;
39
38
40
39
cy . getByTestId ( 'title' ) . first ( ) . clear ( ) . type ( 'We change alignment of this Objective' ) ;
41
- cy . get ( 'select#alignment option:selected' ) . should ( 'contain.text' , 'Bitte wählen' ) ;
42
- cy . get ( 'select#alignment' )
43
- . contains ( 'K - Steigern der URS um 25%' )
44
- . then ( ( $option ) => {
45
- const optionValue = $option . attr ( 'value' ) ;
46
- cy . get ( 'select#alignment' ) . select ( optionValue ! ) ;
47
- } ) ;
40
+ cy . tabForwardUntil ( '[data-testId="alignmentInput"]' ) ;
41
+ cy . realPress ( 'ArrowDown' ) ;
42
+ cy . realPress ( 'Enter' ) ;
48
43
cy . getByTestId ( 'safe' ) . click ( ) ;
49
44
50
45
cy . contains ( 'We change alignment of this Objective' ) ;
@@ -58,12 +53,11 @@ describe('OKR Objective Alignment e2e tests', () => {
58
53
. contains ( 'Objective bearbeiten' )
59
54
. click ( ) ;
60
55
61
- cy . get ( 'select#alignment' )
62
- . contains ( 'K - Antwortzeit für Supportanfragen um 33% verkürzen.' )
63
- . then ( ( $option ) => {
64
- const optionValue = $option . attr ( 'value' ) ;
65
- cy . get ( 'select#alignment' ) . select ( optionValue ! ) ;
66
- } ) ;
56
+ cy . tabForwardUntil ( '[data-testId="alignmentInput"]' ) ;
57
+ cy . realPress ( 'Delete' ) ;
58
+ cy . realPress ( 'ArrowDown' ) ;
59
+ cy . realPress ( 'ArrowDown' ) ;
60
+ cy . realPress ( 'Enter' ) ;
67
61
cy . getByTestId ( 'safe' ) . click ( ) ;
68
62
69
63
cy . getByTestId ( 'objective' )
@@ -76,23 +70,18 @@ describe('OKR Objective Alignment e2e tests', () => {
76
70
. contains ( 'Objective bearbeiten' )
77
71
. click ( ) ;
78
72
79
- cy . get ( 'select#alignment option:selected' ) . should (
80
- 'contain.text' ,
81
- 'K - Antwortzeit für Supportanfragen um 33% verkürzen.' ,
82
- ) ;
73
+ cy . getByTestId ( 'alignmentInput' )
74
+ . first ( )
75
+ . should ( 'have.value' , 'KR - Das BBT hilft den Membern 20% mehr beim Töggelen' ) ;
83
76
} ) ;
84
77
85
78
it ( `Delete alignment of Objective` , ( ) => {
86
79
cy . getByTestId ( 'add-objective' ) . first ( ) . click ( ) ;
87
80
88
81
cy . getByTestId ( 'title' ) . first ( ) . clear ( ) . type ( 'We delete the alignment' ) ;
89
- cy . get ( 'select#alignment option:selected' ) . should ( 'contain.text' , 'Bitte wählen' ) ;
90
- cy . get ( 'select#alignment' )
91
- . contains ( 'K - Steigern der URS um 25%' )
92
- . then ( ( $option ) => {
93
- const optionValue = $option . attr ( 'value' ) ;
94
- cy . get ( 'select#alignment' ) . select ( optionValue ! ) ;
95
- } ) ;
82
+ cy . tabForwardUntil ( '[data-testId="alignmentInput"]' ) ;
83
+ cy . realPress ( 'ArrowDown' ) ;
84
+ cy . realPress ( 'Enter' ) ;
96
85
cy . getByTestId ( 'safe' ) . click ( ) ;
97
86
98
87
cy . contains ( 'We delete the alignment' ) ;
@@ -106,7 +95,9 @@ describe('OKR Objective Alignment e2e tests', () => {
106
95
. contains ( 'Objective bearbeiten' )
107
96
. click ( ) ;
108
97
109
- cy . get ( 'select#alignment' ) . select ( 'Kein Alignment' ) ;
98
+ cy . tabForwardUntil ( '[data-testId="alignmentInput"]' ) ;
99
+ cy . realPress ( 'Delete' ) ;
100
+ cy . tabForward ( ) ;
110
101
cy . getByTestId ( 'safe' ) . click ( ) ;
111
102
112
103
cy . getByTestId ( 'objective' )
@@ -119,42 +110,68 @@ describe('OKR Objective Alignment e2e tests', () => {
119
110
. contains ( 'Objective bearbeiten' )
120
111
. click ( ) ;
121
112
122
- cy . get ( 'select#alignment option:selected ') . should ( 'contain.text ' , 'Bitte wählen' ) ;
113
+ cy . getByTestId ( 'alignmentInput ') . first ( ) . should ( 'have.attr ' , 'placeholder' , 'Bezug wählen') ;
123
114
} ) ;
124
115
125
- it ( `Alignment Possibilites change when quarter change` , ( ) => {
116
+ it ( `Alignment Possibilities change when quarter change` , ( ) => {
126
117
cy . visit ( '/?quarter=1' ) ;
127
118
119
+ cy . get ( 'mat-chip:visible:contains("Alle")' ) . click ( ) ;
120
+ cy . get ( 'mat-chip:visible:contains("Alle")' ) . click ( ) ;
121
+ cy . get ( 'mat-chip:visible:contains("/BBT")' ) . click ( ) ;
122
+
128
123
cy . getByTestId ( 'add-objective' ) . first ( ) . click ( ) ;
129
124
cy . getByTestId ( 'title' ) . first ( ) . clear ( ) . type ( 'We can link later on this' ) ;
130
125
cy . getByTestId ( 'safe' ) . click ( ) ;
131
126
127
+ cy . get ( 'mat-chip:visible:contains("Alle")' ) . click ( ) ;
128
+
132
129
cy . getByTestId ( 'add-objective' ) . first ( ) . click ( ) ;
133
130
cy . getByTestId ( 'title' ) . first ( ) . clear ( ) . type ( 'There is my other alignment' ) ;
134
- cy . get ( 'select#alignment option:selected' ) . should ( 'contain.text' , 'Bitte wählen' ) ;
131
+ cy . getByTestId ( 'alignmentInput' ) . first ( ) . should ( 'have.attr' , 'placeholder' , 'Bezug wählen' ) ;
132
+ cy . tabForwardUntil ( '[data-testId="alignmentInput"]' ) ;
133
+ cy . realPress ( 'ArrowDown' ) ;
134
+ cy . realPress ( 'Enter' ) ;
135
135
136
- cy . get ( 'select#alignment' ) . select ( 1 ) ;
136
+ cy . getByTestId ( 'alignmentInput' )
137
+ . first ( )
138
+ . invoke ( 'val' )
139
+ . then ( ( val ) => {
140
+ const selectValue = val ;
141
+ cy . getByTestId ( 'quarterSelect' ) . select ( 'GJ 23/24-Q1' ) ;
142
+ cy . getByTestId ( 'title' ) . first ( ) . clear ( ) . type ( 'There is our other alignment' ) ;
137
143
138
- cy . get ( 'select#alignment option:selected' ) . then ( ( $select ) => {
139
- const selectValue = $select . text ( ) ;
140
- cy . getByTestId ( 'quarterSelect' ) . select ( 'GJ 23/24-Q1' ) ;
141
- cy . getByTestId ( 'title' ) . first ( ) . clear ( ) . type ( 'There is our other alignment' ) ;
144
+ cy . tabForwardUntil ( '[data-testId="alignmentInput"]' ) ;
145
+ cy . realPress ( 'ArrowDown' ) ;
146
+ cy . realPress ( 'Enter' ) ;
142
147
143
- cy . get ( 'select#alignment ') . select ( 1 ) ;
148
+ cy . getByTestId ( 'alignmentInput ') . first ( ) . should ( 'not.have.value' , selectValue ) ;
144
149
145
- cy . get ( 'select#alignment option:selected' ) . should ( 'not.contain.text' , selectValue ) ;
146
- cy . getByTestId ( 'cancel' ) . click ( ) ;
150
+ cy . getByTestId ( 'cancel' ) . click ( ) ;
147
151
148
- cy . visit ( '/?quarter=2' ) ;
152
+ cy . visit ( '/?quarter=2' ) ;
149
153
150
- cy . getByTestId ( 'add-objective' ) . first ( ) . click ( ) ;
151
- cy . getByTestId ( 'title' ) . first ( ) . clear ( ) . type ( 'Quarter change objective' ) ;
154
+ cy . getByTestId ( 'add-objective' ) . first ( ) . click ( ) ;
155
+ cy . getByTestId ( 'title' ) . first ( ) . clear ( ) . type ( 'Quarter change objective' ) ;
156
+
157
+ cy . get ( 'select#quarter' ) . select ( 'GJ 22/23-Q4' ) ;
158
+ cy . getByTestId ( 'title' ) . first ( ) . clear ( ) . type ( 'A new title' ) ;
159
+ cy . tabForwardUntil ( '[data-testId="alignmentInput"]' ) ;
160
+ cy . realPress ( 'ArrowDown' ) ;
161
+ cy . realPress ( 'Enter' ) ;
162
+
163
+ cy . getByTestId ( 'alignmentInput' ) . first ( ) . should ( 'have.value' , selectValue ) ;
164
+ } ) ;
165
+ } ) ;
166
+
167
+ it ( `Correct placeholder` , ( ) => {
168
+ cy . getByTestId ( 'add-objective' ) . first ( ) . click ( ) ;
169
+ cy . getByTestId ( 'title' ) . first ( ) . clear ( ) . type ( 'This is an objective which we dont save' ) ;
170
+ cy . getByTestId ( 'alignmentInput' ) . first ( ) . should ( 'have.attr' , 'placeholder' , 'Bezug wählen' ) ;
152
171
153
- cy . get ( 'select#quarter' ) . select ( 'GJ 22/23-Q4' ) ;
154
- cy . getByTestId ( 'title' ) . first ( ) . clear ( ) . type ( 'A new title' ) ;
155
- cy . get ( 'select#alignment' ) . select ( 1 ) ;
172
+ cy . getByTestId ( 'quarterSelect' ) . select ( 'GJ 23/24-Q3' ) ;
173
+ cy . getByTestId ( 'title' ) . first ( ) . clear ( ) . type ( 'We changed the quarter' ) ;
156
174
157
- cy . get ( 'select#alignment option:selected' ) . should ( 'contain.text' , selectValue ) ;
158
- } ) ;
175
+ cy . getByTestId ( 'alignmentInput' ) . first ( ) . should ( 'have.attr' , 'placeholder' , 'Kein Alignment vorhanden' ) ;
159
176
} ) ;
160
177
} ) ;
0 commit comments