Merge branch 'master' of git.curoverse.com:arvados
[arvados.git] / services / api / test / functional / arvados / v1 / nodes_controller_test.rb
index f872f89dd91f51f5a8f414bc37e92cf7b34bc511..e096a045c60c81b9aef6bf1fcc08d714a48077e9 100644 (file)
@@ -42,7 +42,7 @@ class Arvados::V1::NodesControllerTest < ActionController::TestCase
 
   test "node should ping with ping_secret and no token" do
     post :ping, {
-      uuid: 'zzzzz-7ekkf-2z3mc76g2q73aio',
+      id: 'zzzzz-7ekkf-2z3mc76g2q73aio',
       instance_id: 'i-0000000',
       local_ipv4: '172.17.2.174',
       ping_secret: '69udawxvn3zzj45hs8bumvndricrha4lcpi23pd69e44soanc0'
@@ -50,16 +50,29 @@ class Arvados::V1::NodesControllerTest < ActionController::TestCase
     assert_response :success
     response = JSON.parse(@response.body)
     assert_equal 'zzzzz-7ekkf-2z3mc76g2q73aio', response['uuid']
+    # Ensure we are getting the "superuser" attributes, too
+    assert_not_nil response['first_ping_at'], '"first_ping_at" attr missing'
+    assert_not_nil response['info'], '"info" attr missing'
+    assert_not_nil response['nameservers'], '"nameservers" attr missing'
   end
 
   test "node should fail ping with invalid ping_secret" do
     post :ping, {
-      uuid: 'zzzzz-7ekkf-2z3mc76g2q73aio',
+      id: 'zzzzz-7ekkf-2z3mc76g2q73aio',
       instance_id: 'i-0000000',
       local_ipv4: '172.17.2.174',
       ping_secret: 'dricrha4lcpi23pd69e44soanc069udawxvn3zzj45hs8bumvn'
     }
-    assert_response :unprocessable_entity
+    assert_response 401
+  end
+
+  test "create node" do
+    authorize_with :admin
+    post :create
+    assert_response :success
+    assert_not_nil json_response['uuid']
+    assert_not_nil json_response['info'].is_a? Hash
+    assert_not_nil json_response['info']['ping_secret']
   end
 
 end