UNPKG

1.88 kBJavaScriptView Raw
1
2const assert = require("chai").assert
3const Promise = require("bluebird")
4const d = require("debug")("raptorjs:test:tree")
5const util = require("../util")
6
7const createNode = () => {
8 return util.createAdminInstance()
9 .then((r) => r.Inventory().create({ name: util.randomName("dev") })
10 .then((dev) => r.Tree().create({ id: dev.id, type: "device" })
11 .then((node) => Promise.resolve({ dev, node, r })))
12 )
13}
14
15describe("Tree", function () {
16
17 it("should create a node", function () {
18 return createNode().then(({dev, node}) => {
19 d("Created node %s_%s", node.type, node.id)
20 assert.equal(dev.id, node.id)
21 return Promise.resolve()
22 })
23 })
24
25 it("should update a node", function () {
26 return createNode().then(({node, r}) => r.Tree().update({ id: node.id, type: "device", name: "foobar3000" })
27 .then((node2) => {
28 assert.equal(node2.id, node.id)
29 assert.equal(node2.name, "foobar3000")
30 return Promise.resolve()
31 }))
32 })
33
34 it("should delete a node", function () {
35 return createNode()
36 .then(({node, r}) => r.Tree().delete(node)
37 .then(() => r.Tree().read(node)))
38 .catch((e) => {
39 assert.equal(404, e.code)
40 return Promise.resolve()
41 })
42 })
43
44 it("should search nodes", function () {
45 return createNode().then(({node, r}) => r.Tree().update({ id: node.id, type: "device", name: "test1", properties: { test: true } })
46 .then(() => r.Tree().search({ name: "test1" })))
47 .then((pager) => {
48 assert.isTrue(pager.getContent().filter((n) => n.name === "test1").length > 0)
49 return Promise.resolve()
50 })
51 })
52
53})