Fix REST API monitor relationship test

The test did not properly move the relationships from the old monitor to
the new one. The test to passed as the relationship modification was not
really tested.
This commit is contained in:
Markus Mäkelä
2017-10-23 12:32:38 +03:00
parent b7b50959ac
commit 7111724851

View File

@ -52,24 +52,26 @@ describe("Monitor Relationships", function() {
relationships: { relationships: {
servers: null servers: null
}}} }}}
return request.patch(base_url + "/monitors/MySQL-Monitor", {body: mon}) return request.patch(base_url + "/monitors/MySQL-Monitor", {json: mon})
.then(() => request.get(base_url + "/monitors/MySQL-Monitor", { json: true })) .then(() => request.get(base_url + "/monitors/MySQL-Monitor", { json: true }))
.then((res) => { .then((res) => {
res.data.relationships.servers.should.be.undefined res.data.relationships.should.not.have.keys("servers")
}) })
}); });
it("add relationships to new monitor", function() { it("add relationships to new monitor", function() {
var mon = { data: { var mon = { data: {
relationships: { relationships: {
servers: [ servers: {
{id: "server1", type: "servers"}, data:[
{id: "server2", type: "servers"}, {id: "server1", type: "servers"},
{id: "server3", type: "servers"}, {id: "server2", type: "servers"},
{id: "server4", type: "servers"}, {id: "server3", type: "servers"},
] {id: "server4", type: "servers"},
]
}
}}} }}}
return request.patch(base_url + "/monitors/" + monitor.data.id, {body: mon}) return request.patch(base_url + "/monitors/" + monitor.data.id, {json: mon})
.then(() => request.get(base_url + "/monitors/" + monitor.data.id, { json: true })) .then(() => request.get(base_url + "/monitors/" + monitor.data.id, { json: true }))
.then((res) => { .then((res) => {
res.data.relationships.servers.data.should.have.lengthOf(4) res.data.relationships.servers.data.should.have.lengthOf(4)
@ -77,27 +79,26 @@ describe("Monitor Relationships", function() {
}); });
it("move relationships back to old monitor", function() { it("move relationships back to old monitor", function() {
var mon = {data: {relationships: {servers: null}}}
return request.get(base_url + "/monitors/" + monitor.data.id) return request.patch(base_url + "/monitors/" + monitor.data.id, {json: mon})
.then(function(resp) { .then(() => request.get(base_url + "/monitors/" + monitor.data.id, { json: true }))
var mon = JSON.parse(resp) .then((res) => {
delete mon.data.relationships.servers res.data.relationships.should.not.have.keys("servers")
return request.patch(base_url + "/monitors/" + monitor.data.id, {json: mon})
}) })
.then(function() { .then(function() {
return request.get(base_url + "/monitors/MySQL-Monitor") mon.data.relationships.servers = {
}) data: [
.then(function(resp) { {id: "server1", type: "servers"},
var mon = JSON.parse(resp) {id: "server2", type: "servers"},
mon.data.relationships.servers = [ {id: "server3", type: "servers"},
{id: "server1", type: "servers"}, {id: "server4", type: "servers"},
{id: "server2", type: "servers"}, ]}
{id: "server3", type: "servers"},
{id: "server4", type: "servers"},
]
return request.patch(base_url + "/monitors/MySQL-Monitor", {json: mon}) return request.patch(base_url + "/monitors/MySQL-Monitor", {json: mon})
}) })
.should.be.fulfilled .then(() => request.get(base_url + "/monitors/MySQL-Monitor", { json: true }))
.then((res) => {
res.data.relationships.servers.data.should.have.lengthOf(4)
})
}); });
it("destroy created monitor", function() { it("destroy created monitor", function() {