Skip to content

Commit 18fc8fd

Browse files
Dave Connisbegedin
authored andcommitted
Add slugged-route-model-details page object (#1600)
1 parent d69933d commit 18fc8fd

File tree

2 files changed

+31
-9
lines changed

2 files changed

+31
-9
lines changed
Lines changed: 22 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,41 @@
11
import { moduleForComponent, test } from 'ember-qunit';
22
import hbs from 'htmlbars-inline-precompile';
33
import { mockRouter } from 'code-corps-ember/tests/helpers/mock-routing';
4+
import PageObject from 'ember-cli-page-object';
5+
import component from 'code-corps-ember/tests/pages/components/slugged-route-model-details';
6+
7+
let page = PageObject.create(component);
8+
9+
function renderPage() {
10+
page.render(hbs`
11+
{{slugged-route-model-details
12+
sluggedRoute=sluggedRoute
13+
organization=sluggedRoute.organization
14+
user=sluggedRoute.user
15+
}}`
16+
);
17+
}
418

519
moduleForComponent('slugged-route-model-details', 'Integration | Component | slugged route model details', {
620
integration: true,
721
beforeEach() {
22+
page.setContext(this);
823
mockRouter(this);
24+
},
25+
afterEach() {
26+
page.removeContext();
927
}
1028
});
1129

12-
test('it renders', function(assert) {
13-
this.render(hbs`{{slugged-route-model-details}}`);
14-
assert.equal(this.$('.slugged-route-model-details').length, 1);
15-
});
16-
1730
test('when the slugged route is an organization, it renders the organization component', function(assert) {
1831
assert.expect(1);
1932

2033
let sluggedRoute = { organization: {} };
2134

2235
this.set('sluggedRoute', sluggedRoute);
23-
this.render(hbs`{{slugged-route-model-details sluggedRoute=sluggedRoute}}`);
36+
renderPage();
2437

25-
assert.equal(this.$('.organization-profile').length, 1);
38+
assert.ok(page.organizationProfile.isVisible, 'organization component is rendered.');
2639
});
2740

2841
test('when the slugged route is a user, it renders the user component', function(assert) {
@@ -31,7 +44,7 @@ test('when the slugged route is a user, it renders the user component', function
3144
let sluggedRoute = { user: {} };
3245

3346
this.set('sluggedRoute', sluggedRoute);
34-
this.render(hbs`{{slugged-route-model-details sluggedRoute=sluggedRoute}}`);
47+
renderPage();
3548

36-
assert.equal(this.$('.user-details').length, 1);
49+
assert.ok(page.userDetails.isVisible, 'the user component is rendered.');
3750
});
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import organizationProfile from 'code-corps-ember/tests/pages/components/organization-profile';
2+
import userDetails from 'code-corps-ember/tests/pages/components/user-details';
3+
4+
export default {
5+
scope: '.slugged-route-model-details',
6+
7+
organizationProfile,
8+
userDetails
9+
};

0 commit comments

Comments
 (0)