def test_call_to_json(self, mock_io, mock_io2): test = "test/test" testutil.put_stdin( json.dumps({ "source": { "prefix": "test" }, "version": { "version": "1.1.0" } })) input.execute(test) mock_io.dumps.assert_any_call({"version": {"version": "1.1.0"}})
def test_call_to_fileIO(self, mock_io): test = "test/test" testutil.put_stdin( json.dumps({ "source": { "prefix": "test" }, "version": { "version": "1.1.0" } })) input.execute(test) mock_io.write_to_file.assert_any_call(test + "/default", "test_1_1_0") mock_io.write_to_file.assert_any_call(test + "/heroku", "test-1-1-0")
def test_without_version(self): testutil.put_stdin(payloads.in_payload_without_version) io = testutil.mock_stderr() self.assertEqual(-1, input.execute("")) self.assertRegex( testutil.read_from_io(io), "JSON Validation ERROR: 'version' is a required property")
def test_invalid_json(self): testutil.put_stdin('{"sourcez":{' '"apiKey":"apiKey123",' '"secretKey":"secretKey321' '"},' '"version":{"version":"version-v1-dev"}}') self.assertEqual(input.execute(""), -1)
def test_valid_json_invalid_credentials_or_bucket_does_not_exist( self, mock_s3client): # Mock Setup mock_returned_s3client = mock_s3client() mock_returned_s3client.does_bucket_exist.return_value = False testutil.put_stdin(payloads.in_payload) self.assertEqual(-1, input.execute(""))
def test_invalid_prefix(self): test = "test/test" testutil.put_stdin( json.dumps({ "source": { "prefix": "tes2234" }, "version": { "version": "1.1.0" } })) self.assertEquals(input.execute(test), -1)
def test_valid_json(self, mock_s3client, mock_archive_util, mock_os_remove): # Mock Setup mock_returned_s3client = mock_s3client() mock_returned_s3client.does_bucket_exist.return_value = True io = testutil.mock_stdout() testutil.put_stdin(payloads.in_payload) self.assertEqual(0, input.execute("some/destination")) filename = "some/destination/release-1.0.0.tar.gz" # Mock Assertions mock_returned_s3client.download_file.assert_called_once_with( "bucketName", "release-1.0.0.tar.gz", filename) mock_archive_util.assert_called_once_with(filename, "some/destination") mock_os_remove.assert_called_once_with(filename) self.assertEqual('{"version": {"version": "release-1.0.0.tar.gz"}}', testutil.read_from_io(io))