UNPKG

1.82 kBtext/coffeescriptView Raw
1{call} = require "when/generator"
2amen = require "amen"
3assert = require "assert"
4
5cson = require "c50n"
6{read} = require "fairmont"
7{resolve} = require "path"
8
9pbx = require "../src/pbx"
10
11pandaconfig = null
12
13call ->
14 try
15 pandaconfig = yield cson.parse (read(resolve("#{process.env.HOME}/.pandacluster.cson")))
16 catch error
17 assert.fail error, null, "Credential file ~/.pandacluster.cson missing"
18
19amen.describe "Huxley API", (context) ->
20
21 cluster_name = "peter-cli-test"
22 secret_token = null
23 cluster_url = null
24 {url, email, key_pair, public_keys} = pandaconfig
25
26 context.test "Create a user", (context) ->
27
28 user = (yield pbx.create_user pandaconfig)
29 {secret_token} = (JSON.parse user).user
30
31 #console.log "*****secret token sent: ", secret_token
32 assert.ok user
33 assert.ok secret_token
34
35 context.test "Create a cluster", ->
36 pandaconfig.cluster_name = cluster_name
37 pandaconfig.secret_token = secret_token
38 location =
39 (yield pbx.create_cluster pandaconfig)
40 #(yield pbx.create_cluster {cluster_name, email, secret_token, url, key_pair, public_keys})
41
42 cluster_url = location
43 assert.ok cluster_url
44
45 console.log "*****cluster created, cluster_url: ", cluster_url
46
47# cluster_status =
48# (yield pbx.get_cluster_status {cluster_url, secret_token, url})
49#
50# console.log "*****cluster_status: ", cluster_status
51# assert.ok cluster_status
52
53 cluster_status =
54 (yield pbx.wait_on_cluster {cluster_url, secret_token, url})
55
56 console.log "*****cluster_status is done: ", cluster_status
57 assert.ok cluster_status
58
59 context.test "Delete a cluster", ->
60 url = pandaconfig.url
61
62 response = (yield pbx.delete_cluster {cluster_url, secret_token, url})
63 console.log "***** done deleting"