Add ODL 5.1 and 5.2 Packer builds
[integration/packaging.git] / rpm / test_build.py
1
2 ##############################################################################
3 # Copyright (c) 2016 Daniel Farrell.  All rights reserved.
4 #
5 # This program and the accompanying materials are made available under the
6 # terms of the Eclipse Public License v1.0 which accompanies this distribution,
7 # and is available at http://www.eclipse.org/legal/epl-v10.html
8 ##############################################################################
9
10 """Tests for package build logic."""
11
12 import unittest
13
14 import build
15
16
17 class TestExtractVersion(unittest.TestCase):
18
19     """Test logic to extract ODL versions from artifact URLs."""
20
21     nexus_url = "https://nexus.opendaylight.org/content/repositories"
22
23     def test_beryllium_release_url(self):
24         """Test URL of ODL Beryllium release."""
25         url = "%s/public/org/opendaylight/integration/distribution-karaf/0.4.0-Beryllium/distribution-karaf-0.4.0-Beryllium.tar.gz" %self.nexus_url  # noqa
26         version = build.extract_version(url)
27         self.assertEqual(version["version_major"], "4")
28         self.assertEqual(version["version_minor"], "0")
29         self.assertEqual(version["version_patch"], "0")
30         self.assertEqual(version["rpm_release"], "1")
31
32     def test_beryllium_sr4_release_url(self):
33         """Test URL of ODL Beryllium SR4 release."""
34         url = "%s/opendaylight.release/org/opendaylight/integration/distribution-karaf/0.4.4-Beryllium-SR4/distribution-karaf-0.4.4-Beryllium-SR4.tar.gz" %self.nexus_url  # noqa
35         version = build.extract_version(url)
36         self.assertEqual(version["version_major"], "4")
37         self.assertEqual(version["version_minor"], "4")
38         self.assertEqual(version["version_patch"], "0")
39         self.assertEqual(version["rpm_release"], "1")
40
41     def test_boron_release_url(self):
42         """Test URL of ODL Boron release."""
43         url = "%s/opendaylight.release/org/opendaylight/integration/distribution-karaf/0.5.0-Boron/distribution-karaf-0.5.0-Boron.tar.gz" %self.nexus_url  # noqa
44         version = build.extract_version(url)
45         self.assertEqual(version["version_major"], "5")
46         self.assertEqual(version["version_minor"], "0")
47         self.assertEqual(version["version_patch"], "0")
48         self.assertEqual(version["rpm_release"], "1")
49
50     def test_boron_sr1_release_url(self):
51         """Test URL of ODL Boron SR1 release."""
52         url = "%s/opendaylight.release/org/opendaylight/integration/distribution-karaf/0.5.1-Boron-SR1/distribution-karaf-0.5.1-Boron-SR1.tar.gz" %self.nexus_url  # noqa
53         version = build.extract_version(url)
54         self.assertEqual(version["version_major"], "5")
55         self.assertEqual(version["version_minor"], "1")
56         self.assertEqual(version["version_patch"], "0")
57         self.assertEqual(version["rpm_release"], "1")
58
59     def test_boron_sr2_autorelease_url(self):
60         """Test URL of ODL Boron SR2 autorelease."""
61         url = "%s/autorelease-1599/org/opendaylight/integration/distribution-karaf/0.5.2-Boron-SR2/distribution-karaf-0.5.2-Boron-SR2.tar.gz" %self.nexus_url  # noqa
62         version = build.extract_version(url)
63         self.assertEqual(version["version_major"], "5")
64         self.assertEqual(version["version_minor"], "2")
65         self.assertEqual(version["version_patch"], "0")
66         self.assertEqual(version["rpm_release"], "0.1.20161211rel1599")
67
68     def test_carbon_autorelease_url(self):
69         """Test URL of ODL Carbon autorelease."""
70         url = "%s/autorelease-1582/org/opendaylight/integration/distribution-karaf/0.6.0-Carbon/distribution-karaf-0.6.0-Carbon.tar.gz" %self.nexus_url  # noqa
71         version = build.extract_version(url)
72         self.assertEqual(version["version_major"], "6")
73         self.assertEqual(version["version_minor"], "0")
74         self.assertEqual(version["version_patch"], "0")
75         self.assertEqual(version["rpm_release"], "0.1.20161117rel1582")
76
77     def test_boron_snapshot_url(self):
78         """Test URL of ODL Boron SR2 snapshot."""
79         url = "%s/opendaylight.snapshot/org/opendaylight/integration/distribution-karaf/0.5.2-SNAPSHOT/distribution-karaf-0.5.2-20161212.010649-530.tar.gz" %self.nexus_url  # noqa
80         version = build.extract_version(url)
81         self.assertEqual(version["version_major"], "5")
82         self.assertEqual(version["version_minor"], "2")
83         self.assertEqual(version["version_patch"], "0")
84         self.assertEqual(version["rpm_release"], "0.1.20161212snap530")
85
86     def test_carbon_snapshot_url(self):
87         """Test URL of ODL Carbon snapshot."""
88         url = "%s/opendaylight.snapshot/org/opendaylight/integration/distribution-karaf/0.6.0-SNAPSHOT/distribution-karaf-0.6.0-20161212.173815-2486.tar.gz" %self.nexus_url  # noqa
89         version = build.extract_version(url)
90         self.assertEqual(version["version_major"], "6")
91         self.assertEqual(version["version_minor"], "0")
92         self.assertEqual(version["version_patch"], "0")
93         self.assertEqual(version["rpm_release"], "0.1.20161212snap2486")