blob: fda567d83e996c29a3736ce2a90adbdecaa89e93 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
"""
Created on 2015-10-9
@author: y00228926
"""
import unittest
import shutil
import time
import os
from vstf.agent.env.basic.source_manager import SourceCodeManager
from vstf.agent.unittest.env import model
class TestSourceManager(model.Test):
def setUp(self):
super(TestSourceManager, self).setUp()
self.sm = SourceCodeManager()
self.dest_path = '/tmp/test_source_manager'
os.mkdir(self.dest_path)
def tearDown(self):
shutil.rmtree(self.dest_path, ignore_errors = True)
def _time(self,func):
def _deco(*args):
start_time = time.time()
func(*args)
end_time = time.time()
return end_time - start_time
return _deco
def test_download_source_code(self):
for key, item in self.source_repo.items():
print self.source_repo
url = item['url']
target = os.path.join(self.dest_path, key)
install = item['install']
if install:
self.sm._git_pull(url, target)
self.assertTrue(os.path.isdir(target))
my_download = self._time(self.sm._git_pull)
t = my_download(url, target)
self.assertTrue(t < 1.0)
else:
self.assertFalse(os.path.isdir(target))
if __name__ == "__main__":
import logging
logging.basicConfig(level = logging.INFO)
LOG = logging.getLogger(__name__)
unittest.main()
|