11import { Organization } from '../../../src/types'
22const CLOUD = Cypress . env ( 'dexUrl' ) === 'OSS' ? false : true
33
4- describe . skip ( 'navigation' , ( ) => {
4+ describe ( 'using the main navigation menu' , ( ) => {
5+ before ( ( ) => {
6+ cy . flush ( ) . then ( ( ) => cy . signin ( ) )
7+ } )
8+
59 beforeEach ( ( ) => {
6- cy . flush ( )
7- cy . signin ( )
8- cy . visit ( '/ ')
9- cy . getByTestID ( 'home-page--header' ) . should ( 'be.visible' )
10+ cy . signinWithoutUserReprovision ( ) . then ( ( ) => {
11+ cy . visit ( '/' )
12+ return cy . getByTestID ( 'home-page--header' ) . should ( 'be.visible ')
13+ } )
1014 } )
1115
1216 it ( 'can navigate to each page from left nav' , ( ) => {
@@ -23,17 +27,21 @@ describe.skip('navigation', () => {
2327 cy . clickNavBarItem ( 'nav-item-data-explorer' )
2428 cy . getByTestID ( 'data-explorer--header' ) . should ( 'exist' )
2529
26- // Dashboard Index Page
27- cy . clickNavBarItem ( 'nav-item-dashboards' )
28- cy . getByTestID ( 'empty-dashboards-list' ) . should ( 'exist' )
30+ cy . isIoxOrg ( ) . then ( isIOx => {
31+ if ( ! isIOx ) {
32+ // Dashboard Index Page
33+ cy . clickNavBarItem ( 'nav-item-dashboards' )
34+ cy . getByTestID ( 'empty-dashboards-list' ) . should ( 'exist' )
2935
30- // Tasks Index Page
31- cy . clickNavBarItem ( 'nav-item-tasks' )
32- cy . getByTestID ( 'tasks-page--header' ) . should ( 'exist' )
36+ // Tasks Index Page
37+ cy . clickNavBarItem ( 'nav-item-tasks' )
38+ cy . getByTestID ( 'tasks-page--header' ) . should ( 'exist' )
3339
34- // Alerts Page
35- cy . clickNavBarItem ( 'nav-item-alerting' )
36- cy . getByTestID ( 'alerts-page--header' ) . should ( 'exist' )
40+ // Alerts Page
41+ cy . clickNavBarItem ( 'nav-item-alerting' )
42+ cy . getByTestID ( 'alerts-page--header' ) . should ( 'exist' )
43+ }
44+ } )
3745
3846 // Settings Page
3947 cy . clickNavBarItem ( 'nav-item-settings' )
@@ -135,57 +143,75 @@ describe.skip('navigation', () => {
135143 } )
136144 } )
137145
138- const exploreTabs = ( tabs : string [ ] ) => {
139- tabs . forEach ( tab => {
140- cy . getByTestID ( `${ tab } --tab` ) . should ( 'be.visible' ) . click ( )
141- cy . url ( ) . should ( 'contain' , tab )
142- } )
143- }
146+ describe ( 'explore tabs' , ( ) => {
147+ const exploreTabs = ( tabs : string [ ] ) => {
148+ tabs . forEach ( tab => {
149+ cy . getByTestID ( `${ tab } --tab` ) . should ( 'be.visible' ) . click ( )
150+ cy . url ( ) . should ( 'contain' , tab )
151+ } )
152+ }
144153
145- it ( 'can navigate in tabs of settings page' , ( ) => {
146- cy . getByTestID ( 'nav-item-settings' ) . should ( 'be.visible' )
147- cy . clickNavBarItem ( 'nav-item-settings' )
148- exploreTabs ( [ 'templates' , 'labels' , 'variables' ] )
149- } )
154+ it ( 'can navigate in tabs of settings page' , ( ) => {
155+ cy . isIoxOrg ( ) . then ( isIox => {
156+ const tabs = isIox
157+ ? [ 'labels' , 'secrets' ]
158+ : [ 'templates' , 'labels' , 'variables' , 'secrets' ]
159+ cy . getByTestID ( 'nav-item-settings' ) . should ( 'be.visible' )
160+ cy . clickNavBarItem ( 'nav-item-settings' )
161+ exploreTabs ( tabs )
162+ } )
163+ } )
150164
151- it ( 'can navigate in tabs of collapsed alerts page' , ( ) => {
152- cy . getByTestID ( 'nav-item-alerting' ) . should ( 'be.visible' )
153- cy . clickNavBarItem ( 'nav-item-alerting' )
154- ; [ 'checks' , 'endpoints' , 'rules' ] . forEach ( tab => {
155- cy . getByTestID ( `alerting-tab--${ tab } ` ) . click ( )
156- cy . getByTestID ( `alerting-tab--${ tab } --input` ) . should ( 'to.be' , 'checked' )
165+ it ( 'can navigate in tabs of collapsed alerts page' , ( ) => {
166+ cy . isIoxOrg ( ) . then ( isIox => {
167+ cy . skipOn ( isIox )
168+ } )
169+ cy . getByTestID ( 'nav-item-alerting' ) . should ( 'be.visible' )
170+ cy . clickNavBarItem ( 'nav-item-alerting' )
171+ ; [ 'checks' , 'endpoints' , 'rules' ] . forEach ( tab => {
172+ cy . getByTestID ( `alerting-tab--${ tab } ` ) . click ( )
173+ cy . getByTestID ( `alerting-tab--${ tab } --input` ) . should ( 'to.be' , 'checked' )
174+ } )
157175 } )
158176 } )
159177
160178 it ( 'can navigate in tabs from maximized left tree nav' , ( ) => {
161- // TODO: check if nav is already maximized
162- cy . get ( '.cf-tree-nav--toggle' ) . click ( { force : true } )
163- ; [
164- 'sources' ,
165- 'buckets' ,
166- 'telegrafs' ,
167- 'tokens' ,
168- 'history' ,
169- 'variables' ,
170- 'templates' ,
171- 'labels' ,
172- ] . forEach ( navItem => {
173- if ( navItem === 'history' ) {
174- cy . clickNavBarItem ( 'nav-item-alerting' )
175- } else if (
176- navItem === 'variables' ||
177- navItem === 'templates' ||
178- navItem === 'labels'
179- ) {
180- cy . clickNavBarItem ( 'nav-item-settings' )
181- } else {
182- cy . clickNavBarItem ( 'nav-item-load-data' )
183- }
179+ cy . isIoxOrg ( ) . then ( isIox => {
180+ cy . get ( '.cf-tree-nav--toggle' ) . click ( { force : true } )
181+
182+ const items = isIox
183+ ? [ 'sources' , 'buckets' , 'telegrafs' , 'tokens' , 'labels' , 'secrets' ]
184+ : [
185+ 'sources' ,
186+ 'buckets' ,
187+ 'telegrafs' ,
188+ 'tokens' ,
189+ 'labels' ,
190+ 'secrets' ,
191+ 'history' ,
192+ 'variables' ,
193+ 'templates' ,
194+ ]
195+
196+ items . forEach ( navItem => {
197+ if ( navItem === 'history' ) {
198+ cy . clickNavBarItem ( 'nav-item-alerting' )
199+ } else if (
200+ navItem === 'variables' ||
201+ navItem === 'templates' ||
202+ navItem === 'labels' ||
203+ navItem === 'secrets'
204+ ) {
205+ cy . clickNavBarItem ( 'nav-item-settings' )
206+ } else {
207+ cy . clickNavBarItem ( 'nav-item-load-data' )
208+ }
209+
210+ cy . getByTestID ( `nav-subitem-${ navItem } ` ) . last ( ) . click ( )
211+ cy . url ( ) . should ( 'contain' , navItem )
212+ } )
184213
185- cy . getByTestID ( `nav-subitem-${ navItem } ` ) . last ( ) . click ( )
186- cy . url ( ) . should ( 'contain' , navItem )
214+ cy . get ( '.cf-tree-nav--toggle' ) . click ( )
187215 } )
188-
189- cy . get ( '.cf-tree-nav--toggle' ) . click ( )
190216 } )
191217} )
0 commit comments