Skip to content

Commit 0ba7663

Browse files
committed
Run smoke test in CI
1 parent bfe6fa2 commit 0ba7663

File tree

7 files changed

+42
-15
lines changed

7 files changed

+42
-15
lines changed

.github/workflows/ci.yml

Lines changed: 23 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,17 +12,19 @@ jobs:
1212
steps:
1313
- uses: actions/checkout@v4
1414
- uses: ./.github/actions/setup-environment
15-
- run: pnpm lint
15+
- name: Lint
16+
run: pnpm lint
1617

1718
test:
18-
name: "test (node: ${{matrix.node-version}}, os: ${{matrix.os}})"
19+
name: "Test (Node: ${{matrix.node-version}}, OS: ${{matrix.os}})"
1920
runs-on: ${{matrix.os}}
2021
steps:
2122
- uses: actions/checkout@v4
2223
- uses: ./.github/actions/setup-environment
2324
with:
2425
node-version: ${{matrix.node-version}}
25-
- run: pnpm test:coverage
26+
- name: Run tests with coverage
27+
run: pnpm test:coverage
2628
strategy:
2729
fail-fast: false
2830
matrix:
@@ -41,7 +43,21 @@ jobs:
4143
steps:
4244
- uses: actions/checkout@v4
4345
- uses: ./.github/actions/setup-environment
44-
- run: pnpm build
45-
- run: pnpm dlx ember-cli@latest new smoke-test-app -b @ember/app-blueprint --pnpm
46-
- run: node bin/gember.js component foo --cwd=smoke-test-app
47-
- run: cd smoke-test-app && pnpm test
46+
- name: Build gember
47+
run: pnpm build
48+
- name: Create test app
49+
run: pnpm dlx ember-cli@latest new test-app -b @ember/app-blueprint --pnpm --skip-git
50+
- name: Run generators in test-app
51+
run: |
52+
node bin/gember.js component foo --cwd=test-app
53+
node bin/gember.js component-test foo --cwd=test-app
54+
node bin/gember.js helper foo --cwd=test-app
55+
node bin/gember.js helper-test foo --cwd=test-app
56+
node bin/gember.js modifier foo --cwd=test-app
57+
node bin/gember.js modifier-test foo --cwd=test-app
58+
node bin/gember.js service foo --cwd=test-app
59+
node bin/gember.js service-test foo --cwd=test-app
60+
- name: Run tests in test app
61+
run: |
62+
cd test-app
63+
pnpm test

src/generator.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ 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, env } from "node:process";
7+
import { cwd as processCwd, env } from "node:process";
88
import { fileURLToPath } from "node:url";
99
import { resolveConfig, type Config } from "./config.js";
1010
import { FileReference } from "./file-reference.js";
@@ -119,7 +119,8 @@ export function defineGenerator({
119119
const templateCompiled = template({
120120
name: {
121121
...entityNameCases,
122-
pathMaybeQuoted: /(-|\/)/.test(entityNameCases.path)
122+
camelCurlyBrackets: `{{${entityNameCases.camel}}}`,
123+
pathMaybeQuotes: /(-|\/)/.test(entityNameCases.path)
123124
? `"${entityNameCases.path}"`
124125
: entityNameCases.path,
125126
signature: entityNameCases.pascal + "Signature",

templates/helper-test/helper-test.gjs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import { render } from '@ember/test-helpers';
22
import { module, test } from 'qunit';
3+
import {{name.camel}} from '{{package.name}}/helpers/{{name.path}}';
34
import { setupRenderingTest } from '{{testHelpersImportPath}}';
45

56
module('Integration | Helper | {{name.camel}}', function (hooks) {

templates/modifier-test/modifier-test.gjs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,13 @@
11
import { render } from '@ember/test-helpers';
22
import { module, test } from 'qunit';
3+
import {{name.camel}} from '{{package.name}}/modifiers/{{name.path}}';
34
import { setupRenderingTest } from '{{testHelpersImportPath}}';
45

56
module('Integration | Modifier | {{name.camel}}', function (hooks) {
67
setupRenderingTest(hooks);
78

89
test('it renders', async function (assert) {
9-
await render(<template><div \{{{{name.camel}}\}}></div></template>);
10+
await render(<template><div {{name.camelCurlyBrackets}}></div></template>);
1011

1112
assert.ok(true);
1213
});

templates/service/service.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,6 @@ export default class {{name.pascal}}Service extends Service {}
44

55
declare module "@ember/service" {
66
interface Registry {
7-
{{{name.pathMaybeQuoted}}}: {{name.pascal}}Service;
7+
{{{name.pathMaybeQuotes}}}: {{name.pascal}}Service;
88
}
99
}

test/__snapshots__/helper-test.test.ts.snap

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
exports[`generates a \`.gjs\` helper-test 1`] = `
44
"import { render } from '@ember/test-helpers';
55
import { module, test } from 'qunit';
6+
import foo from 'v2-addon/helpers/foo';
67
import { setupRenderingTest } from 'v2-addon/tests/helpers';
78
89
module('Integration | Helper | foo', function (hooks) {
@@ -22,6 +23,7 @@ module('Integration | Helper | foo', function (hooks) {
2223
exports[`generates a \`.gjs\` helper-test at a custom path 1`] = `
2324
"import { render } from '@ember/test-helpers';
2425
import { module, test } from 'qunit';
26+
import foo from 'v2-addon/helpers/foo';
2527
import { setupRenderingTest } from 'v2-addon/tests/helpers';
2628
2729
module('Integration | Helper | foo', function (hooks) {
@@ -41,6 +43,7 @@ module('Integration | Helper | foo', function (hooks) {
4143
exports[`generates a \`.gts\` helper-test 1`] = `
4244
"import { render } from '@ember/test-helpers';
4345
import { module, test } from 'qunit';
46+
import foo from 'v2-addon/helpers/foo';
4447
import { setupRenderingTest } from 'v2-addon/tests/helpers';
4548
4649
module('Integration | Helper | foo', function (hooks) {
@@ -60,6 +63,7 @@ module('Integration | Helper | foo', function (hooks) {
6063
exports[`generates a \`.gts\` helper-test at a custom path 1`] = `
6164
"import { render } from '@ember/test-helpers';
6265
import { module, test } from 'qunit';
66+
import foo from 'v2-addon/helpers/foo';
6367
import { setupRenderingTest } from 'v2-addon/tests/helpers';
6468
6569
module('Integration | Helper | foo', function (hooks) {

test/__snapshots__/modifier-test.test.ts.snap

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,14 @@
33
exports[`generates a \`.gjs\` modifier-test 1`] = `
44
"import { render } from '@ember/test-helpers';
55
import { module, test } from 'qunit';
6+
import foo from 'v2-addon/modifiers/foo';
67
import { setupRenderingTest } from 'v2-addon/tests/helpers';
78
89
module('Integration | Modifier | foo', function (hooks) {
910
setupRenderingTest(hooks);
1011
1112
test('it renders', async function (assert) {
12-
await render(<template><div {{foo\\}}></div></template>);
13+
await render(<template><div {{foo}}></div></template>);
1314
1415
assert.ok(true);
1516
});
@@ -20,13 +21,14 @@ module('Integration | Modifier | foo', function (hooks) {
2021
exports[`generates a \`.gjs\` modifier-test at a custom path 1`] = `
2122
"import { render } from '@ember/test-helpers';
2223
import { module, test } from 'qunit';
24+
import foo from 'v2-addon/modifiers/foo';
2325
import { setupRenderingTest } from 'v2-addon/tests/helpers';
2426
2527
module('Integration | Modifier | foo', function (hooks) {
2628
setupRenderingTest(hooks);
2729
2830
test('it renders', async function (assert) {
29-
await render(<template><div {{foo\\}}></div></template>);
31+
await render(<template><div {{foo}}></div></template>);
3032
3133
assert.ok(true);
3234
});
@@ -37,13 +39,14 @@ module('Integration | Modifier | foo', function (hooks) {
3739
exports[`generates a \`.gts\` modifier-test 1`] = `
3840
"import { render } from '@ember/test-helpers';
3941
import { module, test } from 'qunit';
42+
import foo from 'v2-addon/modifiers/foo';
4043
import { setupRenderingTest } from 'v2-addon/tests/helpers';
4144
4245
module('Integration | Modifier | foo', function (hooks) {
4346
setupRenderingTest(hooks);
4447
4548
test('it renders', async function (assert) {
46-
await render(<template><div {{foo\\}}></div></template>);
49+
await render(<template><div {{foo}}></div></template>);
4750
4851
assert.ok(true);
4952
});
@@ -54,13 +57,14 @@ module('Integration | Modifier | foo', function (hooks) {
5457
exports[`generates a \`.gts\` modifier-test at a custom path 1`] = `
5558
"import { render } from '@ember/test-helpers';
5659
import { module, test } from 'qunit';
60+
import foo from 'v2-addon/modifiers/foo';
5761
import { setupRenderingTest } from 'v2-addon/tests/helpers';
5862
5963
module('Integration | Modifier | foo', function (hooks) {
6064
setupRenderingTest(hooks);
6165
6266
test('it renders', async function (assert) {
63-
await render(<template><div {{foo\\}}></div></template>);
67+
await render(<template><div {{foo}}></div></template>);
6468
6569
assert.ok(true);
6670
});

0 commit comments

Comments
 (0)