You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 line
1.0KB

  1. from contextlib import contextmanager
  2. from tests import DDS
  3. from tests.fileutil import ensure_dir, set_contents
  4. def test_build_empty(dds: DDS):
  5. assert not dds.source_root.exists()
  6. dds.scope.enter_context(ensure_dir(dds.source_root))
  7. dds.build()
  8. def test_build_simple(dds: DDS):
  9. dds.scope.enter_context(
  10. set_contents(dds.source_root / 'src/f.cpp', b'void foo() {}'))
  11. dds.build()
  12. def basic_pkg_dds(dds: DDS):
  13. return set_contents(
  14. dds.source_root / 'package.json5', b'''
  15. {
  16. name: 'test-pkg',
  17. version: '0.2.2',
  18. namespace: 'test',
  19. }
  20. ''')
  21. def test_empty_with_pkg_dds(dds: DDS):
  22. dds.scope.enter_context(basic_pkg_dds(dds))
  23. dds.build()
  24. def test_empty_with_lib_dds(dds: DDS):
  25. dds.scope.enter_context(basic_pkg_dds(dds))
  26. dds.build()
  27. def test_empty_sdist_create(dds: DDS):
  28. dds.scope.enter_context(basic_pkg_dds(dds))
  29. dds.sdist_create()
  30. def test_empty_sdist_export(dds: DDS):
  31. dds.scope.enter_context(basic_pkg_dds(dds))
  32. dds.sdist_export()