Commit f7515901c6c9d37732ae802085ada91e180c749a
1 parent
fd880010
Exists in
dev
Agent bugfix
Showing
1 changed file
with
20 additions
and
13 deletions
Show diff stats
src/core/pyros_django/agent/Agent.py
... | ... | @@ -332,6 +332,7 @@ class Agent: |
332 | 332 | AGENT_SPECIFIC_COMMANDS = [ |
333 | 333 | "do_specific1", |
334 | 334 | "set_specific2", |
335 | + "do_specific3", | |
335 | 336 | ] |
336 | 337 | |
337 | 338 | # |
... | ... | @@ -416,12 +417,14 @@ class Agent: |
416 | 417 | |
417 | 418 | # 2) NORMAL CASES (test scenario) |
418 | 419 | |
420 | + | |
419 | 421 | # Agent general command |
420 | 422 | "Agent set_mode ATTENTIVE", |
421 | 423 | # => should get "ATTENTIVE" |
422 | - "self get_mode", | |
424 | + "self get_mode", | |
423 | 425 | |
424 | - # Agent specific command => should be executed | |
426 | + # Agent specific commands => should be executed | |
427 | + "self do_specific3", | |
425 | 428 | "self do_specific1 1 2 3.5 titi (3,'titi',5) [1,3,5,7,9]", |
426 | 429 | |
427 | 430 | "self set_mode ROUTINE", |
... | ... | @@ -1965,20 +1968,21 @@ class Agent: |
1965 | 1968 | methods_list = [method for method in dir(self) if callable(getattr(self, method))] |
1966 | 1969 | #print(methodsList) |
1967 | 1970 | func = cmd.name |
1968 | - args = [] | |
1971 | + if func not in methods_list: raise AgentCmdUnimplementedException(cmd) | |
1969 | 1972 | #for arg in cmd.args: print(arg) |
1970 | - for arg in cmd.args: | |
1971 | - #print(arg) | |
1972 | - #try: | |
1973 | - # Evaluate arg only if it is not a word (letters) | |
1974 | - if not arg[0].isalpha(): | |
1975 | - arg = ast.literal_eval(arg) | |
1976 | - #except ValueError as e: newarg = arg | |
1977 | - args.append(arg) | |
1978 | - print(args) | |
1973 | + if cmd.args: | |
1974 | + args = [] | |
1975 | + for arg in cmd.args: | |
1976 | + #print(arg) | |
1977 | + #try: | |
1978 | + # Evaluate arg only if it is not a word (letters) | |
1979 | + if not arg[0].isalpha(): | |
1980 | + arg = ast.literal_eval(arg) | |
1981 | + #except ValueError as e: newarg = arg | |
1982 | + args.append(arg) | |
1983 | + #print(args) | |
1979 | 1984 | #print(cmd.args) |
1980 | 1985 | #print(*cmd.args) |
1981 | - if func not in methods_list: raise AgentCmdUnimplementedException(cmd) | |
1982 | 1986 | try: |
1983 | 1987 | if cmd.args: |
1984 | 1988 | # equivalent to calling self.func(*cmd.args) |
... | ... | @@ -2066,6 +2070,9 @@ class Agent: |
2066 | 2070 | |
2067 | 2071 | #def set_specific2(self, arg1:str, arg2:int): pass |
2068 | 2072 | |
2073 | + def do_specific3(self): | |
2074 | + pass | |
2075 | + | |
2069 | 2076 | |
2070 | 2077 | ### |
2071 | 2078 | # ================================================================================================ | ... | ... |