UX: Move likes into drop down instead of its own status line

This commit is contained in:
Robin Ward
2015-07-03 14:57:07 -04:00
parent 5cb8f3bce5
commit db75774440
20 changed files with 306 additions and 238 deletions

View File

@@ -1,3 +1,5 @@
import createStore from 'helpers/create-store';
var buildPost = function(args) {
return Discourse.Post.create(_.merge({
id: 1,
@@ -18,14 +20,21 @@ moduleFor("controller:flag", "controller:flag", {
});
test("canDeleteSpammer not staff", function(){
const store = createStore();
var flagController = this.subject({ model: buildPost() });
sandbox.stub(Discourse.User, 'currentProp').withArgs('staff').returns(false);
flagController.set('selected', Discourse.PostActionType.create({name_key: 'spam'}));
const spamFlag = store.createRecord('post-action-type', {name_key: 'spam'});
flagController.set('selected', spamFlag);
equal(flagController.get('canDeleteSpammer'), false, 'false if current user is not staff');
});
var canDeleteSpammer = function(flagController, postActionType, expected, testName) {
flagController.set('selected', Discourse.PostActionType.create({name_key: postActionType}));
const store = createStore();
const flag = store.createRecord('post-action-type', {name_key: postActionType});
flagController.set('selected', flag);
equal(flagController.get('canDeleteSpammer'), expected, testName);
};

View File

@@ -81,15 +81,19 @@ var origDebounce = Ember.run.debounce,
flushMap = require('discourse/models/store', null, null, false).flushMap,
server;
function dup(obj) {
return jQuery.extend(true, {}, obj);
}
QUnit.testStart(function(ctx) {
server = createPretendServer();
// Allow our tests to change site settings and have them reset before the next test
Discourse.SiteSettings = jQuery.extend(true, {}, Discourse.SiteSettingsOriginal);
Discourse.SiteSettings = dup(Discourse.SiteSettingsOriginal);
Discourse.BaseUri = "/";
Discourse.BaseUrl = "localhost";
Discourse.User.resetCurrent();
Discourse.Site.resetCurrent(Discourse.Site.create(fixtures['site.json'].site));
Discourse.Site.resetCurrent(Discourse.Site.create(dup(fixtures['site.json'].site)));
Discourse.URL.redirectedTo = null;
Discourse.URL.redirectTo = function(url) {