Skip to content

Commit a803ad1

Browse files
authored
Merge pull request #62 from bertdeblock/fix-test-helpers-import-path
Fix test helpers import path
2 parents 74573f0 + a4b8d38 commit a803ad1

File tree

13 files changed

+56
-14
lines changed

13 files changed

+56
-14
lines changed

src/generator.ts

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import { camelCase, pascalCase, pathCase } from "change-case";
22
import consola from "consola";
3-
import { ensureDir, readJson } from "fs-extra/esm";
3+
import { ensureDir, pathExists, readJson } from "fs-extra/esm";
44
import Handlebars from "handlebars";
55
import { readFile, writeFile } from "node:fs/promises";
66
import { dirname, join, relative } from "node:path";
7-
import { cwd, stdout } from "node:process";
7+
import { cwd } from "node:process";
88
import { fileURLToPath } from "node:url";
99
import { resolveConfig, type Config } from "./config.js";
1010
import { FileReference } from "./file-reference.js";
@@ -117,10 +117,17 @@ export function defineGenerator({
117117
signature: entityNameCases.pascal + "Signature",
118118
},
119119
package: packageJson,
120+
testHelpersImportPath:
121+
(await pathExists(join(packagePath, "tests", "helpers.js"))) ||
122+
(await pathExists(join(packagePath, "tests", "helpers.ts")))
123+
? `${packageJson.name}/tests/helpers`
124+
: "ember-qunit",
120125
});
121126

122127
if (resolvedArgs.log) {
123-
const border = "─".repeat(stdout.columns ? stdout.columns / 2 : 120);
128+
const border = "─".repeat(
129+
Math.max(...templateCompiled.split("\n").map((line) => line.length)),
130+
);
124131

125132
consola.log(border);
126133
consola.log("");

templates/component-test/component-test.gjs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { render } from '@ember/test-helpers';
22
import { module, test } from 'qunit';
33
import {{name.pascal}} from '{{package.name}}/components/{{name.path}}';
4-
import { setupRenderingTest } from '{{package.name}}/tests/helpers';
4+
import { setupRenderingTest } from '{{testHelpersImportPath}}';
55

66
module('Integration | Component | {{name.pascal}}', function (hooks) {
77
setupRenderingTest(hooks);

templates/component-test/component-test.gts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { render } from '@ember/test-helpers';
22
import { module, test } from 'qunit';
33
import {{name.pascal}} from '{{package.name}}/components/{{name.path}}';
4-
import { setupRenderingTest } from '{{package.name}}/tests/helpers';
4+
import { setupRenderingTest } from '{{testHelpersImportPath}}';
55

66
module('Integration | Component | {{name.pascal}}', function (hooks) {
77
setupRenderingTest(hooks);

templates/helper-test/helper-test.gjs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { render } from '@ember/test-helpers';
22
import { module, test } from 'qunit';
3-
import { setupRenderingTest } from '{{package.name}}/tests/helpers';
3+
import { setupRenderingTest } from '{{testHelpersImportPath}}';
44

55
module('Integration | Helper | {{name.camel}}', function (hooks) {
66
setupRenderingTest(hooks);

templates/helper-test/helper-test.gts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { render } from '@ember/test-helpers';
22
import { module, test } from 'qunit';
3-
import { setupRenderingTest } from '{{package.name}}/tests/helpers';
3+
import { setupRenderingTest } from '{{testHelpersImportPath}}';
44

55
module('Integration | Helper | {{name.camel}}', function (hooks) {
66
setupRenderingTest(hooks);

templates/modifier-test/modifier-test.gjs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { render } from '@ember/test-helpers';
22
import { module, test } from 'qunit';
3-
import { setupRenderingTest } from '{{package.name}}/tests/helpers';
3+
import { setupRenderingTest } from '{{testHelpersImportPath}}';
44

55
module('Integration | Modifier | {{name.camel}}', function (hooks) {
66
setupRenderingTest(hooks);

templates/modifier-test/modifier-test.gts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { render } from '@ember/test-helpers';
22
import { module, test } from 'qunit';
3-
import { setupRenderingTest } from '{{package.name}}/tests/helpers';
3+
import { setupRenderingTest } from '{{testHelpersImportPath}}';
44

55
module('Integration | Modifier | {{name.camel}}', function (hooks) {
66
setupRenderingTest(hooks);

templates/service-test/service-test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { module, test } from 'qunit';
2-
import { setupTest } from '{{package.name}}/tests/helpers';
2+
import { setupTest } from '{{testHelpersImportPath}}';
33

44
module('Unit | Service | {{name.pascal}}', function (hooks) {
55
setupTest(hooks);

templates/service-test/service-test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { module, test } from 'qunit';
2-
import { setupTest } from '{{package.name}}/tests/helpers';
2+
import { setupTest } from '{{testHelpersImportPath}}';
33

44
module('Unit | Service | {{name.pascal}}', function (hooks) {
55
setupTest(hooks);

test/__snapshots__/support.test.ts.snap

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,34 @@ exports[`supports v2 addons 1`] = `
1515
"
1616
`;
1717

18+
exports[`supports v2 addons 2`] = `
19+
"import { render } from '@ember/test-helpers';
20+
import { module, test } from 'qunit';
21+
import Foo from 'v2-addon/components/foo';
22+
import { setupRenderingTest } from 'ember-qunit';
23+
24+
module('Integration | Component | Foo', function (hooks) {
25+
setupRenderingTest(hooks);
26+
27+
test('it renders', async function (assert) {
28+
await render(<template><Foo /></template>);
29+
30+
assert.dom().hasText('');
31+
32+
await render(
33+
<template>
34+
<Foo>
35+
template block text
36+
</Foo>
37+
</template>
38+
);
39+
40+
assert.dom().hasText('template block text');
41+
});
42+
});
43+
"
44+
`;
45+
1846
exports[`supports v2 apps 1`] = `
1947
"<template>{{yield}}</template>
2048
"

0 commit comments

Comments
 (0)