soft of by default

This commit is contained in:
Devaev Maxim 2019-04-30 01:05:25 +03:00
parent 76bc1bcea6
commit fb9b1b555d
5 changed files with 15 additions and 15 deletions

View File

@ -110,10 +110,10 @@ class IpmiServer(BaseIpmiServer): # pylint: disable=too-many-instance-attribute
def __chassis_control_handler(self, request: Dict, session: IpmiServerSession) -> None:
handle = {
0: "/atx/power?action=off",
0: "/atx/power?action=off_hard",
1: "/atx/power?action=on",
3: "/atx/power?action=reset",
5: "/atx/power?action=off_soft",
3: "/atx/power?action=reset_hard",
5: "/atx/power?action=off",
}.get(request["data"][0], "")
if handle:
if self.__make_request("POST", handle, session)[0] == 409:

View File

@ -136,20 +136,20 @@ class Atx: # pylint: disable=too-many-instance-attributes
@_atx_working
async def power_off(self) -> bool:
if self.get_state()["leds"]["power"]:
await self.click_power_long()
return True
return False
@_atx_working
async def power_off_soft(self) -> bool:
if self.get_state()["leds"]["power"]:
await self.click_power()
return True
return False
@_atx_working
async def power_reset(self) -> bool:
async def power_off_hard(self) -> bool:
if self.get_state()["leds"]["power"]:
await self.click_power_long()
return True
return False
@_atx_working
async def power_reset_hard(self) -> bool:
if self.get_state()["leds"]["power"]:
await self.click_reset()
return True

View File

@ -437,8 +437,8 @@ class Server: # pylint: disable=too-many-instance-attributes
done = await ({
"on": self.__atx.power_on,
"off": self.__atx.power_off,
"off_soft": self.__atx.power_off_soft,
"reset": self.__atx.power_reset,
"off_hard": self.__atx.power_off_hard,
"reset_hard": self.__atx.power_reset_hard,
}[action])()
return _json({"action": action, "done": done})

View File

@ -31,7 +31,7 @@ from .basic import valid_number
# =====
def valid_atx_power_action(arg: Any) -> str:
return check_string_in_list(arg, "ATX power action", ["on", "off", "off_soft", "reset"])
return check_string_in_list(arg, "ATX power action", ["on", "off", "off_hard", "reset_hard"])
def valid_atx_button(arg: Any) -> str:

View File

@ -40,7 +40,7 @@ from kvmd.validators.kvm import valid_hid_mouse_wheel
# =====
@pytest.mark.parametrize("arg", ["ON ", "OFF ", "OFF_soft ", "RESET "])
@pytest.mark.parametrize("arg", ["ON ", "OFF ", "OFF_HARD ", "RESET_HARD "])
def test_ok__valid_atx_power_action(arg: Any) -> None:
assert valid_atx_power_action(arg) == arg.strip().lower()