From febc2c571faab00b1a540e59284837f2475e0c4f Mon Sep 17 00:00:00 2001 From: Sam Date: Wed, 31 May 2017 11:18:09 -0400 Subject: [PATCH] add a test for customize theme controller --- .../admin-customize-themes-test.js.es6 | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 test/javascripts/admin/controllers/admin-customize-themes-test.js.es6 diff --git a/test/javascripts/admin/controllers/admin-customize-themes-test.js.es6 b/test/javascripts/admin/controllers/admin-customize-themes-test.js.es6 new file mode 100644 index 0000000000..2c70b5b12f --- /dev/null +++ b/test/javascripts/admin/controllers/admin-customize-themes-test.js.es6 @@ -0,0 +1,32 @@ +import { mapRoutes } from 'discourse/mapping-router'; +import Theme from 'admin/models/theme'; + +moduleFor('controller:admin-customize-themes', { + setup() { + this.registry.register('router:main', mapRoutes()); + }, + needs: ['controller:adminUser'] +}); + +test("can list sorted themes", function() { + + 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] + } + }); + + + deepEqual(controller.get('sortedThemes').map(t=>t.get('name')), [ + defaultTheme, + userTheme, + strayTheme1, + strayTheme2 + ].map(t=>t.get('name')), "sorts themes correctly"); +});