3 class AuthorizedKeyTest < ActiveSupport::TestCase
4 TEST_KEY = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCf5aTI55uyWr44TckP/ELUAyPsdnf5fTZDcSDN4qiMZYAL7TYV2ixwnbPObLObM0GmHSSFLV1KqsuFICUPgkyKoHbAH6XPgmtfOLU60VkGf1v5uxQ/kXCECRCJmPb3K9dIXGEw+1DXPdOV/xG7rJNvo4a9WK9iqqZr8p+VGKM6C017b8BDLk0tuEEjZ5jXcT/ka/hTScxWkKgF6auPOVQ79OA5+0VaYm4uQLzVUdgwVUPWQQecRrtnc08XYM1htpcLDIAbWfUNK7uE6XR3/OhtrJGf05FGbtGguPgi33F9W3Q3yw6saOK5Y3TfLbskgFaEdLgzqK/QSBRk2zBF49Tj test@localhost"
6 test 'create and update key' do
9 ak = AuthorizedKey.new(name: "foo", public_key: TEST_KEY, authorized_user_uuid: u1.uuid)
10 assert ak.save, ak.errors.full_messages.to_s
12 assert ak.valid?, ak.errors.full_messages.to_s
13 assert ak.save, ak.errors.full_messages.to_s
17 test 'duplicate key not permitted' do
20 ak = AuthorizedKey.new(name: "foo", public_key: TEST_KEY, authorized_user_uuid: u1.uuid)
23 u2 = users(:spectator)
25 ak2 = AuthorizedKey.new(name: "bar", public_key: TEST_KEY, authorized_user_uuid: u2.uuid)
28 assert_match(/already exists/, ak2.errors.full_messages.to_s)
32 test 'attach key to wrong user account' do
33 act_as_user users(:active) do
34 ak = AuthorizedKey.new(name: "foo", public_key: TEST_KEY)
35 ak.authorized_user_uuid = users(:spectator).uuid
38 ak.authorized_user_uuid = users(:admin).uuid
41 ak.authorized_user_uuid = users(:active).uuid
42 assert ak.save, ak.errors.full_messages.to_s
43 ak.authorized_user_uuid = users(:admin).uuid