github.com/anth0d/nomad@v0.0.0-20221214183521-ae3a0a2cad06/ui/tests/integration/components/page-layout-test.js (about) 1 import { module, test } from 'qunit'; 2 import { setupRenderingTest } from 'ember-qunit'; 3 import { find, click, render } from '@ember/test-helpers'; 4 import hbs from 'htmlbars-inline-precompile'; 5 import { startMirage } from 'nomad-ui/initializers/ember-cli-mirage'; 6 import { componentA11yAudit } from 'nomad-ui/tests/helpers/a11y-audit'; 7 8 module('Integration | Component | page layout', function (hooks) { 9 setupRenderingTest(hooks); 10 11 hooks.beforeEach(function () { 12 this.server = startMirage(); 13 }); 14 15 hooks.afterEach(function () { 16 this.server.shutdown(); 17 }); 18 19 test('the global-header hamburger menu opens the gutter menu', async function (assert) { 20 assert.expect(3); 21 22 await render(hbs`<PageLayout />`); 23 24 assert.notOk( 25 find('[data-test-gutter-menu]').classList.contains('is-open'), 26 'Gutter menu is not open' 27 ); 28 await click('[data-test-header-gutter-toggle]'); 29 30 assert.ok( 31 find('[data-test-gutter-menu]').classList.contains('is-open'), 32 'Gutter menu is open' 33 ); 34 await componentA11yAudit(this.element, assert); 35 }); 36 37 test('the gutter-menu hamburger menu closes the gutter menu', async function (assert) { 38 await render(hbs`<PageLayout />`); 39 40 await click('[data-test-header-gutter-toggle]'); 41 42 assert.ok( 43 find('[data-test-gutter-menu]').classList.contains('is-open'), 44 'Gutter menu is open' 45 ); 46 await click('[data-test-gutter-gutter-toggle]'); 47 48 assert.notOk( 49 find('[data-test-gutter-menu]').classList.contains('is-open'), 50 'Gutter menu is not open' 51 ); 52 }); 53 54 test('the gutter-menu backdrop closes the gutter menu', async function (assert) { 55 await render(hbs`<PageLayout />`); 56 57 await click('[data-test-header-gutter-toggle]'); 58 59 assert.ok( 60 find('[data-test-gutter-menu]').classList.contains('is-open'), 61 'Gutter menu is open' 62 ); 63 await click('[data-test-gutter-backdrop]'); 64 65 assert.notOk( 66 find('[data-test-gutter-menu]').classList.contains('is-open'), 67 'Gutter menu is not open' 68 ); 69 }); 70 });