import os
import unittest
from distributed.common.manager import DeviceManager
from distributed.distribute.distribute import Distribute
from distributed.common.common import create_empty_result_file
class DbinderTest(unittest.TestCase):
def __init__(self, result_path, suits_dir):
self.result_path = result_path
self.suits_dir = suits_dir
def setUp(self):
print('setUp')
self.manager = DeviceManager(self.result_path)
self.major = self.manager.PHONE1
self.angent_list = [self.manager.PHONE2]
self.hdc = "hdc"
def test_distribute(self, major_target_name="", agent_target_name="", options=""):
major_target_name = major_target_name
agent_target_name = agent_target_name
distribute = Distribute(self.suits_dir, self.major, self.angent_list, self.hdc)
for agent in self.angent_list:
if not distribute.exec_agent(agent, agent_target_name, self.result_path, options):
print(agent, agent_target_name)
create_empty_result_file(self.result_path, major_target_name)
return
distribute.exec_major(self.major, major_target_name, self.result_path, options)
result = os.path.join(self.result_path, 'result',
self.suits_dir.split("distributedtest")[1].strip(os.sep))
source_path = "%s/%s.xml" % (self.major.test_path, major_target_name)
if not os.path.exists(result):
os.makedirs(result)
distribute.pull_result(self.major, source_path, result)
def tearDown(self):
print('tearDown')