-
-
Notifications
You must be signed in to change notification settings - Fork 4.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add some TS component blueprint tests #20771
base: main
Are you sure you want to change the base?
Conversation
importers: | ||
|
||
.: | ||
dependencies: | ||
'@babel/core': | ||
specifier: ^7.24.4 | ||
version: 7.24.4 | ||
version: 7.24.4(supports-color@8.1.1) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are a lot of lock changes, but I used the pnpm version that was listed in the package.json (8.10). I guess it's possible someone else used a different version in the past?
This comment was marked as resolved.
This comment was marked as resolved.
c992cd1
to
70fc841
Compare
70fc841
to
bdf2e75
Compare
f8d59f1
to
dff3a4f
Compare
This setup can verify that the .ts blueprints are working as expected.
This fixes an issue where `.ts.ts` or `.ts.hbs` would be generated if the user added the extension to the cli command: `ember g component foo.ts`
dff3a4f
to
f41d8ae
Compare
"test:blueprints:js": "EMBER_TYPESCRIPT_BLUEPRINTS=false pnpm test:blueprints:js-from-ts", | ||
"test:blueprints:js-from-ts": "mocha node-tests/blueprints/**/*-test.js", | ||
"test:blueprints:ts": "mocha node-tests/blueprints-ts/**/*-test.js", | ||
"test:blueprints": "npm-run-all test:blueprints:*", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can remove this one now since we no longer use it in CI, and I don't expect anyone to run all of them like this locally either.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you have a pr for the test-helpers as well?
@@ -231,7 +231,7 @@ module.exports = { | |||
|
|||
normalizeEntityName(entityName) { | |||
return normalizeEntityName( | |||
entityName.replace(/\.js$/, '') //Prevent generation of ".js.js" files | |||
entityName.replace(/\.(js|ts)$/, '') //Prevent generation of ".js.js" and ".ts.ts" files |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why does js.js happen?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When people add an extension when generating a component: ember g component-class foo.js
. I just noticed when copying one of the tests and adjusting it for .ts.
Other ts blueprints will have the same issue.
Sorry, It seems I'm a bit slow after a 2 week holiday 😅 I haven't created a PR yet no, I can open one if the patch in this PR seems ok. |
@NullVoxPopuli Is creating a PR in the helpers repo and getting that merged / released a blocker for this one, or can we merge with the patch? That repo doesn't seem to be maintained and it has no Github actions setup either. I don't really have the time to get that repo in a good state so PRs can be merged I'm afraid. Other than that I think I should split off the .ts.ts fix into a separate one (and fix it for all the .ts blueprints at the same time maybe?), and resolve the merge conflicts, but then this should be good to go. |
While looking into #20511 I noticed there weren't any tests for the
--typescript
version of the blueprints.This adds a some ts tests for the component blueprint. We can add tests for other blueprint in follow up PRs.
I included a pnpm patch for the
ember-cli/ember-cli-blueprint-test-helpers
package since it doesn't accept any extra cli arguments forember new
in its current state: ember-cli/ember-cli-blueprint-test-helpers#391This also fixes a bug where
ember g component foo.ts
would generate.ts.hbs
files since .ts wasn't normalized yet.An extra bonus is that CI now runs a bit faster since the blueprint tests run in parallel.
Partially solves: #20362