Skip to content

Commit 1f45351

Browse files
committed
Generate cli tests, remove absPath
1 parent ba14269 commit 1f45351

19 files changed

Lines changed: 473 additions & 8 deletions

utbot-cli/src/main/kotlin/org/utbot/cli/python/PythonGenerateTestsCommand.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -211,7 +211,7 @@ class PythonGenerateTestsCommand: CliktCommand(
211211
}
212212

213213
processTestGeneration(
214-
pythonPath = pythonPath.toAbsolutePath(),
214+
pythonPath = pythonPath,
215215
testSourceRoot = testSourceRoot,
216216
pythonFilePath = sourceFile.toAbsolutePath(),
217217
pythonFileContent = sourceFileContent,
@@ -257,4 +257,4 @@ class PythonGenerateTestsCommand: CliktCommand(
257257

258258
private fun String.toAbsolutePath(): String =
259259
File(this).canonicalPath
260-
}
260+
}
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
import sys
2+
sys.path.append('/home/vyacheslav/Desktop/utbot/UTBotJava/utbot-python/samples/samples')
3+
import unittest
4+
import builtins
5+
import arithmetic
6+
7+
8+
class TestTopLevelFunctions(unittest.TestCase):
9+
# region Test suites for executable arithmetic.calculate_function_value
10+
# region
11+
def test_calculate_function_value(self):
12+
actual = arithmetic.calculate_function_value(int('4000001', 32), int(' 0O123 ', 0))
13+
14+
self.assertEqual(65535.99874114989, actual)
15+
16+
def test_calculate_function_value1(self):
17+
actual = arithmetic.calculate_function_value(int(' 0O123 ', 0), int(' 0O123 ', 0))
18+
19+
self.assertEqual(14228.114055679447, actual)
20+
21+
def test_calculate_function_value2(self):
22+
actual = arithmetic.calculate_function_value(float('+NAn'), int('0123', 10))
23+
24+
self.assertTrue(isinstance(actual, builtins.float))
25+
26+
def test_calculate_function_value_throws_t(self):
27+
arithmetic.calculate_function_value(101, int(' 0O123 ', 0))
28+
29+
# raises builtins.ValueError
30+
31+
def test_calculate_function_value_throws_t1(self):
32+
arithmetic.calculate_function_value(int('000', 0), int(' 0O123 ', 0))
33+
34+
# raises builtins.ZeroDivisionError
35+
36+
# endregion
37+
38+
# endregion
39+
40+
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import sys
2+
sys.path.append('/home/vyacheslav/Desktop/utbot/UTBotJava/utbot-python/samples/samples')
3+
import unittest
4+
import builtins
5+
import using_collections
6+
import collections
7+
8+
9+
class TestTopLevelFunctions(unittest.TestCase):
10+
# region Test suites for executable using_collections.generate_collections
11+
# region
12+
def test_generate_collections(self):
13+
actual = using_collections.generate_collections({})
14+
15+
counter = collections.Counter({0: 100, })
16+
self.assertEqual([{0: 100, }, counter, [(0, 100)]], actual)
17+
18+
# endregion
19+
20+
# endregion
21+
22+
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
import sys
2+
sys.path.append('/home/vyacheslav/Desktop/utbot/UTBotJava/utbot-python/samples/samples')
3+
import unittest
4+
import builtins
5+
import test_coverage
6+
7+
8+
class TestTopLevelFunctions(unittest.TestCase):
9+
# region Test suites for executable test_coverage.hard_function
10+
# region
11+
def test_hard_function(self):
12+
actual = test_coverage.hard_function(int('000', 0))
13+
14+
self.assertEqual(1, actual)
15+
16+
def test_hard_function1(self):
17+
actual = test_coverage.hard_function(3)
18+
19+
self.assertEqual(2, actual)
20+
21+
def test_hard_function2(self):
22+
actual = test_coverage.hard_function(int('9ba461594', 12))
23+
24+
self.assertEqual(3, actual)
25+
26+
def test_hard_function3(self):
27+
actual = test_coverage.hard_function(float('+NAn'))
28+
29+
self.assertEqual(4, actual)
30+
31+
# endregion
32+
33+
# endregion
34+
35+
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
import sys
2+
sys.path.append('/home/vyacheslav/Desktop/utbot/UTBotJava/utbot-python/samples/samples')
3+
import unittest
4+
import builtins
5+
import deep_equals
6+
import copyreg
7+
import types
8+
9+
10+
class TestTopLevelFunctions(unittest.TestCase):
11+
# region Test suites for executable deep_equals.comparable_list
12+
# region
13+
def test_comparable_list(self):
14+
actual = deep_equals.comparable_list(int('100000001', 16))
15+
16+
comparable_class = copyreg._reconstructor(deep_equals.ComparableClass, builtins.object, None)
17+
comparable_class.x = 0
18+
comparable_class1 = copyreg._reconstructor(deep_equals.ComparableClass, builtins.object, None)
19+
comparable_class1.x = 1
20+
comparable_class2 = copyreg._reconstructor(deep_equals.ComparableClass, builtins.object, None)
21+
comparable_class2.x = 2
22+
comparable_class3 = copyreg._reconstructor(deep_equals.ComparableClass, builtins.object, None)
23+
comparable_class3.x = 3
24+
comparable_class4 = copyreg._reconstructor(deep_equals.ComparableClass, builtins.object, None)
25+
comparable_class4.x = 4
26+
comparable_class5 = copyreg._reconstructor(deep_equals.ComparableClass, builtins.object, None)
27+
comparable_class5.x = 5
28+
comparable_class6 = copyreg._reconstructor(deep_equals.ComparableClass, builtins.object, None)
29+
comparable_class6.x = 6
30+
comparable_class7 = copyreg._reconstructor(deep_equals.ComparableClass, builtins.object, None)
31+
comparable_class7.x = 7
32+
comparable_class8 = copyreg._reconstructor(deep_equals.ComparableClass, builtins.object, None)
33+
comparable_class8.x = 8
34+
comparable_class9 = copyreg._reconstructor(deep_equals.ComparableClass, builtins.object, None)
35+
comparable_class9.x = 9
36+
self.assertEqual([comparable_class, comparable_class1, comparable_class2, comparable_class3, comparable_class4, comparable_class5, comparable_class6, comparable_class7, comparable_class8, comparable_class9], actual)
37+
38+
# endregion
39+
40+
# endregion
41+
42+
# region Test suites for executable deep_equals.incomparable_list
43+
# region
44+
def test_incomparable_list(self):
45+
actual = deep_equals.incomparable_list(int('100000001', 16))
46+
47+
incomparable_class = copyreg._reconstructor(deep_equals.IncomparableClass, builtins.object, None)
48+
incomparable_class.x = 0
49+
incomparable_class1 = copyreg._reconstructor(deep_equals.IncomparableClass, builtins.object, None)
50+
incomparable_class1.x = 1
51+
incomparable_class2 = copyreg._reconstructor(deep_equals.IncomparableClass, builtins.object, None)
52+
incomparable_class2.x = 2
53+
incomparable_class3 = copyreg._reconstructor(deep_equals.IncomparableClass, builtins.object, None)
54+
incomparable_class3.x = 3
55+
incomparable_class4 = copyreg._reconstructor(deep_equals.IncomparableClass, builtins.object, None)
56+
incomparable_class4.x = 4
57+
incomparable_class5 = copyreg._reconstructor(deep_equals.IncomparableClass, builtins.object, None)
58+
incomparable_class5.x = 5
59+
incomparable_class6 = copyreg._reconstructor(deep_equals.IncomparableClass, builtins.object, None)
60+
incomparable_class6.x = 6
61+
incomparable_class7 = copyreg._reconstructor(deep_equals.IncomparableClass, builtins.object, None)
62+
incomparable_class7.x = 7
63+
incomparable_class8 = copyreg._reconstructor(deep_equals.IncomparableClass, builtins.object, None)
64+
incomparable_class8.x = 8
65+
incomparable_class9 = copyreg._reconstructor(deep_equals.IncomparableClass, builtins.object, None)
66+
incomparable_class9.x = 9
67+
expected_list = [incomparable_class, incomparable_class1, incomparable_class2, incomparable_class3, incomparable_class4, incomparable_class5, incomparable_class6, incomparable_class7, incomparable_class8, incomparable_class9]
68+
expected_length = len(expected_list)
69+
actual_length = len(actual)
70+
self.assertEqual(expected_length, actual_length)
71+
72+
index = None
73+
for index in range(0, expected_length, 1):
74+
expected_element = expected_list[index]
75+
actual_element = actual[index]
76+
actual_x = actual_element.x
77+
expected_x = expected_element.x
78+
self.assertEqual(expected_x, actual_x)
79+
80+
# endregion
81+
82+
# endregion
83+
84+
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
import sys
2+
sys.path.append('/home/vyacheslav/Desktop/utbot/UTBotJava/utbot-python/samples/samples')
3+
import unittest
4+
import builtins
5+
import dicts
6+
import copyreg
7+
import types
8+
9+
10+
class TestDictionary(unittest.TestCase):
11+
# region Test suites for executable dicts.translate
12+
# region
13+
def test_translate(self):
14+
dictionary = dicts.Dictionary([str(1e+300 * 1e+300), str(-1234567890), str(Exception), str(b'\xf0\xa3\x91\x96', 'utf-8'), str(b'\xf0\xa3\x91\x96', 'utf-8'), str(-1234567890), str(b'\xf0\xa3\x91\x96', 'utf-8')], [{str(Exception): str(b'python.org', 'idna'), str(1e+300 * 1e+300): str(b'\xf0\xa3\x91\x96', 'utf-8'), str(b'python.org.', 'idna'): str(b'xn--pythn-mua.org', 'idna'), str(b'python.org', 'idna'): str(b'xn--pythn-mua.org', 'idna'), str(b'\xf0\xa3\x91\x96', 'utf-8'): str(b'xn--pythn-mua.org', 'idna'), str(b''): str(b'xn--pythn-mua.org', 'idna')}, {str(b'python.org.', 'idna'): str(b'\xf0\xa3\x91\x96', 'utf-8'), str(-1234567890): str(b'xn--pythn-mua.org', 'idna')}, {}, {str(1.5 + 3.5j): str(b'xn--pythn-mua.org', 'idna'), str(b'xn--pythn-mua.org', 'idna'): str(b'python.org', 'idna'), str(Exception): str(b'\xf0\xa3\x91\x96', 'utf-8'), str(b'python.org', 'idna'): str(b'python.org', 'idna'), str(b'\xf0\xa3\x91\x96', 'utf-8'): str(b'python.org', 'idna'), str(-1234567890): str(b'python.org', 'idna'), str(b'python.org.', 'idna'): str(b'python.org', 'idna'), str(1e+300 * 1e+300): str(b'\xf0\xa3\x91\x96', 'utf-8')}])
15+
16+
actual = dictionary.translate(str(b'\xf0\xa3\x91\x96', 'utf-8'), str(b'python.org.', 'idna'))
17+
18+
word = copyreg._reconstructor(dicts.Word, builtins.object, None)
19+
word.translations = {'python.org.': '𣑖', '-1234567890': 'pythön.org', }
20+
actual_translations = actual.translations
21+
expected_translations = word.translations
22+
self.assertEqual(expected_translations, actual_translations)
23+
24+
def test_translate_throws_t(self):
25+
dictionary = dicts.Dictionary([str(b'xn--pythn-mua.org', 'idna'), str(b'xn--pythn-mua.org', 'idna'), str(1e+300 * 1e+300), str(b'python.org', 'idna'), str(b'python.org', 'idna'), str(-1234567890)], [{str(b'\xf0\xa3\x91\x96', 'utf-8'): str(b'python.org', 'idna'), str(b'python.org', 'idna'): str(1e+300 * 1e+300), str(-1234567890): str(b'python.org', 'idna'), str(1e+300 * 1e+300): str(b'xn--pythn-mua.org', 'idna'), str(b'python.org.', 'idna'): str(b'xn--pythn-mua.org', 'idna')}, {str(1e+300 * 1e+300): str(b'\xf0\xa3\x91\x96', 'utf-8'), str(-1234567890): str(b'xn--pythn-mua.org', 'idna'), str(b'\xf0\xa3\x91\x96', 'utf-8'): str(b'xn--pythn-mua.org', 'idna'), str(Exception): str(b'python.org', 'idna'), str(1.5 + 3.5j): str(b'python.org', 'idna'), str(b'python.org.', 'idna'): str(b'\xf0\xa3\x91\x96', 'utf-8')}, {str(1.5 + 3.5j): str(b'xn--pythn-mua.org', 'idna'), str(1e+300 * 1e+300): str(b'xn--pythn-mua.org', 'idna'), str(b'xn--pythn-mua.org', 'idna'): str(b'xn--pythn-mua.org', 'idna'), str(b''): str(b'\xf0\xa3\x91\x96', 'utf-8'), str(b'python.org.', 'idna'): str(b'python.org', 'idna'), str(Exception): str(b'python.org', 'idna')}, {str(b'python.org.', 'idna'): str(b'\xf0\xa3\x91\x96', 'utf-8'), str(-1234567890): str(b'xn--pythn-mua.org', 'idna')}, {str(b'\xf0\xa3\x91\x96', 'utf-8'): str(b'python.org', 'idna'), str(b'python.org', 'idna'): str(1e+300 * 1e+300), str(-1234567890): str(b'python.org', 'idna'), str(1e+300 * 1e+300): str(b'xn--pythn-mua.org', 'idna'), str(b'python.org.', 'idna'): str(b'xn--pythn-mua.org', 'idna')}, {}, {str(b'\xf0\xa3\x91\x96', 'utf-8'): str(b'python.org', 'idna'), str(b'python.org', 'idna'): str(b'xn--pythn-mua.org', 'idna'), str(b''): str(b'\xf0\xa3\x91\x96', 'utf-8'), str(Exception): str(b'xn--pythn-mua.org', 'idna')}])
26+
27+
dictionary.translate(str(b''), str(b'python.org.', 'idna'))
28+
29+
# raises builtins.KeyError
30+
31+
# endregion
32+
33+
# endregion
34+
35+
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
import sys
2+
sys.path.append('/home/vyacheslav/Desktop/utbot/UTBotJava/utbot-python/samples/samples')
3+
import unittest
4+
import builtins
5+
import graph
6+
import copyreg
7+
import types
8+
9+
10+
class TestTopLevelFunctions(unittest.TestCase):
11+
# region Test suites for executable graph.bfs
12+
# region
13+
def test_bfs(self):
14+
actual = graph.bfs([graph.Node(str(-1234567890)), graph.Node(str(-1234567890)), graph.Node(str(1e+300 * 1e+300))])
15+
16+
node = copyreg._reconstructor(graph.Node, builtins.object, None)
17+
node.name = 'inf'
18+
node.children = []
19+
node1 = copyreg._reconstructor(graph.Node, builtins.object, None)
20+
node1.name = '-1234567890'
21+
node1.children = []
22+
self.assertEqual([node, node1], actual)
23+
24+
def test_bfs1(self):
25+
actual = graph.bfs([])
26+
27+
self.assertEqual([], actual)
28+
29+
# endregion
30+
31+
# endregion
32+
33+
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import sys
2+
sys.path.append('/home/vyacheslav/Desktop/utbot/UTBotJava/utbot-python/samples/samples')
3+
import unittest
4+
import builtins
5+
import lists
6+
import datetime
7+
8+
9+
class TestTopLevelFunctions(unittest.TestCase):
10+
# region Test suites for executable lists.find_articles_with_author
11+
# region
12+
def test_find_articles_with_author(self):
13+
actual = lists.find_articles_with_author([lists.Article(str(-1234567890), str(1.5 + 3.5j), str(Exception), datetime.datetime(2015, 4, 5, 1, 45)), lists.Article(str(-1234567890), str(1.5 + 3.5j), str(Exception), datetime.datetime(2011, 1, 1)), lists.Article(str(-1234567890), str(1.5 + 3.5j), str(1e+300 * 1e+300), datetime.datetime(2014, 11, 2, 1, 30)), lists.Article(str(-1234567890), str(1.5 + 3.5j), str(b'python.org', 'idna'), datetime.datetime(1, 1, 1)), lists.Article(str(-1234567890), str(1.5 + 3.5j), str(1.5 + 3.5j), datetime.datetime(2011, 1, 1)), lists.Article(str(-1234567890), str(1.5 + 3.5j), str(b'python.org', 'idna'), datetime.datetime(2014, 11, 2, 1, 30)), lists.Article(str(-1234567890), str(1.5 + 3.5j), str(1e+300 * 1e+300), datetime.datetime(1, 2, 3, 4, 5, 6, 7)), lists.Article(str(-1234567890), str(1.5 + 3.5j), str(b'\xf0\xa3\x91\x96', 'utf-8'), datetime.datetime(1970, 1, 1)), lists.Article(str(-1234567890), str(1.5 + 3.5j), str(b'\xf0\xa3\x91\x96', 'utf-8'), datetime.datetime(1, 1, 1)), lists.Article(str(-1234567890), str(1.5 + 3.5j), str(b'xn--pythn-mua.org', 'idna'), datetime.datetime(2014, 11, 2, 1, 30)), lists.Article(str(-1234567890), str(1.5 + 3.5j), str(1.5 + 3.5j), datetime.datetime(2010, 1, 1))], str(Exception))
14+
15+
self.assertEqual([], actual)
16+
17+
# endregion
18+
19+
# endregion
20+
21+
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
import sys
2+
sys.path.append('/home/vyacheslav/Desktop/utbot/UTBotJava/utbot-python/samples/samples')
3+
import unittest
4+
import builtins
5+
import matrix
6+
import copyreg
7+
import types
8+
9+
10+
class TestMatrix(unittest.TestCase):
11+
# region Test suites for executable matrix.__mul__
12+
# region
13+
def test__mul__(self):
14+
matrix = matrix.Matrix([])
15+
16+
actual = matrix.__mul__(int('-1'))
17+
18+
matrix1 = copyreg._reconstructor(matrix.Matrix, builtins.object, None)
19+
matrix1.elements = []
20+
matrix1.dim = (0, 0)
21+
actual_elements = actual.elements
22+
expected_elements = matrix1.elements
23+
self.assertEqual(expected_elements, actual_elements)
24+
actual_dim = actual.dim
25+
expected_dim = matrix1.dim
26+
self.assertEqual(expected_dim, actual_dim)
27+
28+
def test__mul__throws_t(self):
29+
matrix = matrix.Matrix([])
30+
self1 = matrix.Matrix([[float(0.0), float(7.3)], [float(10 ** 23), float('+NAn'), float('+infinity'), float('+NAn'), float('+infinity'), float(0.0), float(0.0), float('+NAn'), float('+NAn')], [float(-1), float(314), float(314), float(1970), float(314)], [float(10 ** 23), float('+NAn'), float('+infinity'), float('+NAn'), float('+infinity'), float(0.0), float(0.0), float('+NAn'), float('+NAn')]])
31+
32+
matrix.__mul__(self1)
33+
34+
# raises matrix.MatrixException
35+
36+
# endregion
37+
38+
# endregion
39+
40+
# region Test suites for executable matrix.__matmul__
41+
# region
42+
def test__matmul__throws_t(self):
43+
matrix = matrix.Matrix([])
44+
45+
matrix.__matmul__(0)
46+
47+
# raises matrix.MatrixException
48+
49+
# endregion
50+
51+
# endregion
52+
53+
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
import sys
2+
sys.path.append('/home/vyacheslav/Desktop/utbot/UTBotJava/utbot-python/samples/samples')
3+
import unittest
4+
import builtins
5+
import primitive_types
6+
7+
8+
class TestTopLevelFunctions(unittest.TestCase):
9+
# region Test suites for executable primitive_types.pretty_print
10+
# region
11+
def test_pretty_print(self):
12+
actual = primitive_types.pretty_print(object())
13+
14+
self.assertEqual('I do not have any variants', actual)
15+
16+
def test_pretty_print1(self):
17+
actual = primitive_types.pretty_print(str(b'python.org', 'idna'))
18+
19+
self.assertEqual('It is string.\nValue <<python.org>>', actual)
20+
21+
def test_pretty_print2(self):
22+
actual = primitive_types.pretty_print(int('535a7988a', 13))
23+
24+
self.assertEqual('It is integer.\nValue 4294967297', actual)
25+
26+
def test_pretty_print3(self):
27+
actual = primitive_types.pretty_print(complex(float('inf'), float('inf')))
28+
29+
self.assertEqual('It is complex.\nValue (inf + infi)', actual)
30+
31+
def test_pretty_print4(self):
32+
actual = primitive_types.pretty_print([])
33+
34+
self.assertEqual('It is list.\nValue []', actual)
35+
36+
# endregion
37+
38+
# endregion
39+
40+

0 commit comments

Comments
 (0)