discourse/test/javascripts/admin/unit/controllers/admin-customize-themes-test.js

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

44 lines
1.2 KiB
JavaScript
Raw Normal View History

import { mapRoutes } from "discourse/mapping-router";
import Theme from "admin/models/theme";
moduleFor("controller:admin-customize-themes", {
2017-06-14 13:57:58 -04:00
beforeEach() {
this.registry.register("router:main", mapRoutes());
},
needs: ["controller:adminUser"],
});
QUnit.test("can list themes correctly", function (assert) {
const defaultTheme = Theme.create({ id: 2, default: true, name: "default" });
const userTheme = Theme.create({
id: 3,
user_selectable: true,
name: "name",
});
const strayTheme1 = Theme.create({ id: 4, name: "stray1" });
const strayTheme2 = Theme.create({ id: 5, name: "stray2" });
const componentTheme = Theme.create({
id: 6,
name: "component",
component: true,
});
const controller = this.subject({
model: [strayTheme2, strayTheme1, userTheme, defaultTheme, componentTheme],
});
2017-06-14 13:57:58 -04:00
assert.deepEqual(
controller.get("fullThemes").map((t) => t.get("name")),
2018-08-30 22:23:15 +03:00
[strayTheme2, strayTheme1, userTheme, defaultTheme].map((t) =>
t.get("name")
),
"returns a list of themes without components"
);
assert.deepEqual(
controller.get("childThemes").map((t) => t.get("name")),
[componentTheme].map((t) => t.get("name")),
"separate components from themes"
);
});