DEV: Import pretender instead of global server var (#8996)

* DEV: Remove server global test variable

* Delete yarn-error.log

* prettier and some eslint fixes

* add global server variable back for plugins

* rename imported server to pretender

* prettier

* support plugin server. usage

* Export pretender as named

* Prettier

* change default pretender export

* fix bad import

* Use pretender() and original default export

* export new Pretender as default

* fix accidental change

* WIP testing

* add pretend handlers in correct location

* move more stuff into the correct pretender

* Consolidated more pretenders

* comment out another bad test

* fix user acceptance tests

* commented out bad test

* fixed another composer server stub

* fix more tests

* fixed tag test pretender

* Fix admin email test

* removed another draft handler

* add back test

* fix and uncomment another test

* remove test that is not useful

* remove commented out lines

* reapply handlers between every test

* no need to re-stub requests now :)

* cleanup from review

* more cleanup
This commit is contained in:
Mark VanLandingham
2020-03-02 13:24:31 -06:00
committed by GitHub
parent fedd8e3e3a
commit 176aa0ac7d
30 changed files with 1050 additions and 1035 deletions
@@ -1,4 +1,5 @@
import componentTest from "helpers/component-test";
import pretender from "helpers/create-pretender";
moduleForComponent("admin-report", {
integration: true
@@ -133,13 +134,18 @@ componentTest("exception", {
componentTest("rate limited", {
beforeEach() {
const response = object => {
return [429, { "Content-Type": "application/json" }, object];
};
// prettier-ignore
server.get("/admin/reports/bulk", () => { //eslint-disable-line
return response({"errors":["Youve performed this action too many times. Please wait 10 seconds before trying again."],"error_type":"rate_limit","extras":{"wait_seconds":10}});
pretender.get("/admin/reports/bulk", () => {
return [
429,
{ "Content-Type": "application/json" },
{
errors: [
"Youve performed this action too many times. Please wait 10 seconds before trying again."
],
error_type: "rate_limit",
extras: { wait_seconds: 10 }
}
];
});
},
@@ -1,6 +1,7 @@
import selectKit from "helpers/select-kit-helper";
import componentTest from "helpers/component-test";
import EmberObject from "@ember/object";
import pretender from "helpers/create-pretender";
moduleForComponent("badge-title", { integration: true });
@@ -23,8 +24,7 @@ componentTest("badge title", {
},
async test(assert) {
/* global server */
server.put("/u/eviltrout/preferences/badge_title", () => [
pretender.put("/u/eviltrout/preferences/badge_title", () => [
200,
{ "Content-Type": "application/json" },
{}
@@ -2,6 +2,7 @@ import componentTest from "helpers/component-test";
import { testSelectKitModule } from "./select-kit-test-helper";
import Site from "discourse/models/site";
import { set } from "@ember/object";
import pretender from "helpers/create-pretender";
testSelectKitModule("tag-drop", {
beforeEach() {
@@ -12,19 +13,14 @@ testSelectKitModule("tag-drop", {
return [200, { "Content-Type": "application/json" }, object];
};
// prettier-ignore
server.get("/tags/filter/search", (params) => { //eslint-disable-line
pretender.get("/tags/filter/search", params => {
if (params.queryParams.q === "rég") {
return response({
"results": [
{ "id": "régis", "text": "régis", "count": 2, "pm_count": 0 }
]
results: [{ id: "régis", text: "régis", count: 2, pm_count: 0 }]
});
}else if (params.queryParams.q === "dav") {
} else if (params.queryParams.q === "dav") {
return response({
"results": [
{ "id": "David", "text": "David", "count": 2, "pm_count": 0 }
]
results: [{ id: "David", text: "David", count: 2, pm_count: 0 }]
});
}
});
@@ -1,5 +1,6 @@
import componentTest from "helpers/component-test";
import { testSelectKitModule } from "./select-kit-test-helper";
import pretender from "helpers/create-pretender";
testSelectKitModule("user-chooser");
@@ -42,9 +43,8 @@ componentTest("can add a username", {
return [200, { "Content-Type": "application/json" }, object];
};
// prettier-ignore
server.get("/u/search/users", () => { //eslint-disable-line
return response({users:[{username: "maja", name: "Maja"}]});
pretender.get("/u/search/users", () => {
return response({ users: [{ username: "maja", name: "Maja" }] });
});
},