Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/cron-main-e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ on:
jobs:
build:
runs-on: ubuntu-latest
timeout-minutes: 15
timeout-minutes: 20
steps:
- name: "Checkout"
uses: actions/checkout@v4
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pr-build-merge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
build:

runs-on: ubuntu-latest
timeout-minutes: 15
timeout-minutes: 20

steps:
- name: "Checkout"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
build:

runs-on: ubuntu-latest
timeout-minutes: 15
timeout-minutes: 20

steps:
- name: "Checkout"
Expand Down
27 changes: 27 additions & 0 deletions tests/e2e/accounts/account/conftest.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
import pytest


@pytest.fixture
def invalid_account_id():
return "ACC-0000-0000"


@pytest.fixture
def account_factory():
def _account(
name: str = "E2E Test Api Client Vendor",
):
return {
"name": name,
"address": {
"addressLine1": "123 Test St",
"city": "San Francisco",
"state": "CA",
"postCode": "12345",
"country": "US",
},
"type": "Vendor",
"status": "Active",
}

return _account
28 changes: 28 additions & 0 deletions tests/e2e/accounts/api_tokens/conftest.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
import pytest


@pytest.fixture
def api_token_id(e2e_config):
return e2e_config["accounts.api_token.id"]


@pytest.fixture
def invalid_api_token_id():
return "TKN-0000-0000"


@pytest.fixture
def api_token_factory(account_id, module_id):
def _api_token(
name: str = "E2E Test API Token",
description: str = "E2E API Token created during E2E tests",
):
return {
"account": {"id": account_id},
"name": name,
"description": description,
"icon": "",
"modules": [{"id": module_id}],
}

return _api_token
39 changes: 39 additions & 0 deletions tests/e2e/accounts/buyers/conftest.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
import pytest


@pytest.fixture
def invalid_buyer_id():
return "BUY-0000-0000"


@pytest.fixture
def buyer_account_id(e2e_config):
return e2e_config["accounts.buyer.account.id"]


@pytest.fixture
def buyer_factory(buyer_account_id):
def _buyer(
name="E2E Created Buyer",
account_id: str = buyer_account_id,
):
return {
"name": name,
"account": {
"id": account_id,
},
"contact": {
"firstName": "first",
"lastName": "last",
"email": "created.buyer@example.com",
},
"address": {
"addressLine1": "123 Main St",
"city": "Anytown",
"state": "CA",
"postCode": "12345",
"country": "US",
},
}

return _buyer
124 changes: 15 additions & 109 deletions tests/e2e/accounts/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,79 +19,33 @@ def currencies():


@pytest.fixture
def seller_factory(currencies):
def _seller(
external_id: str, # Must be unique in Marketplace
name="E2E Test Seller",
currencies=currencies,
):
return {
"name": name,
"address": {
"addressLine1": "123 Main St",
"city": "Anytown",
"state": "CA",
"postCode": "12345",
"country": "US",
},
"currencies": currencies,
"externalId": external_id,
}

return _seller
def account_id(e2e_config):
return e2e_config["accounts.account.id"]


@pytest.fixture
def account_factory():
def _account(
name: str = "E2E Test Api Client Vendor",
):
return {
"name": name,
"address": {
"addressLine1": "123 Test St",
"city": "San Francisco",
"state": "CA",
"postCode": "12345",
"country": "US",
},
"type": "Vendor",
"status": "Active",
}
def seller_id(e2e_config):
return e2e_config["accounts.seller.id"]

return _account

@pytest.fixture
def buyer_id(e2e_config):
return e2e_config["accounts.buyer.id"]


@pytest.fixture
def buyer_factory(buyer_account_id):
def _buyer(
name="E2E Created Buyer",
account_id: str = buyer_account_id,
):
return {
"name": name,
"account": {
"id": account_id,
},
"contact": {
"firstName": "first",
"lastName": "last",
"email": "created.buyer@example.com",
},
"address": {
"addressLine1": "123 Main St",
"city": "Anytown",
"state": "CA",
"postCode": "12345",
"country": "US",
},
}
def user_group_id(e2e_config):
return e2e_config["accounts.user_group.id"]


return _buyer
@pytest.fixture
def module_id(e2e_config):
return e2e_config["accounts.module.id"]


@pytest.fixture
def user_group_factory(account_id, module_id):
# Used in user group and licensee fixtures
def _user_group(
name: str = "E2E Test Api Client User Group",
user_group_account_id: str = account_id,
Expand All @@ -106,51 +60,3 @@ def _user_group(
}

return _user_group


@pytest.fixture
def api_token_factory(account_id, module_id):
def _api_token(
name: str = "E2E Test API Token",
description: str = "E2E API Token created during E2E tests",
):
return {
"account": {"id": account_id},
"name": name,
"description": description,
"icon": "",
"modules": [{"id": module_id}],
}

return _api_token


@pytest.fixture
def licensee_factory(seller_id, buyer_id, user_group_factory, licensee_account_id):
def _licensee(
name: str = "Test E2E Licensee",
licensee_type: str = "Client",
):
group = user_group_factory(user_group_account_id=licensee_account_id)

return {
"name": name,
"address": {
"addressLine1": "456 Licensee St",
"city": "Los Angeles",
"state": "CA",
"postCode": "67890",
"country": "US",
},
"useBuyerAddress": False,
"seller": {"id": seller_id},
"buyer": {"id": buyer_id},
"account": {"id": licensee_account_id},
"eligibility": {"client": True, "partner": False},
"groups": [group],
"type": licensee_type,
"status": "Enabled",
"defaultLanguage": "en-US",
}

return _licensee
52 changes: 52 additions & 0 deletions tests/e2e/accounts/licensees/conftest.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
import pytest


@pytest.fixture
def licensee_account_id(e2e_config):
return e2e_config["accounts.licensee.account.id"]


@pytest.fixture
def licensee_group_id(e2e_config):
return e2e_config["accounts.licensee.group.id"]


@pytest.fixture
def licensee_id(e2e_config):
return e2e_config["accounts.licensee.id"]


@pytest.fixture
def invalid_licensee_id():
return "LCE-0000-0000-0000"


@pytest.fixture
def licensee_factory(seller_id, buyer_id, user_group_factory, licensee_account_id):
def _licensee(
name: str = "Test E2E Licensee",
licensee_type: str = "Client",
):
group = user_group_factory(user_group_account_id=licensee_account_id)

return {
"name": name,
"address": {
"addressLine1": "456 Licensee St",
"city": "Los Angeles",
"state": "CA",
"postCode": "67890",
"country": "US",
},
"useBuyerAddress": False,
"seller": {"id": seller_id},
"buyer": {"id": buyer_id},
"account": {"id": licensee_account_id},
"eligibility": {"client": True, "partner": False},
"groups": [group],
"type": licensee_type,
"status": "Enabled",
"defaultLanguage": "en-US",
}

return _licensee
11 changes: 11 additions & 0 deletions tests/e2e/accounts/modules/conftest.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import pytest


@pytest.fixture
def invalid_module_id():
return "MOD-0000"


@pytest.fixture
def module_name(e2e_config):
return e2e_config["accounts.module.name"]
29 changes: 29 additions & 0 deletions tests/e2e/accounts/sellers/conftest.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
import pytest


@pytest.fixture
def invalid_seller_id():
return "SEL-0000-0000"


@pytest.fixture
def seller_factory(currencies):
def _seller(
external_id: str, # Must be unique in Marketplace
name="E2E Test Seller",
currencies=currencies,
):
return {
"name": name,
"address": {
"addressLine1": "123 Main St",
"city": "Anytown",
"state": "CA",
"postCode": "12345",
"country": "US",
},
"currencies": currencies,
"externalId": external_id,
}

return _seller
6 changes: 6 additions & 0 deletions tests/e2e/accounts/user_groups/conftest.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
import pytest


@pytest.fixture
def invalid_user_group_id():
return "UGR-0000-0000"
Loading