UNPKG

@dasch-swiss/dsp-js

Version:

JavaScript library that handles API requests to Knora

428 lines 29.4 kB
import { MockAjaxCall } from "../../../../test/mockajaxcall"; import { KnoraApiConfig } from "../../../knora-api-config"; import { KnoraApiConnection } from "../../../knora-api-connection"; import { CreateChildNodeRequest } from "../../../models/admin/create-child-node-request"; import { CreateListRequest } from "../../../models/admin/create-list-request"; import { DeleteListNodeResponse } from "../../../models/admin/delete-list-node-response"; import { DeleteListResponse } from "../../../models/admin/delete-list-response"; import { ListInfoResponse } from "../../../models/admin/list-info-response"; import { ListNodeInfoResponse } from "../../../models/admin/list-node-info-response"; import { RepositionChildNodeRequest } from "../../../models/admin/reposition-child-node-request"; import { StringLiteral } from "../../../models/admin/string-literal"; import { UpdateChildNodeCommentsRequest } from "../../../models/admin/update-child-node-comments-request"; import { UpdateChildNodeLabelsRequest } from "../../../models/admin/update-child-node-labels-request"; import { UpdateChildNodeNameRequest } from "../../../models/admin/update-child-node-name-request"; import { UpdateChildNodeRequest } from "../../../models/admin/update-child-node-request"; import { UpdateListInfoRequest } from "../../../models/admin/update-list-info-request"; describe("ListsEndpoint", function () { var config = new KnoraApiConfig("http", "localhost", 3333, undefined, undefined, true); var knoraApiConnection = new KnoraApiConnection(config); beforeEach(function () { jasmine.Ajax.install(); }); afterEach(function () { jasmine.Ajax.uninstall(); }); describe("Method getLists", function () { it("should return a list of lists", function (done) { knoraApiConnection.admin.listsEndpoint.getLists().subscribe(function (res) { expect(res.body.lists.length).toEqual(9); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var listsResponse = require("../../../../test/data/api/admin/lists/get-lists-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(listsResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists"); expect(request.method).toEqual("GET"); }); }); describe("Method getListsInProject", function () { it("should return a list of lists in a project", function (done) { knoraApiConnection.admin.listsEndpoint.getListsInProject("http://rdfh.ch/projects/0001").subscribe(function (res) { expect(res.body.lists.length).toEqual(9); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var listsResponse = require("../../../../test/data/api/admin/lists/get-lists-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(listsResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists?projectIri=http%3A%2F%2Frdfh.ch%2Fprojects%2F0001"); expect(request.method).toEqual("GET"); }); }); describe("Method UpdateListInfo", function () { it("should update a list", function (done) { var listInfo = new UpdateListInfoRequest(); listInfo.listIri = "http://rdfh.ch/lists/0001/CeiuqMk_R1-lIOKh-fyddA"; listInfo.projectIri = "http://rdfh.ch/projects/0001"; var label1 = new StringLiteral(); label1.language = "de"; label1.value = "Neue geänderte Liste"; var label2 = new StringLiteral(); label2.language = "en"; label2.value = "Changed list"; listInfo.labels = [label1, label2]; var comment1 = new StringLiteral(); comment1.language = "de"; comment1.value = "Neuer Kommentar"; var comment2 = new StringLiteral(); comment2.language = "en"; comment2.value = "New comment"; listInfo.comments = [comment1, comment2]; knoraApiConnection.admin.listsEndpoint.updateListInfo(listInfo).subscribe(function (res) { expect(res.body.listinfo.comments.length).toEqual(1); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var listsResponse = require("../../../../test/data/api/admin/lists/get-list-info-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(listsResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists/http%3A%2F%2Frdfh.ch%2Flists%2F0001%2FCeiuqMk_R1-lIOKh-fyddA"); expect(request.method).toEqual("PUT"); expect(request.requestHeaders).toEqual({ "content-type": "application/json; charset=utf-8", "x-requested-with": "XMLHttpRequest" }); var payload = require("../../../../test/data/api/admin/lists/update-list-info-request.json"); // TODO: remove this bad hack once test data is stable payload["listIri"] = "http://rdfh.ch/lists/0001/CeiuqMk_R1-lIOKh-fyddA"; expect(request.data()).toEqual(payload); }); }); describe("Method UpdateChildNode", function () { it("should update the name, labels, and comments of an existing child node", function (done) { // test data for this test has been created manually! var childNode = new UpdateChildNodeRequest(); childNode.listIri = "http://rdfh.ch/lists/0001/treeList01"; childNode.projectIri = "http://rdfh.ch/projects/0001"; childNode.name = "updated third child name"; var newLabels = new StringLiteral(); newLabels.language = "se"; newLabels.value = "nya märkningen för nod"; childNode.labels = [newLabels]; var newComments = new StringLiteral(); newComments.language = "se"; newComments.value = "nya kommentarer för nod"; childNode.comments = [newComments]; knoraApiConnection.admin.listsEndpoint.updateChildNode(childNode).subscribe(function (res) { expect(res.body.nodeinfo.name).toEqual("updated third child name"); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var childNodeResponse = require("../../../../test/data/api/admin/manually-generated/update-node-info-name-comment-label-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(childNodeResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists/http%3A%2F%2Frdfh.ch%2Flists%2F0001%2FtreeList01"); expect(request.method).toEqual("PUT"); expect(request.requestHeaders).toEqual({ "content-type": "application/json; charset=utf-8", "x-requested-with": "XMLHttpRequest" }); var payload = require("../../../../test/data/api/admin/manually-generated/update-node-info-name-comment-label-request.json"); expect(request.data()).toEqual(payload); }); it("should throw an error if given an incomplete UpdateChildNodeRequest", function () { var childNode = new UpdateChildNodeRequest(); childNode.listIri = "http://rdfh.ch/lists/0001/a-child-node-with-IRI"; childNode.projectIri = "http://rdfh.ch/projects/0001"; expect(function () { return knoraApiConnection.admin.listsEndpoint.updateChildNode(childNode); }).toThrow(new Error("At least one property is expected from the following properties: name, labels, comments.")); }); }); describe("Method UpdateChildName", function () { it("should update the name of an existing child node", function (done) { var childNodeName = new UpdateChildNodeNameRequest(); var listItemIri = "http://rdfh.ch/lists/0001/treeList01"; var newName = "updated third child name"; childNodeName.name = newName; knoraApiConnection.admin.listsEndpoint.updateChildName(listItemIri, childNodeName).subscribe(function (res) { expect(res.body.nodeinfo.name).toEqual("updated third child name"); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var childNodeResponse = require("../../../../test/data/api/admin/lists/update-childNode-name-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(childNodeResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists/http%3A%2F%2Frdfh.ch%2Flists%2F0001%2FtreeList01/name"); expect(request.method).toEqual("PUT"); expect(request.requestHeaders).toEqual({ "content-type": "application/json; charset=utf-8", "x-requested-with": "XMLHttpRequest" }); var payload = require("../../../../test/data/api/admin/lists/update-childNode-name-request.json"); expect(request.data()).toEqual(payload); }); }); describe("Method UpdateChildLabels", function () { it("should update the labels of an existing child node", function (done) { var childNodeLabels = new UpdateChildNodeLabelsRequest(); var listItemIri = "http://rdfh.ch/lists/0001/treeList01"; var newLabels = new StringLiteral(); newLabels.language = "se"; newLabels.value = "nya märkningen för nod"; childNodeLabels.labels = [newLabels]; knoraApiConnection.admin.listsEndpoint.updateChildLabels(listItemIri, childNodeLabels).subscribe(function (res) { expect(res.body.nodeinfo.labels[0].value).toEqual("nya märkningen för nod"); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var childNodeResponse = require("../../../../test/data/api/admin/lists/update-childNode-labels-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(childNodeResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists/http%3A%2F%2Frdfh.ch%2Flists%2F0001%2FtreeList01/labels"); expect(request.method).toEqual("PUT"); expect(request.requestHeaders).toEqual({ "content-type": "application/json; charset=utf-8", "x-requested-with": "XMLHttpRequest" }); var payload = require("../../../../test/data/api/admin/lists/update-childNode-labels-request.json"); expect(request.data()).toEqual(payload); }); }); describe("Method UpdateChildComments", function () { it("should update the comments of an existing child node", function (done) { var childNodeComments = new UpdateChildNodeCommentsRequest(); var listItemIri = "http://rdfh.ch/lists/0001/treeList01"; var newComments = new StringLiteral(); newComments.language = "se"; newComments.value = "nya kommentarer för nod"; childNodeComments.comments = [newComments]; knoraApiConnection.admin.listsEndpoint.updateChildComments(listItemIri, childNodeComments).subscribe(function (res) { expect(res.body.nodeinfo.comments[0].value).toEqual("nya kommentarer för nod"); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var childNodeResponse = require("../../../../test/data/api/admin/lists/update-childNode-comments-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(childNodeResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists/http%3A%2F%2Frdfh.ch%2Flists%2F0001%2FtreeList01/comments"); expect(request.method).toEqual("PUT"); expect(request.requestHeaders).toEqual({ "content-type": "application/json; charset=utf-8", "x-requested-with": "XMLHttpRequest" }); var payload = require("../../../../test/data/api/admin/lists/update-childNode-comments-request.json"); expect(request.data()).toEqual(payload); }); }); describe("Method CreateChildNode", function () { it("should create a child node", function (done) { var childNode = new CreateChildNodeRequest(); childNode.parentNodeIri = "http://rdfh.ch/lists/0001/CeiuqMk_R1-lIOKh-fyddA"; childNode.projectIri = "http://rdfh.ch/projects/0001"; childNode.name = "first"; var label1 = new StringLiteral(); label1.language = "en"; label1.value = "New First Child List Node Value"; childNode.labels = [label1]; var comment1 = new StringLiteral(); comment1.language = "en"; comment1.value = "New First Child List Node Comment"; childNode.comments = [comment1]; knoraApiConnection.admin.listsEndpoint.createChildNode(childNode).subscribe(function (res) { expect(res.body.nodeinfo.id).toEqual('http://rdfh.ch/lists/0001/treeList01'); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var listsResponse = require("../../../../test/data/api/admin/lists/get-list-node-info-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(listsResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists/http%3A%2F%2Frdfh.ch%2Flists%2F0001%2FCeiuqMk_R1-lIOKh-fyddA"); expect(request.method).toEqual("POST"); expect(request.requestHeaders).toEqual({ "content-type": "application/json; charset=utf-8", "x-requested-with": "XMLHttpRequest" }); var payload = require("../../../../test/data/api/admin/lists/create-child-node-request.json"); // TODO: remove this bad hack once test data is stable payload["parentNodeIri"] = "http://rdfh.ch/lists/0001/CeiuqMk_R1-lIOKh-fyddA"; expect(request.data()).toEqual(payload); }); it("should create a child node at a specific position", function (done) { var childNode = new CreateChildNodeRequest(); childNode.parentNodeIri = "http://rdfh.ch/lists/0001/CeiuqMk_R1-lIOKh-fyddA"; childNode.projectIri = "http://rdfh.ch/projects/0001"; childNode.name = "child with position"; var label1 = new StringLiteral(); label1.language = "en"; label1.value = "Inserted List Node Label"; childNode.labels = [label1]; var comment1 = new StringLiteral(); comment1.language = "en"; comment1.value = "Inserted List Node Comment"; childNode.comments = [comment1]; childNode.position = 1; knoraApiConnection.admin.listsEndpoint.createChildNode(childNode).subscribe(function (res) { expect(res.body.nodeinfo.name).toEqual("child with position"); expect(res.body.nodeinfo.position).toEqual(1); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var listsResponse = require("../../../../test/data/api/admin/lists/insert-childNode-in-position-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(listsResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists/http%3A%2F%2Frdfh.ch%2Flists%2F0001%2FCeiuqMk_R1-lIOKh-fyddA"); expect(request.method).toEqual("POST"); expect(request.requestHeaders).toEqual({ "content-type": "application/json; charset=utf-8", "x-requested-with": "XMLHttpRequest" }); var payload = require("../../../../test/data/api/admin/lists/insert-childNode-in-position-request.json"); // TODO: remove this bad hack once test data is stable payload["parentNodeIri"] = "http://rdfh.ch/lists/0001/CeiuqMk_R1-lIOKh-fyddA"; expect(request.data()).toEqual(payload); }); }); describe("Method getListNodeInfo", function () { it("should return information about a list child node", function (done) { knoraApiConnection.admin.listsEndpoint.getListNodeInfo("http://rdfh.ch/lists/0001/treeList01").subscribe(function (res) { expect(res.body instanceof ListNodeInfoResponse).toBeTruthy(); expect(res.body.nodeinfo.labels[0].value).toEqual("Tree list node 01"); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var listsResponse = require("../../../../test/data/api/admin/lists/get-list-node-info-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(listsResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists/http%3A%2F%2Frdfh.ch%2Flists%2F0001%2FtreeList01/info"); expect(request.method).toEqual("GET"); }); it("should return information about a list root node", function (done) { knoraApiConnection.admin.listsEndpoint.getListNodeInfo("http://rdfh.ch/lists/0001/treeList").subscribe(function (res) { expect(res.body instanceof ListInfoResponse).toBeTruthy(); // console.log(11111, (res.body as ListInfoResponse).listinfo.labels); // console.log(3333, (res.body as ListInfoResponse).listinfo.labels[0].value); expect(res.body.listinfo.labels[0].value).toEqual("Listenwurzel"); expect(res.body.listinfo.labels[1].value).toEqual("Tree list root"); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var listsResponse = require("../../../../test/data/api/admin/lists/get-list-info-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(listsResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists/http%3A%2F%2Frdfh.ch%2Flists%2F0001%2FtreeList/info"); expect(request.method).toEqual("GET"); }); }); describe("Method createList", function () { it("should create a list", function (done) { var list = new CreateListRequest(); var comments = new StringLiteral(); comments.language = "en"; comments.value = "XXXXX"; list.comments = [comments]; list.projectIri = "http://rdfh.ch/projects/0001"; var label = new StringLiteral(); label.language = "de"; label.value = "Neue Liste"; list.labels = [label]; knoraApiConnection.admin.listsEndpoint.createList(list).subscribe(function (res) { expect(res.body.list.listinfo.labels[0].value).toEqual("Neue Liste"); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var listsResponse = require("../../../../test/data/api/admin/lists/create-list-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(listsResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists"); expect(request.method).toEqual("POST"); expect(request.requestHeaders).toEqual({ "content-type": "application/json; charset=utf-8", "x-requested-with": "XMLHttpRequest" }); var payload = require("../../../../test/data/api/admin/lists/create-list-request.json"); expect(request.data()).toEqual(payload); }); }); describe("Method getList", function () { it("should return a list (root node)", function (done) { knoraApiConnection.admin.listsEndpoint.getList("http://rdfh.ch/lists/0001/treeList").subscribe(function (res) { expect(res.body.list.listinfo.id).toEqual("http://rdfh.ch/lists/0001/treeList"); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var listsResponse = require("../../../../test/data/api/admin/lists/get-list-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(listsResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists/http%3A%2F%2Frdfh.ch%2Flists%2F0001%2FtreeList"); expect(request.method).toEqual("GET"); }); it("should return a list child node", function (done) { knoraApiConnection.admin.listsEndpoint.getList("http://rdfh.ch/lists/0001/treeList03").subscribe(function (res) { expect(res.body.node.nodeinfo.id).toEqual("http://rdfh.ch/lists/0001/treeList03"); expect(res.body.node.children.length).toEqual(2); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var listsResponse = require("../../../../test/data/api/admin/lists/get-node-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(listsResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists/http%3A%2F%2Frdfh.ch%2Flists%2F0001%2FtreeList03"); expect(request.method).toEqual("GET"); }); }); describe("Method deleteListNode", function () { it("should delete a list child node", function (done) { knoraApiConnection.admin.listsEndpoint.deleteListNode("http://rdfh.ch/lists/0001/notUsedList016").subscribe(function (res) { expect(res.body instanceof DeleteListNodeResponse).toBeTruthy(); expect(res.body.node.id).toEqual("http://rdfh.ch/lists/0001/notUsedList"); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var listsResponse = require("../../../../test/data/api/admin/lists/delete-list-node-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(listsResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists/http%3A%2F%2Frdfh.ch%2Flists%2F0001%2FnotUsedList016"); expect(request.method).toEqual("DELETE"); expect(request.requestHeaders).toEqual({ "x-requested-with": "XMLHttpRequest" }); }); it("should delete a list root node", function (done) { knoraApiConnection.admin.listsEndpoint.deleteListNode("http://rdfh.ch/lists/0001/notUsedList").subscribe(function (res) { expect(res.body instanceof DeleteListResponse).toBeTruthy(); expect(res.body.iri).toEqual("http://rdfh.ch/lists/0001/notUsedList"); expect(res.body.deleted).toBeTruthy(); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var listsResponse = require("../../../../test/data/api/admin/lists/delete-list-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(listsResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists/http%3A%2F%2Frdfh.ch%2Flists%2F0001%2FnotUsedList"); expect(request.method).toEqual("DELETE"); expect(request.requestHeaders).toEqual({ "x-requested-with": "XMLHttpRequest" }); }); }); describe("Method repositionListNode", function () { it("should reposition a list child node to the second position among its siblings", function (done) { var repositionChildNode = new RepositionChildNodeRequest(); repositionChildNode.parentNodeIri = "http://rdfh.ch/lists/0001/notUsedList01"; repositionChildNode.position = 1; knoraApiConnection.admin.listsEndpoint.repositionChildNode("http://rdfh.ch/lists/0001/notUsedList014", repositionChildNode).subscribe(function (res) { expect(res.body.node.children[1].id).toEqual("http://rdfh.ch/lists/0001/notUsedList014"); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var repositionListNodeResponse = require("../../../../test/data/api/admin/lists/update-childNode-position-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(repositionListNodeResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists/http%3A%2F%2Frdfh.ch%2Flists%2F0001%2FnotUsedList014/position"); expect(request.method).toEqual("PUT"); expect(request.requestHeaders).toEqual({ "content-type": "application/json; charset=utf-8", "x-requested-with": "XMLHttpRequest" }); var payload = require("../../../../test/data/api/admin/lists/update-childNode-position-request.json"); expect(request.data()).toEqual(payload); }); it("should reposition a list child node to the last position among its siblings", function (done) { var repositionChildNode = new RepositionChildNodeRequest(); repositionChildNode.parentNodeIri = "http://rdfh.ch/lists/0001/notUsedList01"; repositionChildNode.position = -1; knoraApiConnection.admin.listsEndpoint.repositionChildNode("http://rdfh.ch/lists/0001/notUsedList012", repositionChildNode).subscribe(function (res) { expect(res.body.node.children[res.body.node.children.length - 1].id).toEqual("http://rdfh.ch/lists/0001/notUsedList012"); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var repositionListNodeResponse = require("../../../../test/data/api/admin/lists/update-childNode-position-to-end-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(repositionListNodeResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists/http%3A%2F%2Frdfh.ch%2Flists%2F0001%2FnotUsedList012/position"); expect(request.method).toEqual("PUT"); expect(request.requestHeaders).toEqual({ "content-type": "application/json; charset=utf-8", "x-requested-with": "XMLHttpRequest" }); var payload = require("../../../../test/data/api/admin/lists/update-childNode-position-to-end-request.json"); expect(request.data()).toEqual(payload); }); it("should reposition a list child node to the third position with a new parent", function (done) { var repositionChildNode = new RepositionChildNodeRequest(); repositionChildNode.parentNodeIri = "http://rdfh.ch/lists/0001/notUsedList"; repositionChildNode.position = 2; knoraApiConnection.admin.listsEndpoint.repositionChildNode("http://rdfh.ch/lists/0001/notUsedList015", repositionChildNode).subscribe(function (res) { expect(res.body.node.children[2].id).toEqual("http://rdfh.ch/lists/0001/notUsedList015"); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var repositionListNodeResponse = require("../../../../test/data/api/admin/lists/update-childNode-position-new-parent-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(repositionListNodeResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists/http%3A%2F%2Frdfh.ch%2Flists%2F0001%2FnotUsedList015/position"); expect(request.method).toEqual("PUT"); expect(request.requestHeaders).toEqual({ "content-type": "application/json; charset=utf-8", "x-requested-with": "XMLHttpRequest" }); var payload = require("../../../../test/data/api/admin/lists/update-childNode-position-new-parent-request.json"); expect(request.data()).toEqual(payload); }); it("should reposition a list child node to the last position with a new parent", function (done) { var repositionChildNode = new RepositionChildNodeRequest(); repositionChildNode.parentNodeIri = "http://rdfh.ch/lists/0001/notUsedList"; repositionChildNode.position = -1; knoraApiConnection.admin.listsEndpoint.repositionChildNode("http://rdfh.ch/lists/0001/notUsedList015", repositionChildNode).subscribe(function (res) { expect(res.body.node.children[res.body.node.children.length - 1].id).toEqual("http://rdfh.ch/lists/0001/notUsedList015"); done(); }); var request = jasmine.Ajax.requests.mostRecent(); var repositionListNodeResponse = require("../../../../test/data/api/admin/lists/update-childNode-position-new-parent-to-end-response.json"); request.respondWith(MockAjaxCall.mockResponse(JSON.stringify(repositionListNodeResponse))); expect(request.url).toBe("http://localhost:3333/admin/lists/http%3A%2F%2Frdfh.ch%2Flists%2F0001%2FnotUsedList015/position"); expect(request.method).toEqual("PUT"); expect(request.requestHeaders).toEqual({ "content-type": "application/json; charset=utf-8", "x-requested-with": "XMLHttpRequest" }); var payload = require("../../../../test/data/api/admin/lists/update-childNode-position-new-parent-to-end-request.json"); expect(request.data()).toEqual(payload); }); }); }); //# sourceMappingURL=lists-endpoint.spec.js.map