"""Test of data module. :Date: 2019-07-29 .. module:: test_data :platform: *nix, Windows :synopsis: Test of data module. .. moduleauthor:: Daniel Weschke """ import unittest import os import sys sys.path.insert(0, os.path.abspath('..')) from pylib.data import read, unique_ending, get_id, seq class TestData(unittest.TestCase): file_name = "test_fit.dat" ids = [ '2f7a762d-98e2-4f4a-ac0d-188b8625fb64', 'ec54948d-76d4-4717-81cd-db7a15f750cf', '837c5378-9e6e-4bd0-b6a7-460d02fb62a3', 'efa51a89-4dc5-4e96-8c8c-4f0c6461dafa', 'c04e5303-4ba0-4ff5-acd8-197680b27bda', '2994791a-b2e1-47f5-bdbc-3050cf249808', 'fc12b455-a574-4361-a8cc-1a430e18dfa8', '560b34bb-74e7-463e-94da-be3f5e393f13', 'ba2bdca8-fd2c-48a9-b9b0-3734f33ebe94', ] def test_read(self): """test read function""" x, y = read(self.file_name, 3, 2) self.assertEqual(len(x), 1027) self.assertEqual(len(y), 1027) def test_unique_ending(self): """test unique_ending function""" self.assertEqual( unique_ending(self.ids), ['64', 'cf', 'a3', 'fa', 'da', '08', 'a8', '13', '94'] ) def test_get_id(self): """test get_id function""" self.assertEqual( get_id(self.ids, 'a3'), '837c5378-9e6e-4bd0-b6a7-460d02fb62a3' ) def test_seq(self): """test seq function""" self.assertEqual(seq(0), []) self.assertEqual(seq(1), [0]) self.assertEqual(seq(2), [0, 1]) self.assertEqual(seq(0, 3), [0, 1, 2]) self.assertEqual(seq(3, 3), []) self.assertEqual(seq(3, 4), [3]) self.assertEqual(seq(3, 5), [3, 4]) self.assertEqual(seq(3, 5, 1), [3, 4]) self.assertEqual(seq(3, 5, 0.5), [3, 3.5, 4, 4.5]) self.assertEqual(seq(3, 5, 0.2), [3, 3.2, 3.4, 3.6, 3.8, 4, 4.2, 4.4, 4.6, 4.8]) self.assertEqual(seq(4, 0, -0.4), [4, 3.6, 3.2, 2.8, 2.4, 2, 1.6, 1.2, 0.8, 0.4]) self.assertEqual(seq(4, 0, -0.41), [4, 3.59, 3.18, 2.77, 2.36, 1.95, 1.54, 1.13, 0.72, 0.31]) self.assertEqual(seq(3.03, 5.07), [3.03, 4.03, 5.03]) self.assertEqual(seq(3, 5.07), [3, 4, 5]) if __name__ == '__main__': unittest.main()