diff options
| author | Joseph Hunkeler <jhunkeler@gmail.com> | 2026-04-07 14:36:42 -0400 |
|---|---|---|
| committer | Joseph Hunkeler <jhunkeler@gmail.com> | 2026-04-07 14:36:42 -0400 |
| commit | b2408704c5534faa6050b298913b31f0c10376c8 (patch) | |
| tree | fdb0e7e375df7a55adf9b558da2063eb279c29bc /tests/test_wheel.c | |
| parent | cd852acd7e1feb5c35a37f9365e1e1b4658ca2f7 (diff) | |
| download | stasis-b2408704c5534faa6050b298913b31f0c10376c8.tar.gz | |
Directly test getting the value of least one keyword per list
Diffstat (limited to 'tests/test_wheel.c')
| -rw-r--r-- | tests/test_wheel.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/tests/test_wheel.c b/tests/test_wheel.c index 089bac1..1eabb1b 100644 --- a/tests/test_wheel.c +++ b/tests/test_wheel.c @@ -33,7 +33,22 @@ static void test_wheel_package() { STASIS_ASSERT(wheel->metadata->name != NULL, "Metadata::name cannot be NULL"); STASIS_ASSERT(wheel->metadata->version != NULL, "Metadata::version cannot be NULL"); STASIS_ASSERT(wheel->metadata->metadata_version != NULL, "Metadata::version (of metadata) cannot be NULL"); + + // Implied test against key/id getters. If wheel_show_info segfaults, that functionality is broken. STASIS_ASSERT(wheel_show_info(wheel) == 0, "wheel_show_info should never fail. Enum(s) might be out of sync with META_*_KEYS array(s)"); + + // Get data from DIST + const struct WheelValue dist_version = wheel_get_value_by_name(wheel, WHEEL_FROM_DIST, "Wheel-Version"); + STASIS_ASSERT(dist_version.type == WHEELVAL_STR, "Wheel dist version value must be a string"); + STASIS_ASSERT_FATAL(dist_version.data != NULL, "Wheel dist version value must not be NULL"); + STASIS_ASSERT(dist_version.count, "Wheel value must be populated"); + + // Get data from METADATA + const struct WheelValue meta_name = wheel_get_value_by_name(wheel, WHEEL_FROM_METADATA, "Metadata-Version"); + STASIS_ASSERT(meta_name.type == WHEELVAL_STR, "Wheel metadata version value must be a string"); + STASIS_ASSERT_FATAL(meta_name.data != NULL, "Wheel metadata version value must not be NULL"); + STASIS_ASSERT(meta_name.count, "Wheel metadata version value must be populated"); + wheel_package_free(&wheel); STASIS_ASSERT(wheel == NULL, "wheel struct should be NULL after free"); } |
