Uploaded image for project: 'Subscription Watch'
  1. Subscription Watch
  2. SWATCH-3330

Fix test "test_capacity_when_sku_updates"

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Undefined Undefined
    • None
    • None
    • None
    • None

      The test now fails because it uses a SKU that is in the deny list:

      requests.exceptions.HTTPError: 403 Client Error: Forbidden for url: http://swatch-contracts-service:8000/api/swatch-contracts/internal/rpc/offerings/sync/RH01157
      

      Output:

      application = <iqe.base.application.Application object at 0x7f89f31a2750>
      tally_db_session = <sqlalchemy.orm.session.Session object at 0x7f8a1773d4f0>
      
          @pytest.mark.ephemeral_only
          @pytest.mark.ephemeral
          def test_capacity_when_sku_updates(application, tally_db_session):
              """Validate sku/offering update correctly updates the capacity number.
              metadata:
                  assignee: nkathole
                  negative: false
                  bugzilla: SWATCH-1809
                  requirements: capacity
                  test_steps:
                      1. Create sku in account.
                      2. Sync capacity for account.
                      3. Update engineering ID on SKU/offering.
                      4. Sync capacity again for account.
                      5. Verify capacity updated as per engineering ID update.
                  expected_results:
                      1. After capacity re-sync capacity numbers and table updated correctly.
              """
              application.rhsm_subscriptions.add_sku(
                  "RH00004", quantity=1, count=1, wait=True, product_id="RHEL for x86"
              )
              sku_query = "SELECT distinct sku from sku_oid WHERE oid IN (76,71,479,69)"
              res = tally_db_session.execute(sku_query)
              result = [row for row in res]
              rhel_skus = {row[0] for row in result}
              try:
                  delete_query = "DELETE FROM sku_product_tag WHERE product_tag = 'RHEL for x86'"
                  tally_db_session.execute(delete_query)
                  application.rhsm_subscriptions.sync_capacity(wait=True)
                  assert not application.rhsm_subscriptions.get_skus_report(product_id="RHEL for x86")["data"]
              finally:
                  for sku in rhel_skus:
      >               application.rhsm_subscriptions.sync_offering(sku)
      
      /iqe_venv/lib64/python3.12/site-packages/iqe_rhsm_subscriptions/tests/integration/swatch_tally/test_tally_database.py:108: 
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      /iqe_venv/lib64/python3.12/site-packages/iqe_rhsm_subscriptions/__init__.py:937: in sync_offering
          self.application.rhsm_subscriptions.rhsm_internal_api.contracts.sync_sku_for_capacity(sku)
      /iqe_venv/lib64/python3.12/site-packages/iqe_rhsm_subscriptions/internal_apis/swatch_contracts.py:359: in sync_sku_for_capacity
          self.call(
      /iqe_venv/lib64/python3.12/site-packages/iqe_rhsm_subscriptions/internal_apis/__init__.py:148: in call
          response.raise_for_status()
      _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
      
      self = <Response [403]>
      

              jcarvaja@redhat.com Jose Carvajal Hilario
              jcarvaja@redhat.com Jose Carvajal Hilario
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: