1
0
mirror of https://github.com/kellyjonbrazil/jc.git synced 2025-07-13 01:20:24 +02:00

add uname tests

This commit is contained in:
Kelly Brazil
2021-10-20 15:59:27 -07:00
parent a1eabad2d3
commit 2057817ef8
11 changed files with 89 additions and 0 deletions

10
tests/fixtures/debian10/uname-a.json vendored Normal file
View File

@ -0,0 +1,10 @@
{
"kernel_name": "Linux",
"node_name": "debian",
"kernel_release": "5.7.0-2-amd64",
"operating_system": "GNU/Linux",
"processor": "unknown",
"hardware_platform": "unknown",
"machine": "x86_64",
"kernel_version": "#1 SMP Debian 5.7.10-1 (2020-07-26)"
}

2
tests/fixtures/debian10/uname-a.out vendored Normal file
View File

@ -0,0 +1,2 @@
Linux debian 5.7.0-2-amd64 #1 SMP Debian 5.7.10-1 (2020-07-26) x86_64 GNU/Linux

1
tests/fixtures/freebsd12/uname-a.json vendored Normal file
View File

@ -0,0 +1 @@
{"machine":"amd64","kernel_name":"FreeBSD","node_name":"freebsd","kernel_release":"12.1-RELEASE","kernel_version":"FreeBSD 12.1-RELEASE r354233 GENERIC"}

2
tests/fixtures/freebsd12/uname-a.out vendored Normal file
View File

@ -0,0 +1,2 @@
FreeBSD freebsd 12.1-RELEASE FreeBSD 12.1-RELEASE r354233 GENERIC amd64

View File

@ -0,0 +1,7 @@
{
"machine": "amd64",
"kernel_name": "FreeBSD",
"node_name": "freebsd",
"kernel_release": "10.1-RELEASE-p10",
"kernel_version": "FreeBSD 10.1-RELEASE-p10 #0: Wed May 13 06:54:13 UTC 2015 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC"
}

2
tests/fixtures/freebsd12/uname-a2.out vendored Normal file
View File

@ -0,0 +1,2 @@
FreeBSD freebsd 10.1-RELEASE-p10 FreeBSD 10.1-RELEASE-p10 #0: Wed May 13 06:54:13 UTC 2015 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64

View File

@ -0,0 +1 @@
{"kernel_name":"Linux","node_name":"mymachine","kernel_release":"2.6.18-194.e15PAE","operating_system":"GNU/Linux","processor":"i386","hardware_platform":"i686","machine":"i686","kernel_version":"#1 SMP Fri Apr 2 15:37:44 EDT 2010"}

View File

@ -0,0 +1 @@
Linux mymachine 2.6.18-194.e15PAE #1 SMP Fri Apr 2 15:37:44 EDT 2010 i686 i686 i386 GNU/Linux

1
tests/fixtures/generic/uname-a.json vendored Normal file
View File

@ -0,0 +1 @@
{"kernel_name":"Linux","node_name":"host.example.com","kernel_release":"4.19.0-17-amd64","operating_system":"GNU/Linux","processor":"unknown","hardware_platform":"unknown","machine":"x86_64","kernel_version":"#1 SMP Debian 4.19.194-3 (2021-07-18)"}

2
tests/fixtures/generic/uname-a.out vendored Normal file
View File

@ -0,0 +1,2 @@
Linux host.example.com 4.19.0-17-amd64 #1 SMP Debian 4.19.194-3 (2021-07-18) x86_64 GNU/Linux

View File

@ -25,6 +25,21 @@ class MyTests(unittest.TestCase):
with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/osx-10.14.6/uname.out'), 'r', encoding='utf-8') as f:
self.osx_10_14_6_uname = f.read()
with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/freebsd12/uname-a.out'), 'r', encoding='utf-8') as f:
self.freebsd12_uname_a = f.read()
with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/freebsd12/uname-a2.out'), 'r', encoding='utf-8') as f:
self.freebsd12_uname_a2 = f.read()
with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/generic/uname-a.out'), 'r', encoding='utf-8') as f:
self.generic_uname_a = f.read()
with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/generic/uname-a-different-proc.out'), 'r', encoding='utf-8') as f:
self.generic_uname_a_different_proc = f.read()
with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/debian10/uname-a.out'), 'r', encoding='utf-8') as f:
self.debian_10_uname_a = f.read()
# output
with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/centos-7.7/uname-a.json'), 'r', encoding='utf-8') as f:
self.centos_7_7_uname_a_json = json.loads(f.read())
@ -38,6 +53,21 @@ class MyTests(unittest.TestCase):
with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/osx-10.14.6/uname-a.json'), 'r', encoding='utf-8') as f:
self.osx_10_14_6_uname_a_json = json.loads(f.read())
with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/freebsd12/uname-a.json'), 'r', encoding='utf-8') as f:
self.freebsd12_uname_a_json = json.loads(f.read())
with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/freebsd12/uname-a2.json'), 'r', encoding='utf-8') as f:
self.freebsd12_uname_a2_json = json.loads(f.read())
with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/generic/uname-a.json'), 'r', encoding='utf-8') as f:
self.generic_uname_a_json = json.loads(f.read())
with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/generic/uname-a-different-proc.json'), 'r', encoding='utf-8') as f:
self.generic_uname_a_different_proc_json = json.loads(f.read())
with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/debian10/uname-a.json'), 'r', encoding='utf-8') as f:
self.debian_10_uname_a_json = json.loads(f.read())
def test_uname_nodata(self):
"""
Test 'uname -a' with no data
@ -74,6 +104,36 @@ class MyTests(unittest.TestCase):
"""
self.assertEqual(jc.parsers.uname.parse(self.osx_10_14_6_uname_a, quiet=True), self.osx_10_14_6_uname_a_json)
def test_uname_freebsd12(self):
"""
Test 'uname -a' on freebsd12
"""
self.assertEqual(jc.parsers.uname.parse(self.freebsd12_uname_a, quiet=True), self.freebsd12_uname_a_json)
def test_uname2_freebsd12(self):
"""
Test 'uname -a' on freebsd12 with longer version level string
"""
self.assertEqual(jc.parsers.uname.parse(self.freebsd12_uname_a2, quiet=True), self.freebsd12_uname_a2_json)
def test_uname_generic(self):
"""
Test 'uname -a' on debian with missing hardware platform and processor
"""
self.assertEqual(jc.parsers.uname.parse(self.generic_uname_a, quiet=True), self.generic_uname_a_json)
def test_uname_different_proc_generic(self):
"""
Test 'uname -a' on machine with different processor type
"""
self.assertEqual(jc.parsers.uname.parse(self.generic_uname_a_different_proc, quiet=True), self.generic_uname_a_different_proc_json)
def test_uname_debian_10(self):
"""
Test 'uname -a' on debian 10 with missing hardware platform and processor
"""
self.assertEqual(jc.parsers.uname.parse(self.debian_10_uname_a, quiet=True), self.debian_10_uname_a_json)
if __name__ == '__main__':
unittest.main()