Example #1
0
 def test_honor_build_dir_parameter(self):
     source = os.path.join(samurai_sys.top_dir, "b", "c")
     mkdir_p(source)
     build_dir = os.path.join(samurai_sys.top_dir, "custom_build")
     answer = os.path.join(build_dir, "b", "c")
     self.assertEqual(samurai_sys.get_default_build_dir_for(source, a_build_dir=build_dir), answer)
     self.assertEqual(samurai_sys.get_default_build_dir_for(PathLib(source), a_build_dir=build_dir), PathLib(answer))
Example #2
0
 def __init__(self, manifest, build_dir=None):
     manifest = Path(manifest)
     if manifest.is_dir():
         manifest /= samurai_sys.default_manifest
     if build_dir is None:
         build_dir = get_default_build_dir_for(manifest)
     super().__init__(manifest, build_dir)
Example #3
0
 def __init__(self, source_dir, build_dir=None, **kwds):
     source_dir = Path(source_dir)
     if not source_dir.is_dir():
         raise ValueError("source_dir '%s' is not a directory"
                          .format(source_dir))
     if build_dir is None:
         build_dir = get_default_build_dir_for(source_dir)
     super().__init__(build_dir=build_dir, **kwds)
     self._source_dir = source_dir
Example #4
0
 def test_source_is_dir(self):
     source = os.path.join(samurai_sys.top_dir, "b", "c")
     mkdir_p(source)
     answer = os.path.join(samurai_sys.build_dir, "b", "c")
     self.assertEqual(samurai_sys.get_default_build_dir_for(source), answer)
     self.assertEqual(samurai_sys.get_default_build_dir_for(PathLib(source)), PathLib(answer))
Example #5
0
 def test_source_is_file(self):
     source = os.path.join(samurai_sys.top_dir, "b", "c")
     touch(source, make_dirs=True)
     answer = os.path.join(samurai_sys.build_dir, "b")
     self.assertEqual(samurai_sys.get_default_build_dir_for(source), answer)
     self.assertEqual(samurai_sys.get_default_build_dir_for(PathLib(source)), PathLib(answer))
Example #6
0
 def test_source_not_a_subdir_of_top_dir(self):
     with self.assertRaisesRegex(ValueError, r"source is not a sub directory of the " "top directory"):
         samurai_sys.get_default_build_dir_for("/a/b/c", a_top_dir="/c/d")
Example #7
0
 def test_no_top_dir(self):
     samurai_sys.top_dir = None
     with self.assertRaisesRegex(ValueError, r"with no top directory"):
         samurai_sys.get_default_build_dir_for("a")