mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-05-07 08:57:12 +00:00
48 lines
1.5 KiB
Python
48 lines
1.5 KiB
Python
#!/usr/bin/env python3
|
|
"""Tests for scripts/sync_chart_release_metadata.py."""
|
|
|
|
from __future__ import annotations
|
|
|
|
import importlib.util
|
|
import unittest
|
|
from pathlib import Path
|
|
|
|
|
|
MODULE_PATH = Path(__file__).resolve().parents[1] / "sync_chart_release_metadata.py"
|
|
SPEC = importlib.util.spec_from_file_location("sync_chart_release_metadata", MODULE_PATH)
|
|
assert SPEC is not None and SPEC.loader is not None
|
|
MODULE = importlib.util.module_from_spec(SPEC)
|
|
SPEC.loader.exec_module(MODULE)
|
|
|
|
|
|
class SyncChartReleaseMetadataTest(unittest.TestCase):
|
|
def test_sync_chart_metadata_updates_versioned_links(self) -> None:
|
|
original = """apiVersion: v2
|
|
name: pulse
|
|
version: 5.1.7
|
|
appVersion: "5.1.7"
|
|
icon: https://raw.githubusercontent.com/rcourtman/Pulse/main/docs/images/pulse-logo.svg
|
|
annotations:
|
|
artifacthub.io/links: |
|
|
- name: Documentation
|
|
url: https://github.com/rcourtman/Pulse/blob/main/docs/KUBERNETES.md
|
|
- name: Support
|
|
url: https://github.com/rcourtman/Pulse/discussions
|
|
"""
|
|
|
|
updated = MODULE.sync_chart_metadata(original, "6.0.0-rc.1", "example/pulse")
|
|
|
|
self.assertIn("version: 6.0.0-rc.1", updated)
|
|
self.assertIn('appVersion: "6.0.0-rc.1"', updated)
|
|
self.assertIn(
|
|
"icon: https://raw.githubusercontent.com/example/pulse/v6.0.0-rc.1/docs/images/pulse-logo.svg",
|
|
updated,
|
|
)
|
|
self.assertIn(
|
|
"url: https://github.com/example/pulse/blob/v6.0.0-rc.1/docs/KUBERNETES.md",
|
|
updated,
|
|
)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|