本文整理汇总了TypeScript中ember-qunit.setupApplicationTest函数的典型用法代码示例。如果您正苦于以下问题:TypeScript setupApplicationTest函数的具体用法?TypeScript setupApplicationTest怎么用?TypeScript setupApplicationTest使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了setupApplicationTest函数的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: module
module('Acceptance | Settings | Relays', function(hooks) {
setupApplicationTest(hooks);
clearLocalStorage(hooks);
setupRelayConnectionMocks(hooks);
let path = '/settings/permissions';
module('when not logged in', function(hooks) {
hooks.beforeEach(async function() {
await visit(path);
});
test('is redirected to setup', function(assert) {
assert.equal(currentURL(), '/setup/new');
});
});
module('when logged in', function(hooks) {
setupCurrentUser(hooks);
hooks.beforeEach(async function() {
await visit(path);
});
test('permissions are visible', function(assert) {
assert.ok(page.notifications.isVisible, 'notification status is visible');
});
});
});
示例2: module
module('Acceptance | search', function(hooks) {
setupApplicationTest(hooks);
test('Search does not through an error when typing', async function(assert) {
await appLogin();
await visit('/');
assert.equal(currentURL(), '/browse/datasets', 'We made it to the home page in one piece');
fillIn(searchBarSelector, 'Hello darkness my old friend');
assert.ok(true, 'Did not encounter an error when filling in search bar');
});
test('visiting /search and restoring facet selections', async function(assert) {
await appLogin();
await visit('/search?facets=(fabric%3AList(prod%2Ccorp))&keyword=car');
assert.equal(currentURL(), '/search?facets=(fabric%3AList(prod%2Ccorp))&keyword=car');
const { prod, corp, dev, ei } = getCheckboxes(this);
const searchBar = querySelector<HTMLInputElement>(this, searchBarSelector) || { value: '' };
assert.ok(prod.checked);
assert.ok(corp.checked);
assert.notOk(dev.checked);
assert.notOk(ei.checked);
assert.equal(searchBar.value, 'car');
await click(getCheckboxSelector('ei'));
assert.equal(currentURL(), '/search?facets=(fabric%3AList(prod%2Ccorp%2Cei))&keyword=car');
});
});
示例3: module
module('Acceptance | logging from container-managed objects', function(hooks) {
let log: SinonStub;
setupApplicationTest(hooks);
hooks.beforeEach(function(this: TestContext) {
this.owner.register('route:application', Route.extend({ debug: debugLogger() }), {});
this.owner.register('service:my/test/module', Service.extend({ debug: debugLogger() }), {});
debug.enable('route:*, service:*');
log = sinon.stub(console, 'log');
});
hooks.afterEach(function() {
log.restore();
debug.disable();
});
test('it automatically finds keys when attached to container-managed objects', async function(assert) {
await visit('/');
const appRoute = this.owner.lookup('route:application');
appRoute.debug('test message from the application route');
let [routeMessage] = log.lastCall.args;
assert.ok(/route:application/.test(routeMessage), 'Route message should include its container key');
const testService = this.owner.lookup('service:my/test/module');
testService.debug('test message from the mysterious service');
let [serviceMessage] = log.lastCall.args;
assert.ok(/service:my\/test\/module/.test(serviceMessage), 'Service message should include its container key');
});
});
示例4: module
module('TestHelper | create-current-user', function(hooks) {
setupApplicationTest(hooks);
clearLocalStorage(hooks);
test('a new user is created and kept in cache', async function(assert) {
const before = getStore().peekAll('user');
assert.equal(before.length, 0);
await createCurrentUser();
const after = getStore().peekAll('user');
assert.equal(after.length, 1);
assert.equal(after.toArray()[0].id, 'me');
});
test('a new user is created and stored', async function(assert) {
const before = await getStore().findAll('user');
assert.equal(before.length, 0);
await createCurrentUser();
const after = await getStore().findAll('user');
assert.equal(after.length, 1);
assert.equal(after.toArray()[0].id, 'me');
});
test('the user is set on the identity service', async function(assert) {
const before = getService<CurrentUserService>('currentUser').record;
assert.notOk(before);
const user = await createCurrentUser();
const after = getService<CurrentUserService>('currentUser').record;
assert.deepEqual(after, user);
});
module('user is setup in a beforeEach', function(hooks) {
setupCurrentUser(hooks);
test('the user is logged in', function(assert) {
const isLoggedIn = getService<CurrentUserService>('currentUser').isLoggedIn;
assert.ok(isLoggedIn);
});
test('identity exists', async function(assert) {
const exists = await getService<CurrentUserService>('currentUser').exists();
assert.ok(exists);
});
});
});
示例5: module
module('Acceptance | Notification Permission Prompt', function(hooks) {
setupApplicationTest(hooks);
setupRelayConnectionMocks(hooks);
clearLocalStorage(hooks);
setupWindowNotification(hooks);
setupCurrentUser(hooks);
module('permission has not yet been asked for', function(hooks) {
hooks.beforeEach(async function() {
window.Notification = {
permission: undefined,
};
await visit('/chat/privately-with/me');
});
test('the prompt is shown', function(assert) {
assert.equal(prompt.isVisible, true);
});
test('never ask again is clicked', async function(assert) {
assert.expect(2);
await prompt.askNever();
assert.equal(prompt.isVisible, false, 'prompt hides initially');
await refresh(() => stubConnection());
assert.equal(prompt.isVisible, false, 'still is not shown even after refresh');
});
module('ask later is clicked', function(hooks) {
hooks.beforeEach(async function() {
await prompt.askLater();
});
test('the prompt is not shown', function(assert) {
assert.equal(prompt.isVisible, false);
});
module('on refresh', function(hooks) {
hooks.beforeEach(async function() {
await refresh(() => stubConnection());
});
test('the prompt is shown', function(assert) {
assert.equal(prompt.isVisible, true);
});
});
});
module('enabled is clicked', function() {});
});
});
示例6: module
module('Acceptance | Logout', function(hooks) {
setupApplicationTest(hooks);
clearLocalStorage(hooks);
setupRelayConnectionMocks(hooks);
module('When not logged in', function(hooks) {
hooks.beforeEach(async function() {
stubService('currentUser', {
isLoggedIn: false,
load() {},
exists: () => false,
});
await visit('/logout');
});
test('redirects to setup', function(assert) {
assert.equal(currentURL(), '/setup/new');
assertExternal(assert as any);
});
});
module('When logged in', function(hooks) {
setupCurrentUser(hooks);
hooks.beforeEach(async function() {
await visit('/');
});
module('user dropdown is open', function(hooks) {
hooks.beforeEach(async function() {
await app.userDropdown.open();
});
test('shows the logout button', function(assert) {
assert.ok(app.userDropdown.logoutButton());
assertExternal(assert as any);
});
module('clicking logout', function(hooks) {
hooks.beforeEach(async function() {
await app.userDropdown.clickLogout();
});
test('navigates to the logout warning page', function(assert) {
assert.equal(currentURL(), '/logout');
assertExternal(assert as any);
});
});
});
});
});
示例7: module
module('Acceptance | Chat', function(hooks) {
setupApplicationTest(hooks);
clearLocalStorage(hooks);
setupRelayConnectionMocks(hooks);
module('when not logged in', function(hooks) {
hooks.beforeEach(async function() {
await visit('/chat');
});
test('is redirected to setup', function(assert) {
assert.equal(currentURL(), '/setup/new');
});
});
});
示例8: module
module('Acceptance | tracking', function(hooks) {
/**
* Local piwik event queue
*/
let paq: Array<Array<string>>;
/**
* Real piwik event queue stored to be restored at a later point
*/
let realPaq: Array<Array<string>>;
/**
* It will fetch from paq the event based on name
* @param name name of the event
*/
const getTrackingEvent = (name: string) => paq.find(([eventName]) => eventName === name) || [];
setupApplicationTest(hooks);
/**
* Will replace paq events queue with a local one to capture events happening
* only in the test, we want to reduce noise as much as possible
*/
hooks.beforeEach(() => {
paq = [];
realPaq = window && window._paq ? window._paq : [];
window._paq = paq;
});
/**
* Restore paq event queue after the test
*/
hooks.afterEach(() => {
window._paq = realPaq;
});
test('Search tracks correctly', async function(assert) {
const searchTerm = 'somerandomsearch';
const SEARCH_EVENT_NAME = 'trackSiteSearch';
await appLogin();
await visit(`/search?keyword=${searchTerm}`);
const [, keyword] = getTrackingEvent(SEARCH_EVENT_NAME);
assert.equal(keyword, searchTerm, 'Search should be tracked correctly');
});
});
示例9: module
module('Acceptance | Chat', function(hooks) {
setupApplicationTest(hooks);
clearLocalStorage(hooks);
setupRelayConnectionMocks(hooks);
setupCurrentUser(hooks);
module('Unread Messages', function(hooks) {
hooks.beforeEach(async function() {
// we can't receive unread messages from ourselves
// so start on that screen
await visit('/chat/privately-with/me');
});
// TODO: this indicator is a mobile only thing, so..
// maybe we need some sort of breakpoint testing?
test('when there are 0 messages', function(assert) {
assert.notOk(page.headerUnread.isPresent, 'indicator is rendered');
});
module('Has unread messages', function(hooks) {
hooks.beforeEach(async function() {
const store = getService<StoreService>('store');
const record = store.createRecord('message', {
target: 'whatever',
type: 'not ping',
body: 'a test message',
to: 'me',
readAt: null,
});
await record.save();
await waitFor(selectors.headerUnread);
});
test('1 message is unread', function(assert) {
assert.ok(page.headerUnread.isPresent, 'indicator is rendered');
assert.ok(
page.headerUnread.text.includes('1'),
`has one unread message. detected text: ${page.headerUnread.text}`
);
percySnapshot(assert as any);
});
});
});
});