-
Notifications
You must be signed in to change notification settings - Fork 20
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
Adding nested test failing testcase #63
base: master
Are you sure you want to change the base?
Adding nested test failing testcase #63
Conversation
714cb37
to
6dd5a91
Compare
Hmm. I'm not quite sure how best to fix this. We intentionally only run on expressions in the root of the program body (so that we don't accidentally convert |
Conceptually, could we not trace the lineage of the |
I don't think we can know for certain 🤔 Consider this: moduleForComponent('whatever', { integration: true });
// these should get transformed
test(...);
test(...);
export function generateTests() {
// how do we attribute these?
test(...);
test(...);
test(...);
} |
To be transformed // my-test-helper.js
export function generateTests() {
test(...);
test(...);
test(...);
} import { generateTests } from './my-test-helper';
moduleForComponent('whatever', { integration: true });
// these should get transformed
test(...);
test(...);
// I guess the original source would be transformed, and we hope that it's not used
// in another context too where we don't want it to be transformed?
generateTests(); Something like: If program body is test-module, within the given module context inspect top-level (or nested) function invocations and see if they contain/are tests. If they do, then transform? I'm not sure how much of this is possible / easy to do / etc, just shooting from the hip |
let subject = run(() => this.owner.lookup('service:store').createRecord('foo', { size: 'big' })); | ||
['big', 'small'].forEach(function (size) { | ||
test('has another thing', function (assert) { | ||
let subject = this.owner.factoryFor('component:foo-bar').create({ size }); |
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.
Should this be let subject = run(() => this.owner.lookup('service:store').createRecord('foo', { size }));
?
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.
sorry I keep moving the code snippet to the wrong place... the lines with similar names make it hard to grok where I am.
I'll move it again
No description provided.