-
Notifications
You must be signed in to change notification settings - Fork 0
/
TestEnv.py
31 lines (26 loc) · 1.1 KB
/
TestEnv.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import unittest, urllib, re, subprocess
class TestEnv(unittest.TestCase):
def test_java(self):
version = subprocess.Popen(['java', '-version'], stderr=subprocess.PIPE).communicate()[1]
pattern = '\"(\d+\.\d+\.\d+_\d+).*\"'
shortVersion = re.search(pattern, version).groups()[0]
print(' CHECK java version =', shortVersion)
self.assertEqual(shortVersion, '1.8.0_131')
def test_sbt(self):
cmd = "sbt sbtVersion"
version = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT).communicate()[0]
pattern = '(\d+\.\d+\.\d+)'
shortVersion = re.search(pattern, version).groups()[0]
print(' CHECK sbt version =', shortVersion)
self.assertEqual(shortVersion, '0.13.15')
def test_website(self):
response = urllib.urlopen("http://www.python.org")
status_code = response.getcode()
print(' CHECK status code = ', status_code)
html = response.read(3000)
pattern = '<title>(.*?)</title>'
title = re.search(pattern, html).groups()[0]
self.assertEqual(status_code, 200)
self.assertEqual(title, 'Welcome to Python.org')
if __name__ == '__main__':
unittest.main()