Skip to content

Commit 7e0ed1a

Browse files
jor2Jordan-Williams2
andauthored
fix: Incorrect description for search results (#48)
* fix: Incorrect description for search results * fix: Incorrect description for search results * fix: pre-commit hooks --------- Co-authored-by: Jordan-Williams2 <[email protected]>
1 parent d218564 commit 7e0ed1a

File tree

4 files changed

+398
-143
lines changed

4 files changed

+398
-143
lines changed

test/test_clients.py

Lines changed: 33 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -136,13 +136,17 @@ async def test_search_modules(self, terraform_client, mock_cache):
136136
@pytest.mark.asyncio
137137
async def test_get_module_versions(self, terraform_client, mock_cache):
138138
"""Test getting module versions."""
139-
# Setup
139+
# Setup - use correct nested API structure
140140
mock_response = MagicMock()
141141
mock_response.json.return_value = {
142142
"modules": [
143-
{"version": "1.0.0"},
144-
{"version": "1.1.0"},
145-
{"version": "1.2.0"},
143+
{
144+
"versions": [
145+
{"version": "1.0.0"},
146+
{"version": "1.1.0"},
147+
{"version": "1.2.0"},
148+
]
149+
}
146150
]
147151
}
148152
mock_response.raise_for_status = MagicMock()
@@ -154,27 +158,31 @@ async def test_get_module_versions(self, terraform_client, mock_cache):
154158
"hashicorp", "consul", "aws"
155159
)
156160

157-
# Verify
158-
assert result == ["1.0.0", "1.1.0", "1.2.0"]
161+
# Verify - sorted in descending order (latest first)
162+
assert result == ["1.2.0", "1.1.0", "1.0.0"]
159163
terraform_client.client.get.assert_called_once_with(
160164
"/modules/hashicorp/consul/aws/versions"
161165
)
162166

163167
@pytest.mark.asyncio
164168
async def test_get_module_versions_filters_prerelease(self, terraform_client, mock_cache):
165169
"""Test that pre-release versions are filtered out."""
166-
# Setup - mix of stable and pre-release versions
170+
# Setup - mix of stable and pre-release versions with correct nested structure
167171
mock_response = MagicMock()
168172
mock_response.json.return_value = {
169173
"modules": [
170-
{"version": "1.0.0"},
171-
{"version": "1.1.0-beta"},
172-
{"version": "1.2.0"},
173-
{"version": "2.0.0-draft"},
174-
{"version": "2.0.1-draft-addons"}, # Real example from issue #20
175-
{"version": "2.1.0-rc.1"},
176-
{"version": "2.2.0"},
177-
{"version": "3.0.0-alpha"},
174+
{
175+
"versions": [
176+
{"version": "1.0.0"},
177+
{"version": "1.1.0-beta"},
178+
{"version": "1.2.0"},
179+
{"version": "2.0.0-draft"},
180+
{"version": "2.0.1-draft-addons"}, # Real example from issue #20
181+
{"version": "2.1.0-rc.1"},
182+
{"version": "2.2.0"},
183+
{"version": "3.0.0-alpha"},
184+
]
185+
}
178186
]
179187
}
180188
mock_response.raise_for_status = MagicMock()
@@ -186,22 +194,26 @@ async def test_get_module_versions_filters_prerelease(self, terraform_client, mo
186194
"terraform-ibm-modules", "db2-cloud", "ibm"
187195
)
188196

189-
# Verify - only stable versions returned
190-
assert result == ["1.0.0", "1.2.0", "2.2.0"]
197+
# Verify - only stable versions returned, sorted descending (latest first)
198+
assert result == ["2.2.0", "1.2.0", "1.0.0"]
191199
terraform_client.client.get.assert_called_once_with(
192200
"/modules/terraform-ibm-modules/db2-cloud/ibm/versions"
193201
)
194202

195203
@pytest.mark.asyncio
196204
async def test_get_module_versions_all_prerelease(self, terraform_client, mock_cache):
197205
"""Test behavior when all versions are pre-release."""
198-
# Setup - only pre-release versions
206+
# Setup - only pre-release versions with correct nested structure
199207
mock_response = MagicMock()
200208
mock_response.json.return_value = {
201209
"modules": [
202-
{"version": "1.0.0-beta"},
203-
{"version": "1.1.0-alpha"},
204-
{"version": "2.0.0-rc.1"},
210+
{
211+
"versions": [
212+
{"version": "1.0.0-beta"},
213+
{"version": "1.1.0-alpha"},
214+
{"version": "2.0.0-rc.1"},
215+
]
216+
}
205217
]
206218
}
207219
mock_response.raise_for_status = MagicMock()

0 commit comments

Comments
 (0)