Exemple #1
0
 def test_get_keys_for_user_with_keys(self):
     user1, created_keys = factory.make_user_with_ssl_keys(n_keys=3,
                                                           username='******')
     # user2
     factory.make_user_with_ssl_keys(n_keys=2)
     keys = SSLKey.objects.get_keys_for_user(user1)
     self.assertItemsEqual([key.key for key in created_keys], keys)
Exemple #2
0
 def test_get_by_id_fails_for_non_owner_as_admin(self):
     _, keys = factory.make_user_with_ssl_keys(n_keys=1)
     factory.make_user_with_ssl_keys(n_keys=1, user=self.user)
     self.become_admin()
     key = keys[0]
     response = self.client.get(reverse("sslkey_handler", args=[key.id]))
     self.assertEqual(http.client.FORBIDDEN, response.status_code, response)
Exemple #3
0
 def test_list_only_shows_user_keys(self):
     # other user
     factory.make_user_with_ssl_keys(n_keys=2)
     _, keys = factory.make_user_with_ssl_keys(n_keys=2, user=self.user)
     response = self.client.get(reverse("sslkeys_handler"))
     self.assertEqual(http.client.OK, response.status_code, response)
     parsed_result = json.loads(
         response.content.decode(settings.DEFAULT_CHARSET))
     parsed_result = [result["resource_uri"] for result in parsed_result]
     expected_result = [
         reverse("sslkey_handler", args=[keys[0].id]),
         reverse("sslkey_handler", args=[keys[1].id]),
     ]
     self.assertItemsEqual(expected_result, parsed_result)
Exemple #4
0
 def test_delete_fails_if_not_your_key(self):
     user, keys = factory.make_user_with_ssl_keys(n_keys=1)
     response = self.client.delete(
         reverse("sslkey_handler", args=[keys[0].id])
     )
     self.assertEqual(http.client.FORBIDDEN, response.status_code, response)
     self.assertEqual(1, len(SSLKey.objects.filter(user=user)))
Exemple #5
0
 def test_delete_by_id_works(self):
     _, keys = factory.make_user_with_ssl_keys(n_keys=2, user=self.user)
     response = self.client.delete(
         reverse('sslkey_handler', args=[keys[0].id]))
     self.assertEqual(http.client.NO_CONTENT, response.status_code,
                      response)
     keys_after = SSLKey.objects.filter(user=self.user)
     self.assertEqual(1, len(keys_after))
     self.assertEqual(keys[1].id, keys_after[0].id)
Exemple #6
0
 def test_list_sorts_output(self):
     _, keys = factory.make_user_with_ssl_keys(n_keys=2, user=self.user)
     response = self.client.get(reverse('sslkeys_handler'))
     self.assertEqual(http.client.OK, response.status_code, response)
     parsed_result = json.loads(
         response.content.decode(settings.DEFAULT_CHARSET))
     parsed_result = [result['resource_uri'] for result in parsed_result]
     expected_result = [
         reverse('sslkey_handler', args=[keys[0].id]),
         reverse('sslkey_handler', args=[keys[1].id]),
     ]
     self.assertEqual(expected_result, parsed_result)
Exemple #7
0
 def test_get_by_id_works(self):
     _, keys = factory.make_user_with_ssl_keys(n_keys=1, user=self.user)
     key = keys[0]
     response = self.client.get(reverse("sslkey_handler", args=[key.id]))
     self.assertEqual(http.client.OK, response.status_code, response)
     parsed_result = json.loads(
         response.content.decode(settings.DEFAULT_CHARSET))
     expected = dict(
         id=key.id,
         key=key.key,
         resource_uri=reverse("sslkey_handler", args=[key.id]),
     )
     self.assertEqual(expected, parsed_result)
Exemple #8
0
 def test_delete_by_id_works_and_creates_audit_event(self):
     _, keys = factory.make_user_with_ssl_keys(n_keys=2, user=self.user)
     response = self.client.delete(
         reverse("sslkey_handler", args=[keys[0].id]))
     self.assertEqual(http.client.NO_CONTENT, response.status_code,
                      response)
     keys_after = SSLKey.objects.filter(user=self.user)
     event = Event.objects.get(type__level=AUDIT)
     self.assertEqual(1, len(keys_after))
     self.assertEqual(keys[1].id, keys_after[0].id)
     self.assertIsNotNone(event)
     self.assertEqual(event.description,
                      "Deleted SSL key id='%s'." % keys[0].id)