import { mapRoutes } from 'discourse/mapping-router'; import Theme from 'admin/models/theme'; moduleFor('controller:admin-customize-themes', { beforeEach() { this.registry.register('router:main', mapRoutes()); }, needs: ['controller:adminUser'] }); QUnit.test("can list sorted themes", 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 controller = this.subject({ model: { content: [strayTheme2, strayTheme1, userTheme, defaultTheme] } }); assert.deepEqual(controller.get('sortedThemes').map(t=>t.get('name')), [ defaultTheme, userTheme, strayTheme1, strayTheme2 ].map(t=>t.get('name')), "sorts themes correctly"); });