-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathempty_py3_script_creator.py
More file actions
executable file
·113 lines (97 loc) · 3.88 KB
/
empty_py3_script_creator.py
File metadata and controls
executable file
·113 lines (97 loc) · 3.88 KB
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#=========================================================
"""
Создает пустой шаблон питоновского скрипта в текущем каталоге
"""
#=========================================================
import sys
import os
#=========================================================
class New_script:
def __init__(self):
self.create_path = os.getcwd()
self.script_name = sys.argv[2]
self.script_comment = sys.argv[3]
self.of = open((self.create_path + '/' + self.script_name + '.py'), 'w')
#=========================================================
def create_header(self, spec_comment=''):
self.of.write('#!/usr/bin/env python\n')
self.of.write('# -*- coding: utf-8 -*-\n')
self.of.write('#=' + '='*77 +'=\n')
self.of.write('"""\n')
self.of.write((' ' + spec_comment + self.script_comment+'\n'))
self.of.write('"""\n')
self.of.write('#=' + '='*77 +'=\n')
def create_middle(self): pass
def create_import(self): pass
def create_ending(self): pass
def create_script(self): pass
#=========================================================
class Unit_test_script(New_script):
def __init__(self):
New_script.__init__(self)
def import_modules(self):
self.of.write('import unittest')
self.of.write('\n')
self.of.write('import random')
self.of.write('\n')
def create_middle(self):
self.of.write('class (unittest.TestCase) #TODO Напиши имя класса\n')
self.of.write('\n')
self.of.write(' def setUp(self):pass\n')
self.of.write('#-------------------------------------------------------\n')
self.of.write('\n')
self.of.write('#-------------------------------------------------------\n')
self.of.write(' def tearDown(self): pass\n')
self.of.write('\n')
def create_ending(self):
self.of.write('#=' + '='*77 +'=\n')
self.of.write('\n')
self.of.write('if __name__ == "__main__":\n')
self.of.write(' unittest.main()')
self.of.write('\n')
self.of.close()
def create_script(self):
self.create_header('Юнит тест для')
self.import_modules()
self.create_middle()
self.create_ending()
#=========================================================
class Simple_script(New_script):
def __init__(self):
New_script.__init__(self)
def import_modules(self):
self.of.write('\n')
def create_middle(self):
self.of.write('\n')
self.of.write('#-------------------------------------------------------\n')
self.of.write('\n')
self.of.write('#-------------------------------------------------------\n')
self.of.write('\n')
def create_ending(self):
self.of.write('#=' + '='*77 +'=\n')
self.of.write('\n')
self.of.write('if __name__ == "__main__": pass\n')
self.of.write('\n')
self.of.close()
def create_script(self):
self.create_header()
self.import_modules()
self.create_ending()
#=========================================================
if __name__ == "__main__":
f_keys = ['-s', '-t']
if len(sys.argv) != 4:
print("Введите три аргумента: имя_скрипта краткое_описание_скрипта\n")
else:
if sys.argv[1] == '-s':
scrpt = Simple_script()
scrpt.create_script()
elif sys.argv[1] == '-t':
scrpt = Unit_test_script()
scrpt.create_script()
else:
print('Укажите правильный ключ:\n')
print(' -s - генераци пустого python скрипта;\n')
print(' -t - генераци unittest скрипта;\n')