def test_deleted_secret_file(): secrets = SecretsCollection() secrets.scan_file('test_data/each_secret.py') secrets.trim(SecretsCollection()) assert secrets secrets.trim(SecretsCollection(), filelist=['test_data/each_secret.py']) assert not secrets
def test_remove_non_existent_files(): secrets = SecretsCollection() secrets.scan_file('test_data/each_secret.py') assert bool(secrets) secrets.data['does-not-exist'] = secrets.data.pop( 'test_data/each_secret.py') secrets.trim() assert not bool(secrets)
def test_deleted_secret(): secrets = SecretsCollection() secrets.scan_file('test_data/each_secret.py') results = SecretsCollection.load_from_baseline( {'results': secrets.json()}) results.data['test_data/each_secret.py'].pop() original_size = len(secrets['test_data/each_secret.py']) secrets.trim(results) assert len(secrets['test_data/each_secret.py']) < original_size
def test_maintains_labels(): labelled_secrets = SecretsCollection() labelled_secrets.scan_file('test_data/each_secret.py') for _, secret in labelled_secrets: secret.is_secret = True break secrets = SecretsCollection() secrets.scan_file('test_data/each_secret.py') labelled_secrets.trim(scanned_results=secrets) assert any([secret.is_secret for _, secret in labelled_secrets])
def should_update_baseline( secrets: SecretsCollection, scanned_results: SecretsCollection, filelist: List[str], baseline_version: str, ) -> bool: """ :returns: True if changes occurred. """ original = SecretsCollection.load_from_baseline( {'results': secrets.json()}) secrets.trim(scanned_results=scanned_results, filelist=filelist) if baseline_version != VERSION: return True if not secrets.exactly_equals(original): return True return False