Commit 97911cca authored by shota niioka's avatar shota niioka Committed by Yas Naoi
Browse files

Issue #3282213 by shota niioka, kumikoono, yas: Add a BDD test suite for K8s...

Issue #3282213 by shota niioka, kumikoono, yas: Add a BDD test suite for K8s Resource Quotas (Read and Update)
parent 62dcb367
Loading
Loading
Loading
Loading
+55 −19
Original line number Diff line number Diff line
@minimal @ci_job
Feature: Create and delete a resource quota for K8s as "Authenticated User"
Feature: Create, read, update and delete a resource quota for K8s as "Authenticated User"

  @api @javascript
  Scenario: Create a resource quota
@@ -10,22 +10,14 @@ Feature: Create and delete a resource quota for K8s as "Authenticated User"
    And I fill in "Detail" with:
    """
    apiVersion: v1
    kind: List
    items:
    - apiVersion: v1
    kind: ResourceQuota
    metadata:
      name: {{ resource_quota_name }}
    spec:
      hard:
          cpu: "1000"
          memory: 200Gi
          pods: "10"
        scopeSelector:
          matchExpressions:
          - operator : In
            scopeName: PriorityClass
            values: ["high"]
        cpu: "{{ resource_quota_cpu }}"
        memory: "{{ resource_quota_memory }}"
        pods: "{{ resource_quota_pod_count }}"
    """
    And I press "Save"
    And I wait for AJAX to finish
@@ -34,6 +26,50 @@ Feature: Create and delete a resource quota for K8s as "Authenticated User"
    And I should see neither error nor warning messages
    And I should see "{{ resource_quota_name }}" in the "{{ namespace }}" row

  @api @javascript
  Scenario: Read the resource quota
    Given I am logged in as user "{{ user_name }}"
    When I visit "/clouds/k8s/{{ cloud_context }}/resource_quota"
    And I click "Refresh"
    And I wait {{ wait }} milliseconds
    And I should see the link "{{ resource_quota_name }}"
    And I click "{{ resource_quota_name }}"
    Then the url should match "/clouds/k8s/{{ cloud_context }}/resource_quota/"
    And I should see "{{ resource_quota_name }}"
    And I should see "{{ namespace }}"
    And I should see neither error nor warning messages

  @api @javascript
  Scenario: Update the resource quota
    Given I am logged in as user "{{ user_name }}"
    When I visit "/clouds/k8s/{{ cloud_context }}/resource_quota"
    And I click "Refresh"
    And I wait {{ wait }} milliseconds
    And I should see the link "{{ resource_quota_name }}"
    And I click "{{ resource_quota_name }}"
    Then the url should match "/clouds/k8s/{{ cloud_context }}/resource_quota/"
    And I click "Edit"
    And I fill in "Detail" with:
    """
    apiVersion: v1
    kind: ResourceQuota
    metadata:
      name: {{ resource_quota_name }}
    spec:
      hard:
        cpu: "{{ resource_quota_cpu_edit }}"
        memory: "{{ resource_quota_memory }}"
        pods: "{{ resource_quota_pod_count }}"
    """
    And I press "Save"
    And I wait for AJAX to finish
    Then I should be on "/clouds/k8s/{{ cloud_context }}/resource_quota"
    And I should see the success message "has been updated"
    And I should see neither error nor warning messages
    And I click "{{ resource_quota_name }}"
    Then the url should match "/clouds/k8s/{{ cloud_context }}/resource_quota/"
    And I should see "{{ resource_quota_cpu_edit }}"

  @api @javascript
  Scenario: Delete the resource quota
    Given I am logged in as user "{{ user_name }}"
@@ -42,9 +78,9 @@ Feature: Create and delete a resource quota for K8s as "Authenticated User"
    And I wait {{ wait }} milliseconds
    And I should see the link "{{ resource_quota_name }}"
    And I click "{{ resource_quota_name }}"
    And the url should match "/k8s/{{ cloud_context }}/resource_quota/"
    Then the url should match "/clouds/k8s/{{ cloud_context }}/resource_quota/"
    And I click "Delete" in the "actions"
    And the url should match "/delete"
    Then the url should match "/delete"
    And I press "Delete"
    And I wait for AJAX to finish
    Then I should be on "/clouds/k8s/{{ cloud_context }}/resource_quota"
+8 −0
Original line number Diff line number Diff line
@@ -115,8 +115,16 @@ replica_count_edit:
  2
replicaset_name:
  bdd-replicaset-@random
resource_quota_cpu:
  500m
resource_quota_cpu_edit:
  700m
resource_quota_memory:
  200Gi
resource_quota_name:
  bdd-resource-quota-@random
resource_quota_pod_count:
  10
role_api:
  apps
role_binding_api: