예제 #1
0
 def __init__(
     self,
     repo: IDataRepo,
     env: iremote_environment.IRemoteEnvironment,
     file_manager: FileManager,
     display: IDisplay,
     state_updater: StateUpdater,
 ):
     self.repo = repo
     self.env = env
     self.file_manager = file_manager
     self.display = display
     self.state_updater = state_updater
     DataReporter(repo)
     logs_downloader = LogDownloader(env=self.env,
                                     file_manager=file_manager,
                                     display=self.display)
     final_zip_downloader = FinalZipDownloader(env=self.env,
                                               display=self.display)
     remote_server_cleaner = RemoteServerCleaner(env, display)
     zip_extractor = FinalZipExtractor(file_manager, display)
     self.study_retriever = StudyRetriever(
         state_updater,
         logs_downloader,
         final_zip_downloader,
         remote_server_cleaner,
         zip_extractor,
         DataReporter(repo),
     )
예제 #2
0
def test_data_reporter_calls_repo_to_save_study():
    # given
    data_repo = Mock(spec_set=IDataRepo)
    data_repo.save_study = Mock()
    data_reporter = DataReporter(data_repo)
    study = StudyDTO(path="empty_path")
    # when
    data_reporter.save_study(study)
    # then
    data_repo.save_study.assert_called_once_with(study)
예제 #3
0
 def setup_method(self):
     env = mock.Mock(spec_set=IRemoteEnvironment)
     display = mock.Mock(spec_set=IDisplay)
     file_manager = mock.Mock(spec_set=FileManager)
     repo = mock.Mock(spec_set=IDataRepo)
     self.reporter = DataReporter(repo)
     self.zipper = StudyZipper(file_manager, display)
     self.study_uploader = StudyZipfileUploader(env, display)
     self.zipfile_cleaner = StudyZipCleaner(file_manager, display)
     self.study_submitter = StudySubmitter(env, display)
     self.study_launcher = StudyLauncher(
         self.zipper,
         self.study_uploader,
         self.zipfile_cleaner,
         self.study_submitter,
         self.reporter,
     )
예제 #4
0
 def __init__(
     self,
     repo: IDataRepo,
     env: IRemoteEnvironment,
     file_manager: FileManager,
     display: IDisplay,
 ):
     self.repo = repo
     self.env = env
     self.file_manager = file_manager
     self.display = display
     zipper = StudyZipper(file_manager, display)
     study_uploader = StudyZipfileUploader(env, display)
     zipfile_cleaner = StudyZipCleaner(file_manager, display)
     study_submitter = StudySubmitter(env, display)
     self.study_launcher = StudyLauncher(zipper, study_uploader,
                                         zipfile_cleaner, study_submitter,
                                         DataReporter(repo))
예제 #5
0
 def setup_method(self):
     env = mock.Mock(spec_set=IRemoteEnvironment)
     display = mock.Mock(spec_set=IDisplay)
     file_manager = mock.Mock(spec_set=FileManager)
     repo = mock.Mock(spec_set=IDataRepo)
     self.reporter = DataReporter(repo)
     self.state_updater = StateUpdater(env, display)
     self.logs_downloader = LogDownloader(env, file_manager, display)
     self.final_zip_downloader = FinalZipDownloader(env, display)
     self.remote_server_cleaner = RemoteServerCleaner(env, display)
     self.zip_extractor = FinalZipExtractor(file_manager, display)
     self.study_retriever = StudyRetriever(
         self.state_updater,
         self.logs_downloader,
         self.final_zip_downloader,
         self.remote_server_cleaner,
         self.zip_extractor,
         self.reporter,
     )