Skip to content

Commit e5407e1

Browse files
committed
Merge branch 'develop' into jt/al-1921
2 parents 9e5e1ab + a237ffe commit e5407e1

File tree

4 files changed

+23
-11
lines changed

4 files changed

+23
-11
lines changed

labelbox/schema/organization.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import json
2-
from typing import TYPE_CHECKING, List, Optional
2+
from typing import TYPE_CHECKING, List, Optional, Dict
33

44
from labelbox.exceptions import LabelboxError
55
from labelbox import utils
@@ -129,7 +129,7 @@ def remove_user(self, user: "User") -> None:
129129
updateUser(where: {id: $%s}, data: {deleted: true}) { id deleted }
130130
}""" % (user_id_param, user_id_param), {user_id_param: user.uid})
131131

132-
def create_resource_tag(self, tag=None) -> ResourceTag:
132+
def create_resource_tag(self, tag: Dict[str, str]) -> ResourceTag:
133133
"""
134134
Creates a resource tag.
135135
>>> tag = {'text': 'tag-1', 'color': 'ffffff'}
@@ -148,9 +148,13 @@ def create_resource_tag(self, tag=None) -> ResourceTag:
148148
query.results_query_part(ResourceTag))
149149

150150
params = {
151-
tag_text_param: tag.get("text", ""),
152-
tag_color_param: tag.get("color", "")
151+
tag_text_param: tag.get("text", None),
152+
tag_color_param: tag.get("color", None)
153153
}
154+
if not all(params.values()):
155+
raise ValueError(
156+
f"tag must contain 'text' and 'color' keys. received: {tag}")
157+
154158
res = self.client.execute(query_str, params)
155159
return ResourceTag(self.client, res['createResourceTag'])
156160

tests/integration/test_batch.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ def big_dataset(dataset: Dataset):
1616
task.wait_till_done()
1717

1818
yield dataset
19-
dataset.delete()
2019

2120

2221
def test_create_batch(configured_project: Project, big_dataset: Dataset):

tests/integration/test_data_row_metadata.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@ def big_dataset(dataset: Dataset, image_url):
4646
task.wait_till_done()
4747

4848
yield dataset
49-
dataset.delete()
5049

5150

5251
def make_metadata(dr_id) -> DataRowMetadata:

tests/integration/test_project.py

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import json
21
import time
32
import os
43

@@ -44,11 +43,19 @@ def test_project(client, rand_gen):
4443
assert set(final) == set(before)
4544

4645

47-
@pytest.mark.skip(
48-
reason="this will fail if run multiple times, limit is defaulted to 3 per org"
49-
"add this back in when either all test orgs have unlimited, or we delete all tags befoer running"
50-
)
5146
def test_update_project_resource_tags(client, rand_gen):
47+
48+
def delete_tag(tag_id: str):
49+
"""Deletes a tag given the tag uid. Currently internal use only so this is not public"""
50+
res = client.execute(
51+
"""mutation deleteResourceTagPyApi($tag_id: String!) {
52+
deleteResourceTag(input: {id: $tag_id}) {
53+
id
54+
}
55+
}
56+
""", {"tag_id": tag_id})
57+
return res
58+
5259
before = list(client.get_projects())
5360
for o in before:
5461
assert isinstance(o, Project)
@@ -92,6 +99,9 @@ def test_update_project_resource_tags(client, rand_gen):
9299
assert len(project_resource_tag) == 1
93100
assert project_resource_tag[0].uid == tagA.uid
94101

102+
delete_tag(tagA.uid)
103+
delete_tag(tagB.uid)
104+
95105

96106
def test_project_filtering(client, rand_gen):
97107
name_1 = rand_gen(str)

0 commit comments

Comments
 (0)