DEV: apply coding standards (#90)
This commit is contained in:
parent
c89e0dda19
commit
613267c3a2
105
.eslintrc
105
.eslintrc
|
@ -1,106 +1,3 @@
|
||||||
{
|
{
|
||||||
"env": {
|
"extends": "eslint-config-discourse"
|
||||||
"jasmine": true,
|
|
||||||
"node": true,
|
|
||||||
"mocha": true,
|
|
||||||
"browser": true,
|
|
||||||
"builtin": true
|
|
||||||
},
|
|
||||||
"parserOptions": {
|
|
||||||
"ecmaVersion": 7,
|
|
||||||
"sourceType": "module"
|
|
||||||
},
|
|
||||||
"globals":
|
|
||||||
{"Ember":true,
|
|
||||||
"jQuery":true,
|
|
||||||
"$":true,
|
|
||||||
"RSVP":true,
|
|
||||||
"Discourse":true,
|
|
||||||
"Em":true,
|
|
||||||
"PreloadStore":true,
|
|
||||||
"Handlebars":true,
|
|
||||||
"I18n":true,
|
|
||||||
"bootbox":true,
|
|
||||||
"module":true,
|
|
||||||
"moduleFor":true,
|
|
||||||
"moduleForComponent":true,
|
|
||||||
"Pretender":true,
|
|
||||||
"sandbox":true,
|
|
||||||
"controllerFor":true,
|
|
||||||
"test":true,
|
|
||||||
"ok":true,
|
|
||||||
"not":true,
|
|
||||||
"expect":true,
|
|
||||||
"equal":true,
|
|
||||||
"visit":true,
|
|
||||||
"andThen":true,
|
|
||||||
"click":true,
|
|
||||||
"currentPath":true,
|
|
||||||
"currentRouteName":true,
|
|
||||||
"currentURL":true,
|
|
||||||
"fillIn":true,
|
|
||||||
"keyEvent":true,
|
|
||||||
"triggerEvent":true,
|
|
||||||
"count":true,
|
|
||||||
"exists":true,
|
|
||||||
"visible":true,
|
|
||||||
"invisible":true,
|
|
||||||
"asyncRender":true,
|
|
||||||
"selectDropdown":true,
|
|
||||||
"asyncTestDiscourse":true,
|
|
||||||
"fixture":true,
|
|
||||||
"find":true,
|
|
||||||
"sinon":true,
|
|
||||||
"moment":true,
|
|
||||||
"start":true,
|
|
||||||
"_":true,
|
|
||||||
"alert":true,
|
|
||||||
"containsInstance":true,
|
|
||||||
"deepEqual":true,
|
|
||||||
"notEqual":true,
|
|
||||||
"define":true,
|
|
||||||
"require":true,
|
|
||||||
"requirejs":true,
|
|
||||||
"hasModule":true,
|
|
||||||
"Blob":true,
|
|
||||||
"File":true},
|
|
||||||
"rules": {
|
|
||||||
"block-scoped-var": 2,
|
|
||||||
"dot-notation": 0,
|
|
||||||
"eqeqeq": [
|
|
||||||
2,
|
|
||||||
"allow-null"
|
|
||||||
],
|
|
||||||
"guard-for-in": 2,
|
|
||||||
"no-bitwise": 2,
|
|
||||||
"no-caller": 2,
|
|
||||||
"no-cond-assign": 0,
|
|
||||||
"no-debugger": 2,
|
|
||||||
"no-empty": 0,
|
|
||||||
"no-eval": 2,
|
|
||||||
"no-extend-native": 2,
|
|
||||||
"no-extra-parens": 0,
|
|
||||||
"no-irregular-whitespace": 2,
|
|
||||||
"no-iterator": 2,
|
|
||||||
"no-loop-func": 2,
|
|
||||||
"no-multi-str": 2,
|
|
||||||
"no-new": 2,
|
|
||||||
"no-plusplus": 0,
|
|
||||||
"no-proto": 2,
|
|
||||||
"no-script-url": 2,
|
|
||||||
"no-sequences": 2,
|
|
||||||
"no-shadow": 2,
|
|
||||||
"no-undef": 2,
|
|
||||||
"no-unused-vars": 2,
|
|
||||||
"no-with": 2,
|
|
||||||
"no-this-before-super": 2,
|
|
||||||
"semi": 2,
|
|
||||||
"strict": 0,
|
|
||||||
"valid-typeof": 2,
|
|
||||||
"wrap-iife": [
|
|
||||||
2,
|
|
||||||
"inside"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"parser": "babel-eslint"
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,3 @@
|
||||||
|
node_modules
|
||||||
|
yarn-error.log
|
||||||
|
.rubocop-https---raw-githubusercontent-com-discourse-*
|
|
@ -0,0 +1 @@
|
||||||
|
{}
|
|
@ -0,0 +1,4 @@
|
||||||
|
module.exports = {
|
||||||
|
plugins: ["ember-template-lint-plugin-discourse"],
|
||||||
|
extends: "discourse:recommended",
|
||||||
|
};
|
|
@ -1,3 +1,4 @@
|
||||||
|
import I18n from "I18n";
|
||||||
import DiscourseUrl from "discourse/lib/url";
|
import DiscourseUrl from "discourse/lib/url";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
@ -16,10 +17,10 @@ export default {
|
||||||
},
|
},
|
||||||
|
|
||||||
setupComponent(args, component) {
|
setupComponent(args, component) {
|
||||||
const statuses = ["all", "solved", "unsolved"].map(status => {
|
const statuses = ["all", "solved", "unsolved"].map((status) => {
|
||||||
return {
|
return {
|
||||||
name: I18n.t(`solved.topic_status_filter.${status}`),
|
name: I18n.t(`solved.topic_status_filter.${status}`),
|
||||||
value: status
|
value: status,
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
component.set("statuses", statuses);
|
component.set("statuses", statuses);
|
||||||
|
@ -42,7 +43,7 @@ export default {
|
||||||
? queryStrings.substr(1).split("&")
|
? queryStrings.substr(1).split("&")
|
||||||
: [];
|
: [];
|
||||||
|
|
||||||
params = params.filter(param => !param.startsWith("solved="));
|
params = params.filter((param) => !param.startsWith("solved="));
|
||||||
|
|
||||||
if (newStatus && newStatus !== "all") {
|
if (newStatus && newStatus !== "all") {
|
||||||
newStatus = newStatus === "solved" ? "yes" : "no";
|
newStatus = newStatus === "solved" ? "yes" : "no";
|
||||||
|
@ -53,6 +54,6 @@ export default {
|
||||||
DiscourseUrl.routeTo(
|
DiscourseUrl.routeTo(
|
||||||
`${location.pathname}${queryStrings}${location.hash}`
|
`${location.pathname}${queryStrings}${location.hash}`
|
||||||
);
|
);
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
|
|
|
@ -5,6 +5,6 @@ export default {
|
||||||
"category.custom_fields.enable_accepted_answers",
|
"category.custom_fields.enable_accepted_answers",
|
||||||
value ? "true" : "false"
|
value ? "true" : "false"
|
||||||
);
|
);
|
||||||
}
|
},
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
import I18n from "I18n";
|
||||||
import Topic from "discourse/models/topic";
|
import Topic from "discourse/models/topic";
|
||||||
import User from "discourse/models/user";
|
import User from "discourse/models/user";
|
||||||
import TopicStatus from "discourse/raw-views/topic-status";
|
import TopicStatus from "discourse/raw-views/topic-status";
|
||||||
|
@ -13,12 +14,12 @@ import SearchAdvancedOptions from "discourse/components/search-advanced-options"
|
||||||
|
|
||||||
function clearAccepted(topic) {
|
function clearAccepted(topic) {
|
||||||
const posts = topic.get("postStream.posts");
|
const posts = topic.get("postStream.posts");
|
||||||
posts.forEach(post => {
|
posts.forEach((post) => {
|
||||||
if (post.get("post_number") > 1) {
|
if (post.get("post_number") > 1) {
|
||||||
post.setProperties({
|
post.setProperties({
|
||||||
accepted_answer: false,
|
accepted_answer: false,
|
||||||
can_accept_answer: true,
|
can_accept_answer: true,
|
||||||
can_unaccept_answer: false
|
can_unaccept_answer: false,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -33,13 +34,13 @@ function unacceptPost(post) {
|
||||||
post.setProperties({
|
post.setProperties({
|
||||||
can_accept_answer: true,
|
can_accept_answer: true,
|
||||||
can_unaccept_answer: false,
|
can_unaccept_answer: false,
|
||||||
accepted_answer: false
|
accepted_answer: false,
|
||||||
});
|
});
|
||||||
topic.set("accepted_answer", undefined);
|
topic.set("accepted_answer", undefined);
|
||||||
|
|
||||||
ajax("/solution/unaccept", {
|
ajax("/solution/unaccept", {
|
||||||
type: "POST",
|
type: "POST",
|
||||||
data: { id: post.id }
|
data: { id: post.id },
|
||||||
}).catch(popupAjaxError);
|
}).catch(popupAjaxError);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -51,18 +52,18 @@ function acceptPost(post) {
|
||||||
post.setProperties({
|
post.setProperties({
|
||||||
can_unaccept_answer: true,
|
can_unaccept_answer: true,
|
||||||
can_accept_answer: false,
|
can_accept_answer: false,
|
||||||
accepted_answer: true
|
accepted_answer: true,
|
||||||
});
|
});
|
||||||
|
|
||||||
topic.set("accepted_answer", {
|
topic.set("accepted_answer", {
|
||||||
username: post.username,
|
username: post.username,
|
||||||
post_number: post.post_number,
|
post_number: post.post_number,
|
||||||
excerpt: post.cooked
|
excerpt: post.cooked,
|
||||||
});
|
});
|
||||||
|
|
||||||
ajax("/solution/accept", {
|
ajax("/solution/accept", {
|
||||||
type: "POST",
|
type: "POST",
|
||||||
data: { id: post.id }
|
data: { id: post.id },
|
||||||
}).catch(popupAjaxError);
|
}).catch(popupAjaxError);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -72,7 +73,7 @@ function initializeWithApi(api) {
|
||||||
TopicStatusIcons.addObject([
|
TopicStatusIcons.addObject([
|
||||||
"has_accepted_answer",
|
"has_accepted_answer",
|
||||||
"far-check-square",
|
"far-check-square",
|
||||||
"solved"
|
"solved",
|
||||||
]);
|
]);
|
||||||
|
|
||||||
api.includePostAttributes(
|
api.includePostAttributes(
|
||||||
|
@ -85,7 +86,7 @@ function initializeWithApi(api) {
|
||||||
api.addDiscoveryQueryParam("solved", { replace: true, refreshModel: true });
|
api.addDiscoveryQueryParam("solved", { replace: true, refreshModel: true });
|
||||||
}
|
}
|
||||||
|
|
||||||
api.addPostMenuButton("solved", attrs => {
|
api.addPostMenuButton("solved", (attrs) => {
|
||||||
const canAccept = attrs.can_accept_answer;
|
const canAccept = attrs.can_accept_answer;
|
||||||
const canUnaccept = attrs.can_unaccept_answer;
|
const canUnaccept = attrs.can_unaccept_answer;
|
||||||
const accepted = attrs.accepted_answer;
|
const accepted = attrs.accepted_answer;
|
||||||
|
@ -100,7 +101,7 @@ function initializeWithApi(api) {
|
||||||
className: "unaccepted",
|
className: "unaccepted",
|
||||||
title: "solved.accept_answer",
|
title: "solved.accept_answer",
|
||||||
label: "solved.solution",
|
label: "solved.solution",
|
||||||
position
|
position,
|
||||||
};
|
};
|
||||||
} else if (canUnaccept && accepted) {
|
} else if (canUnaccept && accepted) {
|
||||||
const title = canUnaccept
|
const title = canUnaccept
|
||||||
|
@ -112,7 +113,7 @@ function initializeWithApi(api) {
|
||||||
title,
|
title,
|
||||||
className: "accepted fade-out",
|
className: "accepted fade-out",
|
||||||
position,
|
position,
|
||||||
label: "solved.solution"
|
label: "solved.solution",
|
||||||
};
|
};
|
||||||
} else if (!canAccept && accepted) {
|
} else if (!canAccept && accepted) {
|
||||||
return {
|
return {
|
||||||
|
@ -123,19 +124,19 @@ function initializeWithApi(api) {
|
||||||
return h(
|
return h(
|
||||||
"span.accepted-text",
|
"span.accepted-text",
|
||||||
{
|
{
|
||||||
title: I18n.t("solved.accepted_description")
|
title: I18n.t("solved.accepted_description"),
|
||||||
},
|
},
|
||||||
[
|
[
|
||||||
h("span", iconNode("check")),
|
h("span", iconNode("check")),
|
||||||
h("span.accepted-label", I18n.t("solved.solution"))
|
h("span.accepted-label", I18n.t("solved.solution")),
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
api.decorateWidget("post-contents:after-cooked", dec => {
|
api.decorateWidget("post-contents:after-cooked", (dec) => {
|
||||||
if (dec.attrs.post_number === 1) {
|
if (dec.attrs.post_number === 1) {
|
||||||
const postModel = dec.getModel();
|
const postModel = dec.getModel();
|
||||||
if (postModel) {
|
if (postModel) {
|
||||||
|
@ -172,23 +173,23 @@ function initializeWithApi(api) {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
api.attachWidgetAction("post", "acceptAnswer", function() {
|
api.attachWidgetAction("post", "acceptAnswer", function () {
|
||||||
const post = this.model;
|
const post = this.model;
|
||||||
const current = post.get("topic.postStream.posts").filter(p => {
|
const current = post.get("topic.postStream.posts").filter((p) => {
|
||||||
return p.post_number === 1 || p.accepted_answer;
|
return p.post_number === 1 || p.accepted_answer;
|
||||||
});
|
});
|
||||||
acceptPost(post);
|
acceptPost(post);
|
||||||
|
|
||||||
current.forEach(p =>
|
current.forEach((p) =>
|
||||||
this.appEvents.trigger("post-stream:refresh", { id: p.id })
|
this.appEvents.trigger("post-stream:refresh", { id: p.id })
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
api.attachWidgetAction("post", "unacceptAnswer", function() {
|
api.attachWidgetAction("post", "unacceptAnswer", function () {
|
||||||
const post = this.model;
|
const post = this.model;
|
||||||
const op = post
|
const op = post
|
||||||
.get("topic.postStream.posts")
|
.get("topic.postStream.posts")
|
||||||
.find(p => p.post_number === 1);
|
.find((p) => p.post_number === 1);
|
||||||
unacceptPost(post);
|
unacceptPost(post);
|
||||||
this.appEvents.trigger("post-stream:refresh", { id: op.id });
|
this.appEvents.trigger("post-stream:refresh", { id: op.id });
|
||||||
});
|
});
|
||||||
|
@ -197,7 +198,7 @@ function initializeWithApi(api) {
|
||||||
api.registerConnectorClass("user-activity-bottom", "solved-list", {
|
api.registerConnectorClass("user-activity-bottom", "solved-list", {
|
||||||
shouldRender(args, component) {
|
shouldRender(args, component) {
|
||||||
return component.siteSettings.solved_enabled;
|
return component.siteSettings.solved_enabled;
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
api.registerConnectorClass("user-summary-stat", "solved-count", {
|
api.registerConnectorClass("user-summary-stat", "solved-count", {
|
||||||
shouldRender(args, component) {
|
shouldRender(args, component) {
|
||||||
|
@ -207,7 +208,7 @@ function initializeWithApi(api) {
|
||||||
},
|
},
|
||||||
setupComponent() {
|
setupComponent() {
|
||||||
this.set("classNames", ["linked-stat"]);
|
this.set("classNames", ["linked-stat"]);
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -217,7 +218,7 @@ export default {
|
||||||
initialize() {
|
initialize() {
|
||||||
Topic.reopen({
|
Topic.reopen({
|
||||||
// keeping this here cause there is complex localization
|
// keeping this here cause there is complex localization
|
||||||
acceptedAnswerHtml: Ember.computed("accepted_answer", "id", function() {
|
acceptedAnswerHtml: Ember.computed("accepted_answer", "id", function () {
|
||||||
const username = this.get("accepted_answer.username");
|
const username = this.get("accepted_answer.username");
|
||||||
const postNumber = this.get("accepted_answer.post_number");
|
const postNumber = this.get("accepted_answer.post_number");
|
||||||
|
|
||||||
|
@ -231,13 +232,13 @@ export default {
|
||||||
username: formatUsername(username),
|
username: formatUsername(username),
|
||||||
post_path: `${this.url}/${postNumber}`,
|
post_path: `${this.url}/${postNumber}`,
|
||||||
post_number: postNumber,
|
post_number: postNumber,
|
||||||
user_path: User.create({ username }).path
|
user_path: User.create({ username }).path,
|
||||||
});
|
});
|
||||||
})
|
}),
|
||||||
});
|
});
|
||||||
|
|
||||||
TopicStatus.reopen({
|
TopicStatus.reopen({
|
||||||
statuses: Ember.computed(function() {
|
statuses: Ember.computed(function () {
|
||||||
const results = this._super(...arguments);
|
const results = this._super(...arguments);
|
||||||
|
|
||||||
if (this.topic.has_accepted_answer) {
|
if (this.topic.has_accepted_answer) {
|
||||||
|
@ -245,7 +246,7 @@ export default {
|
||||||
openTag: "span",
|
openTag: "span",
|
||||||
closeTag: "span",
|
closeTag: "span",
|
||||||
title: I18n.t("topic_statuses.solved.help"),
|
title: I18n.t("topic_statuses.solved.help"),
|
||||||
icon: "far-check-square"
|
icon: "far-check-square",
|
||||||
});
|
});
|
||||||
} else if (
|
} else if (
|
||||||
this.topic.can_have_answer &&
|
this.topic.can_have_answer &&
|
||||||
|
@ -256,11 +257,11 @@ export default {
|
||||||
openTag: "span",
|
openTag: "span",
|
||||||
closeTag: "span",
|
closeTag: "span",
|
||||||
title: I18n.t("solved.has_no_accepted_answer"),
|
title: I18n.t("solved.has_no_accepted_answer"),
|
||||||
icon: "far-square"
|
icon: "far-square",
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
return results;
|
return results;
|
||||||
})
|
}),
|
||||||
});
|
});
|
||||||
|
|
||||||
SearchAdvancedOptions.reopen({
|
SearchAdvancedOptions.reopen({
|
||||||
|
@ -268,18 +269,18 @@ export default {
|
||||||
this._super();
|
this._super();
|
||||||
this.statusOptions.push({
|
this.statusOptions.push({
|
||||||
name: I18n.t("search.advanced.statuses.solved"),
|
name: I18n.t("search.advanced.statuses.solved"),
|
||||||
value: "solved"
|
value: "solved",
|
||||||
});
|
});
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
withPluginApi("0.1", initializeWithApi);
|
withPluginApi("0.1", initializeWithApi);
|
||||||
|
|
||||||
withPluginApi("0.8.10", api => {
|
withPluginApi("0.8.10", (api) => {
|
||||||
api.replaceIcon(
|
api.replaceIcon(
|
||||||
"notification.solved.accepted_notification",
|
"notification.solved.accepted_notification",
|
||||||
"check-square"
|
"check-square"
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
|
|
|
@ -12,9 +12,9 @@ export default {
|
||||||
{
|
{
|
||||||
get(fieldName) {
|
get(fieldName) {
|
||||||
return Ember.get(this.custom_fields, fieldName) === "true";
|
return Ember.get(this.custom_fields, fieldName) === "true";
|
||||||
}
|
},
|
||||||
}
|
}
|
||||||
)
|
),
|
||||||
});
|
});
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
|
|
|
@ -2,5 +2,5 @@ import UserActivityStreamRoute from "discourse/routes/user-activity-stream";
|
||||||
|
|
||||||
export default UserActivityStreamRoute.extend({
|
export default UserActivityStreamRoute.extend({
|
||||||
userActionType: 15,
|
userActionType: 15,
|
||||||
noContentHelpKey: "solved.no_solutions"
|
noContentHelpKey: "solved.no_solutions",
|
||||||
});
|
});
|
||||||
|
|
|
@ -3,5 +3,5 @@ export default {
|
||||||
|
|
||||||
map() {
|
map() {
|
||||||
this.route("solved");
|
this.route("solved");
|
||||||
}
|
},
|
||||||
};
|
};
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
{
|
||||||
|
"author": "Discourse",
|
||||||
|
"license": "MIT",
|
||||||
|
"devDependencies": {
|
||||||
|
"eslint-config-discourse": "latest"
|
||||||
|
}
|
||||||
|
}
|
|
@ -3,11 +3,11 @@ import { acceptance } from "helpers/qunit-helpers";
|
||||||
acceptance("Discourse Solved Plugin", {
|
acceptance("Discourse Solved Plugin", {
|
||||||
loggedIn: true,
|
loggedIn: true,
|
||||||
beforeEach() {
|
beforeEach() {
|
||||||
const response = object => {
|
const response = (object) => {
|
||||||
return [200, { "Content-Type": "application/json" }, object];
|
return [200, { "Content-Type": "application/json" }, object];
|
||||||
};
|
};
|
||||||
|
|
||||||
const postStreamWithAcceptedAnswerExcerpt = excerpt => {
|
const postStreamWithAcceptedAnswerExcerpt = (excerpt) => {
|
||||||
return {
|
return {
|
||||||
post_stream: {
|
post_stream: {
|
||||||
posts: [
|
posts: [
|
||||||
|
@ -49,7 +49,7 @@ acceptance("Discourse Solved Plugin", {
|
||||||
{ id: 4, can_act: true },
|
{ id: 4, can_act: true },
|
||||||
{ id: 5, hidden: true, can_act: true },
|
{ id: 5, hidden: true, can_act: true },
|
||||||
{ id: 7, can_act: true },
|
{ id: 7, can_act: true },
|
||||||
{ id: 8, can_act: true }
|
{ id: 8, can_act: true },
|
||||||
],
|
],
|
||||||
moderator: false,
|
moderator: false,
|
||||||
admin: true,
|
admin: true,
|
||||||
|
@ -65,7 +65,7 @@ acceptance("Discourse Solved Plugin", {
|
||||||
wiki: false,
|
wiki: false,
|
||||||
can_accept_answer: false,
|
can_accept_answer: false,
|
||||||
can_unaccept_answer: false,
|
can_unaccept_answer: false,
|
||||||
accepted_answer: false
|
accepted_answer: false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 22,
|
id: 22,
|
||||||
|
@ -106,7 +106,7 @@ acceptance("Discourse Solved Plugin", {
|
||||||
{ id: 4, can_act: true },
|
{ id: 4, can_act: true },
|
||||||
{ id: 5, hidden: true, can_act: true },
|
{ id: 5, hidden: true, can_act: true },
|
||||||
{ id: 7, can_act: true },
|
{ id: 7, can_act: true },
|
||||||
{ id: 8, can_act: true }
|
{ id: 8, can_act: true },
|
||||||
],
|
],
|
||||||
moderator: false,
|
moderator: false,
|
||||||
admin: true,
|
admin: true,
|
||||||
|
@ -122,10 +122,10 @@ acceptance("Discourse Solved Plugin", {
|
||||||
wiki: false,
|
wiki: false,
|
||||||
can_accept_answer: false,
|
can_accept_answer: false,
|
||||||
can_unaccept_answer: true,
|
can_unaccept_answer: true,
|
||||||
accepted_answer: true
|
accepted_answer: true,
|
||||||
}
|
},
|
||||||
],
|
],
|
||||||
stream: [21, 22]
|
stream: [21, 22],
|
||||||
},
|
},
|
||||||
timeline_lookup: [[1, 0]],
|
timeline_lookup: [[1, 0]],
|
||||||
id: 23,
|
id: 23,
|
||||||
|
@ -164,13 +164,13 @@ acceptance("Discourse Solved Plugin", {
|
||||||
id: 1,
|
id: 1,
|
||||||
username: "kzh",
|
username: "kzh",
|
||||||
avatar_template:
|
avatar_template:
|
||||||
"/letter_avatar_proxy/v2/letter/k/ac91a4/{size}.png"
|
"/letter_avatar_proxy/v2/letter/k/ac91a4/{size}.png",
|
||||||
},
|
},
|
||||||
last_poster: {
|
last_poster: {
|
||||||
id: 1,
|
id: 1,
|
||||||
username: "kzh",
|
username: "kzh",
|
||||||
avatar_template:
|
avatar_template:
|
||||||
"/letter_avatar_proxy/v2/letter/k/ac91a4/{size}.png"
|
"/letter_avatar_proxy/v2/letter/k/ac91a4/{size}.png",
|
||||||
},
|
},
|
||||||
participants: [
|
participants: [
|
||||||
{
|
{
|
||||||
|
@ -182,8 +182,8 @@ acceptance("Discourse Solved Plugin", {
|
||||||
primary_group_name: null,
|
primary_group_name: null,
|
||||||
primary_group_flair_url: null,
|
primary_group_flair_url: null,
|
||||||
primary_group_flair_color: null,
|
primary_group_flair_color: null,
|
||||||
primary_group_flair_bg_color: null
|
primary_group_flair_bg_color: null,
|
||||||
}
|
},
|
||||||
],
|
],
|
||||||
notification_level: 3,
|
notification_level: 3,
|
||||||
notifications_reason_id: 1,
|
notifications_reason_id: 1,
|
||||||
|
@ -195,7 +195,7 @@ acceptance("Discourse Solved Plugin", {
|
||||||
can_invite_via_email: true,
|
can_invite_via_email: true,
|
||||||
can_create_post: true,
|
can_create_post: true,
|
||||||
can_reply_as_new_topic: true,
|
can_reply_as_new_topic: true,
|
||||||
can_flag_topic: true
|
can_flag_topic: true,
|
||||||
},
|
},
|
||||||
highest_post_number: 2,
|
highest_post_number: 2,
|
||||||
last_read_post_number: 2,
|
last_read_post_number: 2,
|
||||||
|
@ -205,7 +205,7 @@ acceptance("Discourse Solved Plugin", {
|
||||||
actions_summary: [
|
actions_summary: [
|
||||||
{ id: 4, count: 0, hidden: false, can_act: true },
|
{ id: 4, count: 0, hidden: false, can_act: true },
|
||||||
{ id: 7, count: 0, hidden: false, can_act: true },
|
{ id: 7, count: 0, hidden: false, can_act: true },
|
||||||
{ id: 8, count: 0, hidden: false, can_act: true }
|
{ id: 8, count: 0, hidden: false, can_act: true },
|
||||||
],
|
],
|
||||||
chunk_size: 20,
|
chunk_size: 20,
|
||||||
bookmarked: false,
|
bookmarked: false,
|
||||||
|
@ -213,7 +213,7 @@ acceptance("Discourse Solved Plugin", {
|
||||||
featured_link: null,
|
featured_link: null,
|
||||||
topic_timer: null,
|
topic_timer: null,
|
||||||
message_bus_last_id: 0,
|
message_bus_last_id: 0,
|
||||||
accepted_answer: { post_number: 2, username: "kzh", excerpt: excerpt }
|
accepted_answer: { post_number: 2, username: "kzh", excerpt: excerpt },
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -228,10 +228,10 @@ acceptance("Discourse Solved Plugin", {
|
||||||
server.get("/t/12.json", () => {
|
server.get("/t/12.json", () => {
|
||||||
return response(postStreamWithAcceptedAnswerExcerpt(null));
|
return response(postStreamWithAcceptedAnswerExcerpt(null));
|
||||||
});
|
});
|
||||||
}
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
test("A topic with an accepted answer shows an excerpt of the answer, if provided", assert => {
|
test("A topic with an accepted answer shows an excerpt of the answer, if provided", (assert) => {
|
||||||
visit("/t/with-excerpt/11");
|
visit("/t/with-excerpt/11");
|
||||||
|
|
||||||
andThen(() => {
|
andThen(() => {
|
||||||
|
|
Loading…
Reference in New Issue