diff --git a/app/assets/javascripts/discourse/tests/acceptance/user-card-test.js b/app/assets/javascripts/discourse/tests/acceptance/user-card-test.js index 7622010b312..2f1ff0c5342 100644 --- a/app/assets/javascripts/discourse/tests/acceptance/user-card-test.js +++ b/app/assets/javascripts/discourse/tests/acceptance/user-card-test.js @@ -1,5 +1,5 @@ import { getOwner } from "@ember/owner"; -import { click, visit } from "@ember/test-helpers"; +import { click, currentURL, visit } from "@ember/test-helpers"; import { test } from "qunit"; import userFixtures from "discourse/tests/fixtures/user-fixtures"; import { @@ -10,6 +10,23 @@ import { import { cloneJSON } from "discourse-common/lib/object"; import I18n from "discourse-i18n"; +acceptance("User Card", function (needs) { + needs.user(); + + test("opens and closes properly", async function (assert) { + await visit("/t/internationalization-localization/280"); + await click('a[data-user-card="charlie"]'); + + assert.dom(".user-card .card-content").exists(); + + await click(".card-huge-avatar"); + + assert.strictEqual(currentURL(), "/u/charlie/summary"); + assert.dom(".user-card").doesNotExist(); + assert.dom(".card-content").doesNotExist(); + }); +}); + acceptance("User Card - Show Local Time", function (needs) { needs.user(); needs.settings({ display_local_time_in_user_card: true }); diff --git a/app/assets/javascripts/float-kit/addon/lib/d-menu-instance.js b/app/assets/javascripts/float-kit/addon/lib/d-menu-instance.js index 81411276713..89261465fe7 100644 --- a/app/assets/javascripts/float-kit/addon/lib/d-menu-instance.js +++ b/app/assets/javascripts/float-kit/addon/lib/d-menu-instance.js @@ -112,6 +112,7 @@ export default class DMenuInstance extends FloatKitInstance { @action destroy() { + this.close(); this.tearDownListeners(); } } diff --git a/app/assets/javascripts/float-kit/addon/lib/d-tooltip-instance.js b/app/assets/javascripts/float-kit/addon/lib/d-tooltip-instance.js index c16e6079930..a1dd9836201 100644 --- a/app/assets/javascripts/float-kit/addon/lib/d-tooltip-instance.js +++ b/app/assets/javascripts/float-kit/addon/lib/d-tooltip-instance.js @@ -102,6 +102,7 @@ export default class DTooltipInstance extends FloatKitInstance { @action destroy() { + this.close(); this.tearDownListeners(); } }