Skip to content

Removing jquery from tests #610

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

Merged
merged 3 commits into from
Apr 23, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 10 additions & 6 deletions tests/acceptance/head-test.js
Original file line number Diff line number Diff line change
@@ -1,35 +1,39 @@
import { visit } from '@ember/test-helpers';
import ENV from 'ember-api-docs/config/environment';
import $ from 'jquery';
import { module, test } from 'qunit';

import { setupApplicationTest } from 'ember-qunit';

module('Acceptance | head', function(hooks) {
setupApplicationTest(hooks);

hooks.beforeEach(function() {
this.head = document.querySelector('head')
});

test('no link rel=canonical for release url', async function(assert) {
await visit('/ember/release/classes/Application');
assert.notOk($('head link[rel=canonical]').attr('href'));
assert.dom('link[rel=canonical]', this.head).doesNotExist();
});

test('shows link rel=canonical for version url', async function(assert) {
await visit('/ember/2.16/classes/Application');
assert.ok($('head link[rel=canonical]').attr('href'));
assert.dom('link[rel=canonical]', this.head).hasAttribute('href');
});

test('no link rel=canonical when root url visited', async function(assert) {
await visit('/');
assert.notOk($('head link[rel=canonical]').attr('href'));
assert.dom('link[rel=canonical]', this.head).doesNotExist();

});

test('dns prefetch should be populated', async function(assert) {
await visit('/ember/release/classes/Application');
assert.equal($('head link[rel=dns-prefetch]').attr('href'), ENV.API_HOST);
assert.dom('link[rel=dns-prefetch]', this.head).hasAttribute('href', ENV.API_HOST);
});

test('dns prefetch should be populated when root url visited', async function(assert) {
await visit('/');
assert.equal($('head link[rel=dns-prefetch]').attr('href'), ENV.API_HOST);
assert.dom('link[rel=dns-prefetch]', this.head).hasAttribute('href', ENV.API_HOST);
});
});
5 changes: 2 additions & 3 deletions tests/acceptance/open-graph-tags-test.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import { visit } from '@ember/test-helpers';
import { module, test } from 'qunit';
import { setupApplicationTest } from 'ember-qunit';
import $ from 'jquery';

module('Acceptance | open graph tags', function(hooks) {
setupApplicationTest(hooks);
Expand All @@ -11,8 +10,8 @@ module('Acceptance | open graph tags', function(hooks) {
});

function findOpenGraphContent (propertyName) {
const el = $(`meta[property="og:${propertyName}"]`);
return el.attr('content');
const el = document.querySelector(`head meta[property="og:${propertyName}"]`);
return el.content;
}

test('assigns title property', function (assert) {
Expand Down
54 changes: 28 additions & 26 deletions tests/acceptance/scroll-reset-on-transition-test.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import { visit } from '@ember/test-helpers';
import $ from 'jquery';
import { module, test } from 'qunit';
import { setupApplicationTest } from 'ember-qunit';
import config from 'ember-api-docs/config/environment';
Expand All @@ -9,68 +8,71 @@ const { scrollContainerSelector } = config.APP;
module('Acceptance | scroll reset on transition', function(hooks) {
setupApplicationTest(hooks);

hooks.beforeEach(function() {
this.scrollSelector = document.querySelector(scrollContainerSelector);
});

test('reset scroll on transitions', async function(assert) {
await visit('/ember/2.15');

$(scrollContainerSelector).scrollTop(1000);
assert.notEqual($(scrollContainerSelector).scrollTop(), 0, 'scroll position is NOT zero after scroll on fresh visit');
this.scrollSelector.scrollTo(0, 1000)
assert.notEqual(this.scrollSelector.scrollY, 0, 'scroll position is NOT zero after scroll on fresh visit');

await visit('/ember/1.0/classes/Ember.View');

assert.equal($(scrollContainerSelector).scrollTop(), 0, 'scroll position is zero after transition to different route');
$(scrollContainerSelector).scrollTop(1000);
assert.equal(this.scrollSelector.scrollTop, 0, 'scroll position is zero after transition to different route');
this.scrollSelector.scrollTo(0, 1000);

await visit('/ember/1.0/classes/Ember.Component');

assert.equal($(scrollContainerSelector).scrollTop(), 0, 'scroll position is resetted after transition: project.version.class.index to project-version.class.index (same route different model)');
$(scrollContainerSelector).scrollTop(1000);
assert.equal(this.scrollSelector.scrollTop, 0, 'scroll position is resetted after transition: project.version.class.index to project-version.class.index (same route different model)');
this.scrollSelector.scrollTo(0, 1000);

await visit('ember/1.0/modules/ember');

assert.equal($(scrollContainerSelector).scrollTop(), 0, 'scroll position is resetted after transition: project-version.class.index to project-version.module.index');
$(scrollContainerSelector).scrollTop(1000);
assert.equal(this.scrollSelector.scrollTop, 0, 'scroll position is resetted after transition: project-version.class.index to project-version.module.index');
this.scrollSelector.scrollTo(0, 1000);

await visit('ember/1.0/modules/runtime');

assert.equal($(scrollContainerSelector).scrollTop(), 0, 'scroll position is resetted after transition: project-version.module.index to project-version.module.index (same route different model)');
$(scrollContainerSelector).scrollTop(1000);
assert.equal(this.scrollSelector.scrollTop, 0, 'scroll position is resetted after transition: project-version.module.index to project-version.module.index (same route different model)');
this.scrollSelector.scrollTo(0, 1000);

await visit('ember/1.0/namespaces/Ember');

assert.equal($(scrollContainerSelector).scrollTop(), 0, 'scroll position is resetted after transition: project-version.module.index to project-version.namespace.index');
$(scrollContainerSelector).scrollTop(1000);
assert.equal(this.scrollSelector.scrollTop, 0, 'scroll position is resetted after transition: project-version.module.index to project-version.namespace.index');
this.scrollSelector.scrollTo(0, 1000);

await visit('ember/1.0/namespaces/Ember.run');

assert.equal($(scrollContainerSelector).scrollTop(), 0, 'scroll position is resetted after transition: project-version.namespace.index to project-version.namespace.index (same route different model)');
$(scrollContainerSelector).scrollTop(1000);
assert.equal(this.scrollSelector.scrollTop, 0, 'scroll position is resetted after transition: project-version.namespace.index to project-version.namespace.index (same route different model)');
this.scrollSelector.scrollTo(0, 1000);

await visit('ember/1.0/classes/Ember.RenderBuffer/');

assert.equal($(scrollContainerSelector).scrollTop(), 0, 'scroll position is resetted after transition: project-version.namespace.index to project-version.class.index');
$(scrollContainerSelector).scrollTop(1000);
assert.equal(this.scrollSelector.scrollTop, 0, 'scroll position is resetted after transition: project-version.namespace.index to project-version.class.index');
this.scrollSelector.scrollTo(0, 1000);

await visit('ember/1.0/classes/Ember.RenderBuffer/properties');


assert.notEqual($(scrollContainerSelector).scrollTop(), 0, 'scroll position is NOT resetted after changing tab in project-version.class (properties)');
$(scrollContainerSelector).scrollTop(1000);
assert.notEqual(this.scrollSelector.scrollTop, 0, 'scroll position is NOT resetted after changing tab in project-version.class (properties)');
this.scrollSelector.scrollTo(0, 1000);

await visit('ember/1.0/classes/Ember.RenderBuffer/methods');

assert.notEqual($(scrollContainerSelector).scrollTop(), 0, 'scroll position is NOT resetted after changing tab in project-version.class (methods)');
$(scrollContainerSelector).scrollTop(1000);
assert.notEqual(this.scrollSelector.scrollTop, 0, 'scroll position is NOT resetted after changing tab in project-version.class (methods)');
this.scrollSelector.scrollTo(0, 1000);

await visit('ember/1.0/classes/Ember.Route/methods');

assert.equal($(scrollContainerSelector).scrollTop(), 0, 'scroll position is resetted after visiting route with same tab but different model');
assert.equal(this.scrollSelector.scrollTop, 0, 'scroll position is resetted after visiting route with same tab but different model');

await visit('/ember/2.16');
$(scrollContainerSelector).scrollTop(1000);
assert.notEqual($(scrollContainerSelector).scrollTop(), 0, 'scroll position is NOT zero after scroll on fresh visit');
this.scrollSelector.scrollTo(0, 1000);
assert.notEqual(this.scrollSelector.scrollTop, 0, 'scroll position is NOT zero after scroll on fresh visit');

await visit('/ember/2.15/classes/Ember.Error');

assert.equal($(scrollContainerSelector).scrollTop(), 0, 'scroll position is zero after transition to different route');
assert.equal(this.scrollSelector.scrollTop, 0, 'scroll position is zero after transition to different route');
});
});