Skip to content

Commit a1f8bd9

Browse files
committed
Add feature
Add feature * Now executor can execute another executor * Now executor can use time module's function
1 parent 52dbc28 commit a1f8bd9

File tree

3 files changed

+20
-14
lines changed

3 files changed

+20
-14
lines changed

je_auto_control/utils/executor/action_executor.py

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,30 @@
11
import sys
2+
import time
23
import types
4+
from inspect import getmembers, isbuiltin
35

4-
from je_auto_control.utils.generate_report.generate_json_report import generate_json
5-
from je_auto_control.utils.generate_report.generate_json_report import generate_json_report
6-
from je_auto_control.wrapper.auto_control_keyboard import check_key_is_press
7-
from je_auto_control.wrapper.auto_control_mouse import position, press_mouse, release_mouse, click_mouse, scroll
8-
from je_auto_control.wrapper.auto_control_image import locate_all_image, locate_and_click, locate_image_center
9-
from je_auto_control.wrapper.auto_control_keyboard import press_key, release_key, hotkey, type_key, write
10-
from je_auto_control.wrapper.auto_control_record import record, stop_record
11-
from je_auto_control.wrapper.auto_control_screen import screenshot, size
12-
from je_auto_control.wrapper.auto_control_mouse import set_position
136
from je_auto_control.utils.exception.exception_tags import action_is_null_error, add_command_exception_tag, \
147
executor_list_error
158
from je_auto_control.utils.exception.exception_tags import cant_execute_action_error
169
from je_auto_control.utils.exception.exceptions import AutoControlActionException, AutoControlAddCommandException
1710
from je_auto_control.utils.exception.exceptions import AutoControlActionNullException
1811
from je_auto_control.utils.generate_report.generate_html_report import generate_html
1912
from je_auto_control.utils.generate_report.generate_html_report import generate_html_report
20-
13+
from je_auto_control.utils.generate_report.generate_json_report import generate_json
14+
from je_auto_control.utils.generate_report.generate_json_report import generate_json_report
15+
from je_auto_control.utils.generate_report.generate_xml_report import generate_xml
16+
from je_auto_control.utils.generate_report.generate_xml_report import generate_xml_report
2117
from je_auto_control.utils.json.json_file import read_action_json
2218
from je_auto_control.utils.test_record.record_test_class import record_action_to_list, test_record_instance
19+
from je_auto_control.wrapper.auto_control_image import locate_all_image, locate_and_click, locate_image_center
20+
from je_auto_control.wrapper.auto_control_keyboard import check_key_is_press
2321
from je_auto_control.wrapper.auto_control_keyboard import get_special_table, get_keys_table
22+
from je_auto_control.wrapper.auto_control_keyboard import press_key, release_key, hotkey, type_key, write
2423
from je_auto_control.wrapper.auto_control_mouse import get_mouse_table
25-
from je_auto_control.utils.generate_report.generate_xml_report import generate_xml
26-
from je_auto_control.utils.generate_report.generate_xml_report import generate_xml_report
24+
from je_auto_control.wrapper.auto_control_mouse import position, press_mouse, release_mouse, click_mouse, scroll
25+
from je_auto_control.wrapper.auto_control_mouse import set_position
26+
from je_auto_control.wrapper.auto_control_record import record, stop_record
27+
from je_auto_control.wrapper.auto_control_screen import screenshot, size
2728

2829

2930
class Executor(object):
@@ -70,7 +71,13 @@ def __init__(self):
7071
# record
7172
"record": record,
7273
"stop_record": stop_record,
74+
# execute
75+
"execute_action": self.execute_action,
76+
"execute_files": self.execute_files,
7377
}
78+
# get all time module builtin function and add to event dict
79+
for function in getmembers(time, isbuiltin):
80+
self.event_dict.update({str(function): function})
7481

7582
def _execute_event(self, action: list):
7683
event = self.event_dict.get(action[0])

dev.toml renamed to pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta"
66

77
[project]
88
name = "je_auto_control_dev"
9-
version = "0.0.58"
9+
version = "0.0.59"
1010
authors = [
1111
{ name = "JE-Chen", email = "zenmailman@gmail.com" },
1212
]

requirements.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1 @@
11
je_auto_control
2-

0 commit comments

Comments
 (0)