discourse/test/javascripts/unit/lib/sharing-test.js
Robin Ward 445d6ba45f REFACTOR: Move qunit tests to a different directory structure
This structure is closer to how ember-cli expects tests to be placed. It
is not their final position, just the first step towards it.
2020-09-30 10:36:49 -04:00

71 lines
1.5 KiB
JavaScript

import Sharing from "discourse/lib/sharing";
QUnit.module("lib:sharing", {
beforeEach() {
Sharing._reset();
},
afterEach() {
Sharing._reset();
},
});
QUnit.test("addSource", (assert) => {
const sharingSettings = "facebook|twitter";
assert.blank(Sharing.activeSources(sharingSettings));
Sharing.addSource({
id: "facebook",
});
assert.equal(Sharing.activeSources(sharingSettings).length, 1);
});
QUnit.test("addSharingId", (assert) => {
const sharingSettings = "";
assert.blank(Sharing.activeSources(sharingSettings));
Sharing.addSource({
id: "new-source",
});
assert.blank(
Sharing.activeSources(sharingSettings),
"it doesn’t activate a source not in settings"
);
Sharing.addSharingId("new-source");
assert.equal(
Sharing.activeSources(sharingSettings).length,
1,
"it adds sharing id to existing sharing settings"
);
const privateContext = true;
Sharing.addSource({
id: "another-source",
});
Sharing.addSharingId("another-source");
assert.equal(
Sharing.activeSources(sharingSettings, privateContext).length,
0,
"it does not add a regular source to sources in a private context"
);
Sharing.addSource({
id: "a-private-friendly-source",
showInPrivateContext: true,
});
Sharing.addSharingId("a-private-friendly-source");
assert.equal(
Sharing.activeSources(sharingSettings, privateContext).length,
1,
"it does not add a regular source to sources in a private context"
);
});