From 36f00f03e5d56921f3262eca35769c866402ee4a Mon Sep 17 00:00:00 2001 From: linsui <2873532-linsui@users.noreply.gitlab.com> Date: Tue, 13 Jan 2026 18:31:57 +0800 Subject: [PATCH] rewritemeta: fix for metadata from stdin --- fdroidserver/rewritemeta.py | 1 + tests/test_rewritemeta.py | 11 +++++++++++ 2 files changed, 12 insertions(+) diff --git a/fdroidserver/rewritemeta.py b/fdroidserver/rewritemeta.py index a55069be..cd54ea36 100644 --- a/fdroidserver/rewritemeta.py +++ b/fdroidserver/rewritemeta.py @@ -72,6 +72,7 @@ def main(): if options.stdin: app = metadata.parse_yaml_metadata(sys.stdin) + app["id"] = "stdin" metadata.write_yaml(sys.stdout, app) logging.debug(_("Finished")) return diff --git a/tests/test_rewritemeta.py b/tests/test_rewritemeta.py index 67d5e5ac..6be4b785 100755 --- a/tests/test_rewritemeta.py +++ b/tests/test_rewritemeta.py @@ -1,5 +1,6 @@ #!/usr/bin/env python3 +import io import os import tempfile import textwrap @@ -118,3 +119,13 @@ class RewriteMetaTest(unittest.TestCase): ''' ), ) + + @mock.patch('sys.argv', ['fdroid', 'rewritemeta', '--stdin']) + @mock.patch('sys.stdout', new_callable=io.StringIO) + @mock.patch('sys.stdin', io.StringIO('UpdateCheckMode: None\nAutoUpdateMode: None')) + def test_rewrite_from_stdin(self, stdout): + rewritemeta.main() + + self.assertEqual( + stdout.getvalue(), '\nAutoUpdateMode: None\nUpdateCheckMode: None\n' + )