Exemple #1
0
    def test_load_baseline_from_file_fails_early_on_bad_filename(
            self, mock_log):
        with mock.patch.object(SecretsCollection, 'load_baseline_from_string') as \
                mock_load_baseline_from_string, \
                mock_open('will_throw_error') as mock_file:
            mock_file().read.side_effect = MockUnicodeDecodeError

            with pytest.raises(UnicodeDecodeError):
                SecretsCollection.load_baseline_from_file('does_not_matter')

            assert not mock_load_baseline_from_string.called
            assert mock_log.getLogger().error.called
Exemple #2
0
    def test_load_baseline_from_file(self, mock_gmtime):
        original = self.get_baseline_dict(mock_gmtime)
        with mock_open(json.dumps(original)):
            secrets = SecretsCollection.load_baseline_from_file(
                'does_not_matter')

        self.assert_loaded_collection_is_original_collection(
            original, secrets.format_for_baseline_output())
Exemple #3
0
def get_baseline(baseline_filename):
    """
    :raises: IOError
    :raises: ValueError
    """
    if not baseline_filename:
        return

    raise_exception_if_baseline_file_is_not_up_to_date(baseline_filename)

    return SecretsCollection.load_baseline_from_file(baseline_filename)