From d0a129c216d5814888d871c0da06782a2be26e01 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michael=20P=C3=B6hn?= Date: Tue, 28 Aug 2018 10:04:05 +0200 Subject: [PATCH] add test for parsing build field prebuild as string --- tests/metadata.TestCase | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/tests/metadata.TestCase b/tests/metadata.TestCase index a9be7ec0..87fd319a 100755 --- a/tests/metadata.TestCase +++ b/tests/metadata.TestCase @@ -209,7 +209,7 @@ class MetadataTest(unittest.TestCase): UpdateCheckMode: Tags """)) - def test_parse_yaml_metadata_prebuild(self): + def test_parse_yaml_metadata_prebuild_list(self): mf = io.StringIO(textwrap.dedent("""\ AutoName: F-Droid RepoType: git @@ -232,6 +232,28 @@ class MetadataTest(unittest.TestCase): 'versionName': 'v0.1.0', 'prebuild': 'a && b && c'}]}) + def test_parse_yaml_metadata_prebuild_string(self): + mf = io.StringIO(textwrap.dedent("""\ + AutoName: F-Droid + RepoType: git + Builds: + - versionCode: 1 + versionName: v0.1.0 + prebuild: |- + a && b && sed -i 's,a,b,' + """)) + mf.name = 'mock_filename.yaml' + mf.seek(0) + result = {} + with mock.patch('fdroidserver.metadata.warnings_action', 'error'): + fdroidserver.metadata.parse_yaml_metadata(mf, result) + self.assertDictEqual(result, {'AutoName': 'F-Droid', + 'RepoType': 'git', + 'Builds': [{'versionCode': 1, + 'versionName': 'v0.1.0', + 'prebuild': "a && b && " + "sed -i 's,a,b,'"}]}) + def test_write_yaml_prebuild(self): mf = io.StringIO() app = fdroidserver.metadata.App()