From eccdd3f5adca4330f7de2416bea86349e2d4706e Mon Sep 17 00:00:00 2001 From: Michal Srb Date: Thu, 23 Apr 2015 11:01:39 +0200 Subject: [PATCH] Fix "UnboundLocalError: local variable 'pom_requires' referenced before assignment" --- depgenerators/maven.req | 4 ++-- test/maven_req_test.py | 7 +++++++ .../buildroot/usr/share/maven-metadata/require.xml | 11 +++++++++++ 3 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 test/metadata/require-no-artifacts/buildroot/usr/share/maven-metadata/require.xml diff --git a/depgenerators/maven.req b/depgenerators/maven.req index 77a54e7..39a56db 100755 --- a/depgenerators/maven.req +++ b/depgenerators/maven.req @@ -82,6 +82,8 @@ class TagBuilder(object): Print Requires on plugins, extensions and parent POMs from POM files """ + unresolvable = [] + pom_requires = set() for artifact in metadata.artifacts: if artifact.path: pom = POM(artifact.get_buildroot_path()) @@ -115,7 +117,6 @@ class TagBuilder(object): # plugins+extensions deps.extend(pom.plugins + pom.extensions) - unresolvable = [] # create xmvn-resolve request for plugins and extensions, skip # parent POM, if there is any - we already have request created # for it @@ -126,7 +127,6 @@ class TagBuilder(object): # TODO: check metadata first results = XMvnResolve.process_raw_request(reqs) - pom_requires = set() for i, r in enumerate(results): dep = MetadataDependency(deps[i].groupId, deps[i].artifactId, diff --git a/test/maven_req_test.py b/test/maven_req_test.py index 68e2f23..0d5b0bd 100644 --- a/test/maven_req_test.py +++ b/test/maven_req_test.py @@ -286,5 +286,12 @@ class TestMavenReq(unittest.TestCase): want = ("mvn(dg:da)", "java-headless", "jpackage-utils") self.assertEqual(set(want), set(sout)) + @mavenreq(["require-no-artifacts/buildroot/usr/share/maven-metadata/require.xml"]) + def test_no_artifacts(self, stdout, stderr, return_value): + self.assertEqual(return_value, 0, stderr) + sout = [x for x in stdout.split('\n') if x] + want = ("java-headless", "jpackage-utils") + self.assertEqual(set(want), set(sout)) + if __name__ == '__main__': unittest.main() diff --git a/test/metadata/require-no-artifacts/buildroot/usr/share/maven-metadata/require.xml b/test/metadata/require-no-artifacts/buildroot/usr/share/maven-metadata/require.xml new file mode 100644 index 0000000..9db8a8f --- /dev/null +++ b/test/metadata/require-no-artifacts/buildroot/usr/share/maven-metadata/require.xml @@ -0,0 +1,11 @@ + + + 0ebc9caa-eb88-4c53-b371-72514294b535 + + + org.eclipse.gef + org.eclipse.gef.releng + pom + + + -- 2.1.0