summaryrefslogtreecommitdiff
path: root/features/api/clients/show_client_api.feature
blob: 360284141c39e1d2f251aa7faee78eb74a3a1f9e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
@api @api_clients @clients_show
Feature: Show a client via the REST API 
  In order to know what the details are for a client 
  As a Developer
  I want to show the details for a specific client

  @oss_only
  Scenario: Show a client
    Given I am an administrator
      And a 'client' named 'isis' exists
     When I 'GET' the path '/clients/isis'
     Then the inflated response should respond to 'name' with 'isis'
      And the inflated response should respond to 'admin' with 'false'

  Scenario: Show a missing client
    Given I am an administrator
      And there are no clients 
     When I 'GET' the path '/clients/frankenstein'
     Then I should get a '404 "Not Found"' exception

  Scenario: Show a client with a wrong private key
    Given I am an administrator
      And a 'client' named 'isis' exists
     When I 'GET' the path '/clients/isis' using a wrong private key
     Then I should get a '401 "Unauthorized"' exception

  @oss_only
  Scenario: Show a client when you are not an admin
    Given I am a non-admin
      And a 'client' named 'isis' exists
     When I 'GET' the path '/clients/isis'
     Then I should get a '403 "Forbidden"' exception