Skip to content

Commit 233f8b2

Browse files
Merge pull request #149 from GitGuardian/jgriffe/fix-tests
chore: fix tests setup
2 parents 0c9c96d + 51c8353 commit 233f8b2

File tree

3 files changed

+15
-5
lines changed

3 files changed

+15
-5
lines changed

.env.example

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# Required to run tests
2+
GITGUARDIAN_API_KEY=----fillme----
3+
# This is used to select the member that will be deleted in the tests
4+
DELETE_MEMBER_EMAIL=----fillme----

scripts/setup_test_workspace.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
PaginatedDataType = TypeVar("PaginatedDataType", bound=FromDictWithBase)
4646

4747
MIN_NB_TEAM = 2
48-
MIN_NB_MEMBER = 3 # 1 owner, 1 manager and at least one member
48+
MIN_NB_MEMBER = 4 # 1 owner, 1 manager and at least two members
4949
MIN_NB_TEAM_MEMBER = 2
5050
# This is the team that is created in the tests, it should be deleted before we run the tests
5151
PYGITGUARDIAN_TEST_TEAM = "PyGitGuardian team"
@@ -106,8 +106,8 @@ def ensure_member_coherence():
106106
members = ensure_success(client.list_members(MembersParameters(per_page=5)))
107107

108108
assert (
109-
len(members.data) > MIN_NB_MEMBER
110-
), "There must be at least 3 members in the workspace"
109+
len(members.data) >= MIN_NB_MEMBER
110+
), f"There must be at least {MIN_NB_MEMBER} members in the workspace"
111111

112112

113113
def add_source_to_team(team: Team, available_sources: Iterable[Source] | None = None):

tests/test_client.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import json
2+
import os
23
import re
34
import tarfile
45
from collections import OrderedDict
@@ -1248,11 +1249,16 @@ def test_delete_member(client: GGClient):
12481249
WHEN calling DELETE /members/{id} endpoint
12491250
THEN the member is deleted
12501251
"""
1251-
1252+
# To be able to quickly recreate the membership, the email of the member to delete
1253+
# can be provided via an env var
1254+
email = os.environ.get("DELETE_MEMBER_EMAIL")
12521255
members = client.list_members(MembersParameters(access_level=AccessLevel.MEMBER))
12531256
assert isinstance(members, CursorPaginatedResponse), "Could not fetch members"
12541257

1255-
member = members.data[0]
1258+
member = next(
1259+
(member for member in members.data if member.email == email), members.data[0]
1260+
)
1261+
12561262
result = client.delete_member(DeleteMemberParameters(id=member.id))
12571263

12581264
assert result is None, result

0 commit comments

Comments
 (0)