1b29d2e84SChris Austen*** Settings ***
2*f4a807bfSJoy OnyerikwuDocumentation           Synaccess Protocol Distribution Unit (PDU) library
3b29d2e84SChris Austen
4b29d2e84SChris AustenResource        ../../lib/pdu/pdu.robot
5b29d2e84SChris AustenLibrary         RequestsLibrary.RequestsKeywords
6b29d2e84SChris Austen
7b29d2e84SChris Austen*** Keywords ***
8b29d2e84SChris AustenConnect and Login
9*f4a807bfSJoy Onyerikwu    [Documentation]  Open PDU connection and login.
10b29d2e84SChris Austen    Validate Prereq
11e21c364eSMichael Walsh    SSHLibrary.Open Connection  ${PDU_IP}
12b29d2e84SChris Austen    ${auth}=    Create List     ${PDU_USERNAME}    ${PDU_PASSWORD}
13b29d2e84SChris Austen    Create Session    pdu    http://${PDU_IP}   auth=${auth}
14b29d2e84SChris Austen
15b29d2e84SChris AustenPower Cycle
16*f4a807bfSJoy Onyerikwu    [Documentation]  Perform PDU power cycle.
17b29d2e84SChris Austen    Connect and Login
18b29d2e84SChris Austen    ${ret}=    Get Request    pdu    /cmd.cgi?$A4 ${PDU_SLOT_NO}
19ac831dffSSteven Sombar    ${error_message}=  Catenate  Power cycle of slot ${PDU_SLOT_NO} failed.
20ac831dffSSteven Sombar    ...  PDU returned RC=${ret}.
21ac831dffSSteven Sombar    Should Be Equal As Strings  ${ret}  ${HTTP_OK}  msg=${error_message}
22