@wdio/cli 8.0.2 → 8.0.5

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.
@@ -1 +1 @@
1
- {"version":3,"file":"repl.d.ts","sourceRoot":"","sources":["../../src/commands/repl.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAK1C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAOpD,eAAO,MAAM,OAAO,iCAAiC,CAAA;AACrD,eAAO,MAAM,IAAI,0CAA0C,CAAA;AAC3D,eAAO,MAAM,OAAO,EAAE;KAAG,CAAC,IAAI,MAAM,oBAAoB,CAAC,CAAC,EAAE,OAAO;CAgBzD,CAAA;AAEV,eAAO,MAAM,OAAO,UAAW,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAYlC,CAAA;AAED,eAAO,MAAM,OAAO,SAAgB,oBAAoB,kBAWvD,CAAA"}
1
+ {"version":3,"file":"repl.d.ts","sourceRoot":"","sources":["../../src/commands/repl.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAK1C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAA;AAOpD,eAAO,MAAM,OAAO,iCAAiC,CAAA;AACrD,eAAO,MAAM,IAAI,0CAA0C,CAAA;AAC3D,eAAO,MAAM,OAAO,EAAE;KAAG,CAAC,IAAI,MAAM,oBAAoB,CAAC,CAAC,EAAE,OAAO;CAgBzD,CAAA;AAEV,eAAO,MAAM,OAAO,UAAW,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAYlC,CAAA;AAED,eAAO,MAAM,OAAO,SAAgB,oBAAoB,kBAUvD,CAAA"}
@@ -44,7 +44,6 @@ export const handler = async (argv) => {
44
44
  const client = await remote({ ...argv, ...caps });
45
45
  global.$ = client.$.bind(client);
46
46
  global.$$ = client.$$.bind(client);
47
- // @ts-expect-error global browser is for some reason not detected
48
47
  global.browser = client;
49
48
  await client.debug();
50
49
  return client.deleteSession();
@@ -32,36 +32,64 @@ const importStatement = preset
32
32
  ? `import Component from '/path/to/component.${componentSuffix}'`
33
33
  : `import '/path/to/component.${componentSuffix}'`
34
34
  const renderStatement = (preset
35
- ? [
36
- preset.includes('react')
37
- ? 'render(<Component />)'
38
- : 'render(Component, { prop: \'foobar\' })',
39
- 'const component = screen.getByText(/Click me!/i)'
40
- ]
35
+ ? installTestingLibrary
36
+ ? [
37
+ preset.includes('react')
38
+ ? 'render(<Component />)'
39
+ : 'render(Component, { prop: \'foobar\' })',
40
+ 'const component = screen.getByText(/Click me!/i)'
41
+ ]
42
+ : preset === 'solid'
43
+ ? [
44
+ 'render(() => <Component />, ref)',
45
+ 'const component = \'.someSelector\''
46
+ ]
47
+ : [
48
+ '// render component here...',
49
+ 'const component = document.querySelector("my-component")'
50
+ ]
41
51
  : [
42
52
  `const component = document.createElement('example-component')`,
43
53
  `component.setAttribute('prop', 'foobar')`,
44
54
  `document.body.appendChild(component)`
45
55
  ]
46
56
  ).join('\n ')
47
- const assertionStatement = preset
48
- ? `expect(elem).toContainText('Click me!')`
57
+ const assertionStatement = preset && installTestingLibrary
58
+ ? `expect(component).toContainText('Click me!')`
49
59
  : `await expect(elem).toHaveText('Click me!')`
50
60
 
51
61
  /**
52
62
  * Component Testing
53
63
  */
54
64
  %>import { expect, $ } from '@wdio/globals'
55
- <%- preset && installTestingLibrary ? `import { render, screen } from '@testing-library/${preset}'` : '' %>
56
- <% if (installTestingLibrary) { %>
65
+ <%- installTestingLibrary
66
+ ? `import { render, screen } from '@testing-library/${preset}'`
67
+ : preset === 'solid'
68
+ ? 'import { render } from \'solid-js/web\'\n'
69
+ : ''
70
+ %><% if (installTestingLibrary) { %>
71
+
57
72
  import * as matchers from '@testing-library/jest-dom/matchers'
58
73
  expect.extend(matchers)
74
+ <% } else if (preset === 'preact') { %>
75
+ import {h} from 'preact'
59
76
  <% } %>
60
77
  // ToDo: fix me
61
78
  <%- importStatement %>
62
79
 
63
- describe('<%- (preset || 'my') %> component tests', () => {
64
- it('should do something cool', async () => {
80
+ describe('<%- (preset || 'my') %> component tests', () => {<%
81
+ if (preset === 'solid') { %>
82
+ const ref = document.createElement('div')
83
+
84
+ before(() => {
85
+ document.body.appendChild(ref);
86
+ })
87
+
88
+ after(() => {
89
+ document.body.removeChild(ref);
90
+ })
91
+ <% } %>
92
+ it('should test my component', async () => {
65
93
  <%- renderStatement %>
66
94
 
67
95
  const elem = await $(component)
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/build/utils.js CHANGED
@@ -324,11 +324,13 @@ export async function generateTestFiles(answers) {
324
324
  const files = (await Promise.all(testFiles.map((dirPath) => readDir(dirPath, [(file, stats) => !stats.isDirectory() && !(file.endsWith('.ejs') || file.endsWith('.feature'))])))).reduce((cur, acc) => [...acc, ...(cur)], []);
325
325
  for (const file of files) {
326
326
  const renderedTpl = await renderFile(file, answers);
327
+ const isJSX = answers.preset && ['preact', 'react'].includes(answers.preset);
328
+ const fileEnding = (answers.isUsingTypeScript ? '.ts' : '.js') + (isJSX ? 'x' : '');
327
329
  let destPath = (file.endsWith('page.js.ejs')
328
330
  ? `${answers.destPageObjectRootPath}/${path.basename(file)}`
329
331
  : file.includes('step_definition')
330
332
  ? `${answers.stepDefinitions}`
331
- : `${answers.destSpecRootPath}/${path.basename(file)}`).replace(/\.ejs$/, '').replace(/\.js$/, answers.isUsingTypeScript ? '.ts' : '.js');
333
+ : `${answers.destSpecRootPath}/${path.basename(file)}`).replace(/\.ejs$/, '').replace(/\.js$/, fileEnding);
332
334
  await fs.mkdir(path.dirname(destPath), { recursive: true });
333
335
  await fs.writeFile(destPath, renderedTpl);
334
336
  }
@@ -526,6 +528,12 @@ export function npmInstall(parsedAnswers, useYarn, npmTag) {
526
528
  if (parsedAnswers.installTestingLibrary && TESTING_LIBRARY_PACKAGES[presetPackage.short]) {
527
529
  parsedAnswers.packagesToInstall.push(TESTING_LIBRARY_PACKAGES[presetPackage.short], '@testing-library/jest-dom');
528
530
  }
531
+ /**
532
+ * add helper package for Solidjs testing
533
+ */
534
+ if (parsedAnswers.preset === 'solid') {
535
+ parsedAnswers.packagesToInstall.push('solid-js/web');
536
+ }
529
537
  /**
530
538
  * add packages that are required by services
531
539
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wdio/cli",
3
- "version": "8.0.2",
3
+ "version": "8.0.5",
4
4
  "description": "WebdriverIO testrunner command line interface",
5
5
  "author": "Christian Bromann <mail@bromann.dev>",
6
6
  "homepage": "https://github.com/webdriverio/webdriverio/tree/main/packages/wdio-cli",
@@ -41,7 +41,7 @@
41
41
  "@types/recursive-readdir": "^2.2.1",
42
42
  "@types/yargs": "^17.0.10",
43
43
  "@wdio/config": "8.0.2",
44
- "@wdio/globals": "8.0.2",
44
+ "@wdio/globals": "8.0.5",
45
45
  "@wdio/logger": "8.0.0",
46
46
  "@wdio/protocols": "8.0.0",
47
47
  "@wdio/types": "8.0.0",
@@ -59,7 +59,7 @@
59
59
  "mkdirp": "^1.0.4",
60
60
  "read-pkg-up": "9.1.0",
61
61
  "recursive-readdir": "^2.2.2",
62
- "webdriverio": "8.0.2",
62
+ "webdriverio": "8.0.5",
63
63
  "yargs": "^17.5.1",
64
64
  "yarn-install": "^1.0.0"
65
65
  },
@@ -69,5 +69,5 @@
69
69
  "devDependencies": {
70
70
  "@types/node": "^18.0.0"
71
71
  },
72
- "gitHead": "501a4b9056487cbcc994f610068e338e444cfe81"
72
+ "gitHead": "3c1364b37331acc9124d7f5378937252d069936b"
73
73
  }