Skip to content

Commit

Permalink
Merge pull request #221 from rwjblue/ensure-set-context
Browse files Browse the repository at this point in the history
Move `setContext` into `setupContext`.
  • Loading branch information
rwjblue authored Oct 16, 2017
2 parents 9262dd2 + 0d292c7 commit a700f19
Show file tree
Hide file tree
Showing 6 changed files with 25 additions and 18 deletions.
3 changes: 1 addition & 2 deletions addon-test-support/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,9 @@ export { default as TestModule } from './legacy-0-6-x/test-module';
export { default as TestModuleForAcceptance } from './legacy-0-6-x/test-module-for-acceptance';
export { default as TestModuleForComponent } from './legacy-0-6-x/test-module-for-component';
export { default as TestModuleForModel } from './legacy-0-6-x/test-module-for-model';
export { getContext, setContext, unsetContext } from './legacy-0-6-x/test-context';

export { setResolver } from './resolver';
export { default as setupContext } from './setup-context';
export { default as setupContext, getContext, setContext, unsetContext } from './setup-context';
export { default as teardownContext } from './teardown-context';
export { default as setupRenderingContext } from './setup-rendering-context';
export { default as teardownRenderingContext } from './teardown-rendering-context';
Expand Down
2 changes: 1 addition & 1 deletion addon-test-support/legacy-0-6-x/abstract-test-module.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { Promise as EmberPromise, resolve } from 'rsvp';
import { assign, merge as emberMerge } from '@ember/polyfills';
import { _setupPromiseListeners, _teardownPromiseListeners } from '../ext/rsvp';
import { _setupAJAXHooks, _teardownAJAXHooks } from '../wait';
import { getContext, setContext, unsetContext } from './test-context';
import { getContext, setContext, unsetContext } from '../setup-context';

import Ember from 'ember';

Expand Down
13 changes: 0 additions & 13 deletions addon-test-support/legacy-0-6-x/test-context.js

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { run } from '@ember/runloop';
import AbstractTestModule from './abstract-test-module';
import { getContext } from './test-context';
import { getContext } from '../setup-context';

export default class extends AbstractTestModule {
setupContext() {
Expand Down
17 changes: 17 additions & 0 deletions addon-test-support/setup-context.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,32 @@ import buildOwner from './build-owner';
import { _setupPromiseListeners } from './ext/rsvp';
import { _setupAJAXHooks } from './wait';

let __test_context__;

export function setContext(context) {
__test_context__ = context;
}

export function getContext() {
return __test_context__;
}

export function unsetContext() {
__test_context__ = undefined;
}

/*
* Responsible for:
*
* - sets the "global testing context" to the provided context
* - create an owner object and set it on the provided context (e.g. this.owner)
* - setup this.set, this.setProperties, this.get, and this.getProperties to the provided context
* - setting up AJAX listeners
* - setting up RSVP promise integration
*/
export default function(context, options = {}) {
setContext(context);

let resolver = options.resolver;
let owner = buildOwner(resolver);

Expand Down
6 changes: 5 additions & 1 deletion tests/unit/setup-context-test.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { module, test } from 'qunit';
import Service from '@ember/service';
import { setupContext } from 'ember-test-helpers';
import { setupContext, getContext } from 'ember-test-helpers';
import hasEmberVersion from 'ember-test-helpers/has-ember-version';
import { setResolverRegistry, createCustomResolver } from '../helpers/resolver';

Expand Down Expand Up @@ -75,6 +75,10 @@ module('setupContext', function(hooks) {
'getProperties reads content from context'
);
});

test('it calls setContext with the provided context', function(assert) {
assert.equal(getContext(), context);
});
});

module('with custom options', function() {
Expand Down

0 comments on commit a700f19

Please sign in to comment.