예제 #1
0
 def _gradle_tar(self):
     if self._gradle_tar_handle is None:
         gradle_uri = _GRADLE_URL.format(version=self._gradle_version)
         self._gradle_tar_handle = sources.Zip(
             gradle_uri,
             self._gradle_dir,
             source_checksum=self._gradle_checksum)
     return self._gradle_tar_handle
예제 #2
0
    def test_pull_zipfile_must_download_and_extract(self, mock_zip):
        dest_dir = 'src'
        os.makedirs(dest_dir)
        zip_file_name = 'test.zip'
        source = 'http://{}:{}/{file_name}'.format(*self.server.server_address,
                                                   file_name=zip_file_name)
        zip_source = sources.Zip(source, dest_dir)

        zip_source.pull()

        mock_zip.assert_called_once_with(
            os.path.join(zip_source.source_dir, zip_file_name))
예제 #3
0
    def test_extract_and_keep_zipfile(self, mock_zip):
        zip_file_name = 'test.zip'
        source = 'http://{}:{}/{file_name}'.format(*self.server.server_address,
                                                   file_name=zip_file_name)
        dest_dir = os.path.abspath(os.curdir)
        zip_source = sources.Zip(source, dest_dir)

        zip_source.download()
        zip_source.provision(dst=dest_dir, keep_zip=True)

        zip_download = os.path.join(zip_source.source_dir, zip_file_name)
        mock_zip.assert_called_once_with(zip_download)

        with open(zip_download, 'r') as zip_file:
            self.assertThat(zip_file.read(), Equals('Test fake file'))