2015-08-12 00:27:07 +08:00
|
|
|
import { present } from 'helpers/qunit-helpers';
|
2015-02-13 04:37:02 +08:00
|
|
|
module("model:topic-details");
|
|
|
|
|
|
|
|
import Topic from 'discourse/models/topic';
|
2013-06-21 05:20:08 +08:00
|
|
|
|
|
|
|
var buildDetails = function(id) {
|
2015-02-13 04:37:02 +08:00
|
|
|
var topic = Topic.create({id: id});
|
2013-06-21 05:20:08 +08:00
|
|
|
return topic.get('details');
|
|
|
|
};
|
|
|
|
|
|
|
|
test('defaults', function() {
|
|
|
|
var details = buildDetails(1234);
|
|
|
|
present(details, "the details are present by default");
|
|
|
|
ok(!details.get('loaded'), "details are not loaded by default");
|
|
|
|
});
|
|
|
|
|
|
|
|
test('updateFromJson', function() {
|
|
|
|
var details = buildDetails(1234);
|
|
|
|
|
|
|
|
details.updateFromJson({
|
|
|
|
suggested_topics: [{id: 1}, {id: 3}],
|
|
|
|
allowed_users: [{username: 'eviltrout'}]
|
|
|
|
});
|
|
|
|
|
|
|
|
equal(details.get('suggested_topics.length'), 2, 'it loaded the suggested_topics');
|
2015-02-13 04:37:02 +08:00
|
|
|
containsInstance(details.get('suggested_topics'), Topic);
|
2013-06-21 05:20:08 +08:00
|
|
|
|
|
|
|
equal(details.get('allowed_users.length'), 1, 'it loaded the allowed users');
|
|
|
|
containsInstance(details.get('allowed_users'), Discourse.User);
|
|
|
|
|
|
|
|
});
|