Skip to content

Commit 7a56a81

Browse files
fix(functions): refactor functions
1 parent a9fc257 commit 7a56a81

File tree

2 files changed

+30
-45
lines changed

2 files changed

+30
-45
lines changed

src/opengeodeweb_back/geode_functions.py

Lines changed: 18 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -110,23 +110,15 @@ def get_geode_object_output_extensions(geode_object: str):
110110
return output_list
111111

112112

113-
def list_input_extensions(keys: list = []):
113+
def list_input_extensions(key: str = None):
114114
extensions_list = []
115115
for geode_object, value in objects_list().items():
116-
if keys:
117-
for key in keys:
118-
if key in value:
119-
if type(value[key]) == bool:
120-
if value[key] == True:
121-
extensions_list += get_geode_object_input_extensions(
122-
geode_object
123-
)
124-
else:
125-
extensions_list += get_geode_object_input_extensions(
126-
geode_object
127-
)
128-
else:
129-
continue
116+
if key != None and key in value:
117+
if type(value[key]) == bool:
118+
if value[key] == True:
119+
extensions_list += get_geode_object_input_extensions(geode_object)
120+
else:
121+
extensions_list += get_geode_object_input_extensions(geode_object)
130122
else:
131123
extensions_list += get_geode_object_input_extensions(geode_object)
132124

@@ -139,30 +131,24 @@ def has_creator(input_factories, extension: str):
139131
for input in input_factories:
140132
if input.has_creator(extension):
141133
return True
134+
return False
142135

143136

144-
def list_geode_objects(extension: str, keys: list = []):
137+
def list_geode_objects(extension: str, key: str = None):
145138
geode_objects_list = []
146139
for geode_object, value in objects_list().items():
147140
geode_object_input_factory = get_input_factory(geode_object)
148-
if keys:
149-
for key in keys:
150-
if key in value:
151-
if type(value[key]) == bool:
152-
if value[key] == True:
153-
if has_creator(geode_object_input_factory, extension):
154-
print(f"{geode_object=}")
155-
geode_objects_list.append(geode_object)
156-
else:
141+
if key != None:
142+
if key in value:
143+
if type(value[key]) == bool:
144+
if value[key] == True:
157145
if has_creator(geode_object_input_factory, extension):
158-
print(f"{geode_object=}")
159146
geode_objects_list.append(geode_object)
160-
else:
161-
continue
162-
else:
163-
if has_creator(geode_object_input_factory, extension):
164-
print(f"{geode_object=}")
165-
geode_objects_list.append(geode_object)
147+
elif has_creator(geode_object_input_factory, extension):
148+
geode_objects_list.append(geode_object)
149+
elif has_creator(geode_object_input_factory, extension):
150+
geode_objects_list.append(geode_object)
151+
166152
geode_objects_list.sort()
167153
return geode_objects_list
168154

tests/test_functions.py

Lines changed: 12 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ def test_list_input_extensions():
8181
def test_list_geode_objects():
8282
test_list = [
8383
{
84-
"keys_array": ["crs"],
84+
"key": "crs",
8585
"invalid_geode_objects": [
8686
"Graph",
8787
"RasterImage2D",
@@ -90,7 +90,7 @@ def test_list_geode_objects():
9090
],
9191
},
9292
{
93-
"keys_array": ["inspector"],
93+
"key": "inspector",
9494
"invalid_geode_objects": [
9595
"Graph",
9696
"RasterImage2D",
@@ -102,21 +102,20 @@ def test_list_geode_objects():
102102
},
103103
]
104104
for test in test_list:
105-
keys_array = test["keys_array"]
105+
key = test["key"]
106106
invalid_geode_objects = test["invalid_geode_objects"]
107107

108-
input_extensions = geode_functions.list_input_extensions(keys_array)
108+
input_extensions = geode_functions.list_input_extensions(key)
109109
for geode_object, value in geode_objects.objects_list().items():
110110
for input_extension in input_extensions:
111-
for keys in keys_array:
112-
print(f"{input_extension=}")
113-
print(f"{keys=}")
114-
geode_objects_list = geode_functions.list_geode_objects(
115-
input_extension, keys
116-
)
117-
assert type(geode_objects_list) is list
118-
for invalid_geode_object in invalid_geode_objects:
119-
assert invalid_geode_object not in geode_objects_list
111+
print(f"{input_extension=}")
112+
print(f"{key=}")
113+
geode_objects_list = geode_functions.list_geode_objects(
114+
input_extension, key
115+
)
116+
assert type(geode_objects_list) is list
117+
for invalid_geode_object in invalid_geode_objects:
118+
assert invalid_geode_object not in geode_objects_list
120119

121120

122121
def test_get_versions():

0 commit comments

Comments
 (0)