17
17
import { expect } from '@playwright/test' ;
18
18
import { config } from '@playwright/test-runner' ;
19
19
import { fixtures as httpFixtures } from './http.fixtures' ;
20
+ import { fixtures as platformFixtures , options as platformOptions } from './platform.fixtures' ;
20
21
import assert from 'assert' ;
21
22
import childProcess from 'child_process' ;
22
23
import fs from 'fs' ;
@@ -34,7 +35,6 @@ const mkdtempAsync = util.promisify(fs.mkdtemp);
34
35
const removeFolderAsync = util . promisify ( require ( 'rimraf' ) ) ;
35
36
36
37
type PlaywrightParameters = {
37
- platform : 'win32' | 'linux' | 'darwin'
38
38
browserName : string ;
39
39
} ;
40
40
@@ -49,9 +49,6 @@ type PlaywrightWorkerFixtures = {
49
49
isChromium : boolean ;
50
50
isFirefox : boolean ;
51
51
isWebKit : boolean ;
52
- isWindows : boolean ;
53
- isMac : boolean ;
54
- isLinux : boolean ;
55
52
expectedSSLError : string ;
56
53
} ;
57
54
@@ -65,7 +62,7 @@ type PlaywrightTestFixtures = {
65
62
launchPersistent : ( options ?: Parameters < BrowserType < Browser > [ 'launchPersistentContext' ] > [ 1 ] ) => Promise < { context : BrowserContext , page : Page } > ;
66
63
} ;
67
64
68
- const fixtures = httpFixtures
65
+ const fixtures = httpFixtures . union ( platformFixtures )
69
66
. declareParameters < PlaywrightParameters > ( )
70
67
. declareWorkerFixtures < PlaywrightWorkerFixtures > ( )
71
68
. declareTestFixtures < PlaywrightTestFixtures > ( ) ;
@@ -87,13 +84,11 @@ export const options = {
87
84
CHROMIUM : ( parameters : PlaywrightParameters ) => parameters . browserName === 'chromium' ,
88
85
FIREFOX : ( parameters : PlaywrightParameters ) => parameters . browserName === 'firefox' ,
89
86
WEBKIT : ( parameters : PlaywrightParameters ) => parameters . browserName === 'webkit' ,
90
- MAC : ( parameters : PlaywrightParameters ) => parameters . platform === 'darwin' ,
91
- LINUX : ( parameters : PlaywrightParameters ) => parameters . platform === 'linux' ,
92
- WIN : ( parameters : PlaywrightParameters ) => parameters . platform === 'win32' ,
93
87
HEADLESS : ! ! valueFromEnv ( 'HEADLESS' , true ) ,
94
88
WIRE : ! ! process . env . PWWIRE ,
95
89
SLOW_MO : valueFromEnv ( 'SLOW_MO' , 0 ) ,
96
90
TRACING : valueFromEnv ( 'TRACING' , false ) ,
91
+ ...platformOptions ,
97
92
} ;
98
93
99
94
const getExecutablePath = browserName => {
@@ -169,16 +164,10 @@ defineWorkerFixture('browserType', async ({playwright, browserName}, test) => {
169
164
170
165
defineParameter ( 'browserName' , 'Browser type name' , '' ) ;
171
166
172
- defineParameter ( 'platform' , 'Operating system' , process . platform as ( 'win32' | 'linux' | 'darwin' ) ) ;
173
-
174
167
generateParametrizedTests (
175
168
'browserName' ,
176
169
process . env . BROWSER ? [ process . env . BROWSER ] : [ 'chromium' , 'webkit' , 'firefox' ] ) ;
177
170
178
- generateParametrizedTests (
179
- 'platform' ,
180
- process . env . PWTESTREPORT ? [ 'win32' , 'darwin' , 'linux' ] : [ process . platform as ( 'win32' | 'linux' | 'darwin' ) ] ) ;
181
-
182
171
defineWorkerFixture ( 'isChromium' , async ( { browserName} , test ) => {
183
172
await test ( browserName === 'chromium' ) ;
184
173
} ) ;
@@ -191,18 +180,6 @@ defineWorkerFixture('isWebKit', async ({browserName}, test) => {
191
180
await test ( browserName === 'webkit' ) ;
192
181
} ) ;
193
182
194
- defineWorkerFixture ( 'isWindows' , async ( { platform} , test ) => {
195
- await test ( platform === 'win32' ) ;
196
- } ) ;
197
-
198
- defineWorkerFixture ( 'isMac' , async ( { platform} , test ) => {
199
- await test ( platform === 'darwin' ) ;
200
- } ) ;
201
-
202
- defineWorkerFixture ( 'isLinux' , async ( { platform} , test ) => {
203
- await test ( platform === 'linux' ) ;
204
- } ) ;
205
-
206
183
defineWorkerFixture ( 'browser' , async ( { browserType, defaultBrowserOptions} , test ) => {
207
184
const browser = await browserType . launch ( defaultBrowserOptions ) ;
208
185
await test ( browser ) ;
0 commit comments