@@ -14,7 +14,7 @@ test.describe("without being signed in", () => {
14
14
await API . getAccount ( page , "NOT_SIGNED_IN" ) ;
15
15
} ) ;
16
16
17
- test ( "can view public project" , async ( { page } ) => {
17
+ test ( "can view public project" , async ( { page, isMobile } ) => {
18
18
await API . getProject ( page , "@unison/base" ) ;
19
19
20
20
const response = await page . goto ( "http://localhost:1234/@unison/base" ) ;
@@ -25,13 +25,17 @@ test.describe("without being signed in", () => {
25
25
26
26
await expect ( button ( page , "Browse Project Code" ) ) . toBeVisible ( ) ;
27
27
await expect ( button ( page , "Edit summary" ) ) . not . toBeVisible ( ) ;
28
- await expect ( navItem ( page , "Code" ) ) . toBeVisible ( ) ;
29
- await expect ( navItem ( page , "Tickets" ) ) . toBeVisible ( ) ;
30
- await expect ( navItem ( page , "Contributions" ) ) . toBeVisible ( ) ;
31
- await expect ( navItem ( page , "Settings" ) ) . not . toBeVisible ( ) ;
28
+
29
+ // Nav is hidden on mobile
30
+ if ( ! isMobile ) {
31
+ await expect ( navItem ( page , "Code" ) ) . toBeVisible ( ) ;
32
+ await expect ( navItem ( page , "Tickets" ) ) . toBeVisible ( ) ;
33
+ await expect ( navItem ( page , "Contributions" ) ) . toBeVisible ( ) ;
34
+ await expect ( navItem ( page , "Settings" ) ) . not . toBeVisible ( ) ;
35
+ }
32
36
} ) ;
33
37
34
- test ( "can *not* view a private project`" , async ( { page } ) => {
38
+ test ( "can *not* view a private project`" , async ( { page, isMobile } ) => {
35
39
await API . getProject_ ( page , "@bob/private-project" , { status : 404 } ) ;
36
40
37
41
const response = await page . goto (
@@ -43,10 +47,14 @@ test.describe("without being signed in", () => {
43
47
await expect (
44
48
page . getByText ( "Couldn't find @bob/private-project" ) ,
45
49
) . toBeVisible ( ) ;
46
- await expect ( navItem ( page , "Code" ) ) . not . toBeVisible ( ) ;
47
- await expect ( navItem ( page , "Tickets" ) ) . not . toBeVisible ( ) ;
48
- await expect ( navItem ( page , "Contributions" ) ) . not . toBeVisible ( ) ;
49
- await expect ( navItem ( page , "Settings" ) ) . not . toBeVisible ( ) ;
50
+
51
+ // Nav is hidden on mobile
52
+ if ( ! isMobile ) {
53
+ await expect ( navItem ( page , "Code" ) ) . not . toBeVisible ( ) ;
54
+ await expect ( navItem ( page , "Tickets" ) ) . not . toBeVisible ( ) ;
55
+ await expect ( navItem ( page , "Contributions" ) ) . not . toBeVisible ( ) ;
56
+ await expect ( navItem ( page , "Settings" ) ) . not . toBeVisible ( ) ;
57
+ }
50
58
} ) ;
51
59
} ) ;
52
60
@@ -60,6 +68,7 @@ test.describe("while signed in", () => {
60
68
test . describe ( "with an another user's private project and `project:view` permission" , ( ) => {
61
69
test ( "can view, but *not* edit summary or see settings" , async ( {
62
70
page,
71
+ isMobile,
63
72
} ) => {
64
73
await API . getProject ( page , "@bob/private-project" , {
65
74
visibility : "private" ,
@@ -71,17 +80,21 @@ test.describe("while signed in", () => {
71
80
) ;
72
81
expect ( response ?. status ( ) ) . toBeLessThan ( 400 ) ;
73
82
74
- await expect ( button ( page , "Edit summary" ) ) . not . toBeVisible ( ) ;
75
- await expect ( navItem ( page , "Code" ) ) . toBeVisible ( ) ;
76
- await expect ( navItem ( page , "Tickets" ) ) . toBeVisible ( ) ;
77
- await expect ( navItem ( page , "Contributions" ) ) . toBeVisible ( ) ;
78
- await expect ( navItem ( page , "Settings" ) ) . not . toBeVisible ( ) ;
83
+ // Nav is hidden on mobile
84
+ if ( ! isMobile ) {
85
+ await expect ( button ( page , "Edit summary" ) ) . not . toBeVisible ( ) ;
86
+ await expect ( navItem ( page , "Code" ) ) . toBeVisible ( ) ;
87
+ await expect ( navItem ( page , "Tickets" ) ) . toBeVisible ( ) ;
88
+ await expect ( navItem ( page , "Contributions" ) ) . toBeVisible ( ) ;
89
+ await expect ( navItem ( page , "Settings" ) ) . not . toBeVisible ( ) ;
90
+ }
79
91
} ) ;
80
92
} ) ;
81
93
82
94
test . describe ( "with an another user's private project and `project:maintain` permission" , ( ) => {
83
95
test ( "can view and edit summary, but not see settings" , async ( {
84
96
page,
97
+ isMobile,
85
98
} ) => {
86
99
await API . getProject ( page , "@bob/private-project" , {
87
100
visibility : "private" ,
@@ -93,18 +106,21 @@ test.describe("while signed in", () => {
93
106
) ;
94
107
expect ( response ?. status ( ) ) . toBeLessThan ( 400 ) ;
95
108
96
- // await expect(button(page, "Browse Project Code")).toBeVisible();
97
- await expect ( button ( page , "Edit summary" ) ) . toBeVisible ( ) ;
98
- await expect ( navItem ( page , "Code" ) ) . toBeVisible ( ) ;
99
- await expect ( navItem ( page , "Tickets" ) ) . toBeVisible ( ) ;
100
- await expect ( navItem ( page , "Contributions" ) ) . toBeVisible ( ) ;
101
- await expect ( navItem ( page , "Settings" ) ) . not . toBeVisible ( ) ;
109
+ // Nav is hidden on mobile
110
+ if ( ! isMobile ) {
111
+ await expect ( button ( page , "Edit summary" ) ) . toBeVisible ( ) ;
112
+ await expect ( navItem ( page , "Code" ) ) . toBeVisible ( ) ;
113
+ await expect ( navItem ( page , "Tickets" ) ) . toBeVisible ( ) ;
114
+ await expect ( navItem ( page , "Contributions" ) ) . toBeVisible ( ) ;
115
+ await expect ( navItem ( page , "Settings" ) ) . not . toBeVisible ( ) ;
116
+ }
102
117
} ) ;
103
118
} ) ;
104
119
105
120
test . describe ( "with an another user's private project and `project:manage` permission" , ( ) => {
106
121
test ( "can view and edit summary, but not see settings" , async ( {
107
122
page,
123
+ isMobile,
108
124
} ) => {
109
125
await API . getProject ( page , "@bob/private-project" , {
110
126
visibility : "private" ,
@@ -116,12 +132,14 @@ test.describe("while signed in", () => {
116
132
) ;
117
133
expect ( response ?. status ( ) ) . toBeLessThan ( 400 ) ;
118
134
119
- // await expect(button(page, "Browse Project Code")).toBeVisible();
120
- await expect ( button ( page , "Edit summary" ) ) . toBeVisible ( ) ;
121
- await expect ( navItem ( page , "Code" ) ) . toBeVisible ( ) ;
122
- await expect ( navItem ( page , "Tickets" ) ) . toBeVisible ( ) ;
123
- await expect ( navItem ( page , "Contributions" ) ) . toBeVisible ( ) ;
124
- await expect ( navItem ( page , "Settings" ) ) . toBeVisible ( ) ;
135
+ // Nav is hidden on mobile
136
+ if ( ! isMobile ) {
137
+ await expect ( button ( page , "Edit summary" ) ) . toBeVisible ( ) ;
138
+ await expect ( navItem ( page , "Code" ) ) . toBeVisible ( ) ;
139
+ await expect ( navItem ( page , "Tickets" ) ) . toBeVisible ( ) ;
140
+ await expect ( navItem ( page , "Contributions" ) ) . toBeVisible ( ) ;
141
+ await expect ( navItem ( page , "Settings" ) ) . toBeVisible ( ) ;
142
+ }
125
143
} ) ;
126
144
} ) ;
127
145
} ) ;
0 commit comments