11 from vstf.agent.env.basic.source_manager import SourceCodeManager
12 from vstf.agent.unittest.env import model
15 class TestSourceManager(model.Test):
17 super(TestSourceManager, self).setUp()
18 self.sm = SourceCodeManager()
19 self.dest_path = '/tmp/test_source_manager'
20 os.mkdir(self.dest_path)
23 shutil.rmtree(self.dest_path, ignore_errors = True)
27 start_time = time.time()
29 end_time = time.time()
30 return end_time - start_time
33 def test_download_source_code(self):
34 for key, item in self.source_repo.items():
35 print self.source_repo
37 target = os.path.join(self.dest_path, key)
38 install = item['install']
40 self.sm._git_pull(url, target)
41 self.assertTrue(os.path.isdir(target))
42 my_download = self._time(self.sm._git_pull)
43 t = my_download(url, target)
44 self.assertTrue(t < 1.0)
46 self.assertFalse(os.path.isdir(target))
49 if __name__ == "__main__":
51 logging.basicConfig(level = logging.INFO)
52 LOG = logging.getLogger(__name__)