1 import dashboard.jenkins.jenkins_adapter as jenkins
2 from django.test import SimpleTestCase
5 # Tests that the data we get with the jenkinsadapter contains all the
6 # data we need. These test will fail if;
7 # - there is no internet connection
8 # - the opnfv jenkins url has changed
9 # - the jenkins api has changed
10 # - jenkins is not set up / there is no data
11 class JenkinsAdapterTestCase(SimpleTestCase):
12 def test_get_all_slaves(self):
13 slaves = jenkins.get_all_slaves()
14 self.assertTrue(len(slaves) > 0)
16 self.assertTrue('displayName' in slave)
17 self.assertTrue('idle' in slave)
18 self.assertTrue('offline' in slave)
20 def test_get_ci_slaves(self):
21 slaves = jenkins.get_ci_slaves()
22 self.assertTrue(len(slaves) > 0)
24 self.assertTrue('nodeName' in slave)
26 def test_get_all_jobs(self):
27 jobs = jenkins.get_all_jobs()
29 self.assertTrue(len(jobs) > 0)
31 self.assertTrue('displayName' in job)
32 self.assertTrue('url' in job)
33 self.assertTrue('lastBuild' in job)
34 if job['lastBuild'] is not None:
36 self.assertTrue('building' in job['lastBuild'])
37 self.assertTrue('fullDisplayName' in job['lastBuild'])
38 self.assertTrue('result' in job['lastBuild'])
39 self.assertTrue('timestamp' in job['lastBuild'])
40 self.assertTrue('builtOn' in job['lastBuild'])
41 self.assertTrue(lastBuild)