diff --git a/dependabot_file.py b/dependabot_file.py index dfe67ab..1dbc09f 100644 --- a/dependabot_file.py +++ b/dependabot_file.py @@ -11,7 +11,6 @@ # Define data structure for dependabot.yaml data = { "version": 2, - "registries": {}, "updates": [], } @@ -60,8 +59,6 @@ def make_dependabot_config( dependabot_config["updates"][-1].update( {"registries": [SingleQuotedScalarString(ecosystem)]} ) - else: - dependabot_config.pop("registries", None) if schedule_day: dependabot_config["updates"][-1].update( diff --git a/test_dependabot_file.py b/test_dependabot_file.py index bed3264..61c8901 100644 --- a/test_dependabot_file.py +++ b/test_dependabot_file.py @@ -819,6 +819,56 @@ def test_build_dependabot_file_with_labels(self): ) self.assertEqual(result, expected_result) + def test_build_dependabot_file_preserves_existing_registries(self): + """Test that existing registries are preserved when adding new ecosystems""" + repo = MagicMock() + repo.file_contents.side_effect = lambda filename: filename == "Gemfile" + + # Create existing config with registries but no bundler ecosystem + existing_config = MagicMock() + existing_config.content = base64.b64encode( + b""" +version: 2 +registries: + gradle-artifactory: + type: maven-repository + url: https://acme.jfrog.io/artifactory/my-gradle-registry + username: octocat + password: ${{secrets.MY_ARTIFACTORY_PASSWORD}} +updates: + - package-ecosystem: "npm" + directory: "/" + schedule: + interval: "weekly" +""" + ) + + expected_result = yaml.load( + b""" +version: 2 +registries: + gradle-artifactory: + type: maven-repository + url: https://acme.jfrog.io/artifactory/my-gradle-registry + username: octocat + password: ${{secrets.MY_ARTIFACTORY_PASSWORD}} +updates: + - package-ecosystem: "npm" + directory: "/" + schedule: + interval: "weekly" + - package-ecosystem: 'bundler' + directory: '/' + schedule: + interval: 'weekly' +""" + ) + + result = build_dependabot_file( + repo, False, [], {}, existing_config, "weekly", "", [], None + ) + self.assertEqual(result, expected_result) + if __name__ == "__main__": unittest.main() pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy