Files
product-vamp/tests/test_publish_package.py
khodowany bc7baea7c4
ci / checks (push) Failing after 23m22s
Cleanup
2026-10-08 02:13:45 -05:00

32 lines
1.5 KiB
Python

import pathlib
import tempfile
import unittest
import unittest.mock
import modulus.artifacts
import modulus.build_context
import modulus.packaging
import modulus.process
import modulus.config
import modulus.python
class PackagePublishingTests(unittest.TestCase):
def test_configured_packager_matches_publisher(self):
root = pathlib.Path(__file__).resolve().parents[1]
with tempfile.TemporaryDirectory() as temporary:
directory = pathlib.Path(temporary)
context = modulus.build_context.build_context(directory, modulus.config.load_repo_config(root))
def fake_build(context, command, **kwargs):
if command[:2] == ['cmake', '--install']:
stage = pathlib.Path(command[2]).parent / 'stage'
(stage / 'manifest.json').write_text('{}\n')
return 0
with unittest.mock.patch.object(modulus.process, 'in_docker', return_value=True), \
unittest.mock.patch.object(modulus.process, 'run', side_effect=fake_build), \
unittest.mock.patch.object(modulus.python, 'interpreter', return_value=pathlib.Path('/usr/bin/python3')), \
unittest.mock.patch.object(modulus.artifacts, 'main') as publish:
self.assertEqual(modulus.packaging.package_artifacts(context, ['--no-remote']), 0)
publish.assert_not_called()
artifacts = modulus.artifacts.discover_artifacts(directory / 'build/packages', context.package['name'], context.artifact['targets'])
self.assertEqual([p.name for p in artifacts], ['product_vamp_arm_64_gcc12_release.tar.gz', 'product_vamp_arm_64_gcc12_release.tar.gz.sha256'])