*** Settings ***
Documentation          This suite is for testing System time in Open BMC.

Resource               ../lib/rest_client.robot
Resource               ../lib/ipmi_client.robot
Resource               ../lib/openbmc_ffdc.robot
Resource               ../lib/state_manager.robot
Resource               ../lib/resource.txt

Library                OperatingSystem
Library                DateTime

Test Setup             Open Connection And Log In
Test Teardown          Post Test Case Execution

Force Tags  Clock_Time

*** Variables ***
${SYSTEM_TIME_INVALID}      01/01/1969 00:00:00
${SYSTEM_TIME_VALID}        02/29/2016 09:10:00
${ALLOWED_TIME_DIFF}        3
# Equivalent epoch time for 02/17/2017 04:11:40
${SYSTEM_TIME_VALID_EPOCH}  ${1487304700000000}

*** Test Cases ***

Get System Time
    [Documentation]  Get system time using IPMI and verify that it matches
    ...              with BMC date time.
    [Tags]  Get_System_Time

    ${resp}=  Run IPMI Standard Command  sel time get
    ${ipmidate}=  Convert Date  ${resp}  date_format=%m/%d/%Y %H:%M:%S
    ...  exclude_millis=yes
    ${bmcdate}=  Get BMC Time Using IPMI
    ${diff}=  Subtract Date From Date  ${bmcdate}  ${ipmidate}
    ${diff}=  Convert To Number  ${diff}
    Should Be True  ${diff} < ${ALLOWED_TIME_DIFF}
    ...  Open BMC time does not match with IPMI sel time

Set Valid System Time
    [Documentation]  Set system time using IPMI and verify that it is
    ...              correctly set in BMC.
    [Tags]  Set_Valid_System_Time

    Set Time Owner  ${HOST_OWNER}
    Set Time Mode  ${MANUAL_MODE}

    ${resp}=  Run IPMI Standard Command  sel time set "${SYSTEM_TIME_VALID}"
    ${setdate}=  Convert Date  ${SYSTEM_TIME_VALID}
    ...  date_format=%m/%d/%Y %H:%M:%S  exclude_millis=yes
    ${bmcdate}=  Get BMC Time Using IPMI
    ${diff}=  Subtract Date From Date  ${bmcdate}  ${setdate}
    ${diff}=  Convert To Number  ${diff}
    Should Be True  ${diff} < ${ALLOWED_TIME_DIFF}
    ...  Open BMC time does not match with set time

Set Invalid System Time
    [Documentation]  Set system time with invalid time using IPMI and verify
    ...              that it should throw error.
    [Tags]  Set_Invalid_System_Time

    Set Time Owner  ${HOST_OWNER}
    Set Time Mode  ${MANUAL_MODE}

    ${msg}=  Run Keyword And Expect Error  *  Run IPMI Standard Command
    ...  sel time set "${SYSTEM_TIME_INVALID}"
    Should Start With  ${msg}  Specified time could not be parsed

Set System Time with no time
    [Documentation]  Set system time with no time using IPMI and verify
    ...              that it should throw error.
    [Tags]  Set_System_Time_with_no_time

    Set Time Owner  ${HOST_OWNER}
    Set Time Mode  ${MANUAL_MODE}

    ${msg}=  Run Keyword And Expect Error  *  Run IPMI Standard Command
    ...  sel time set ""
    Should Start With  ${msg}  Specified time could not be parsed


Set BMC Time With BMC And Manual
    [Documentation]  Set BMC time when time owner is BMC and time mode is
    ...              manual.
    [Tags]  Set_BMC_Time_With_BMC_And_Manual
    [Template]  Set Time Using REST

    #Operation    Owner          Mode            Status  BMC Time  Host Time
    Set BMC Time  ${BMC_OWNER}   ${MANUAL_MODE}  ok      Set       Change


Set BMC Time With Both And Manual
    [Documentation]  Set BMC time when time owner is Both and time mode is
    ...              manual.
    [Tags]  Set_BMC_Time_With_Both_And_Manual
    [Template]  Set Time Using REST

    #Operation    Owner          Mode            Status  BMC Time  Host Time
    Set BMC Time  ${BOTH_OWNER}  ${MANUAL_MODE}  ok      Set       Change


Set BMC Time With Split And Manual
    [Documentation]  Set BMC time when time owner is Split and time mode is
    ...              manual.
    [Tags]  Set_BMC_Time_With_Split_And_Manual
    [Template]  Set Time Using REST

    #Operation    Owner           Mode            Status  BMC Time  Host Time
    Set BMC Time  ${SPLIT_OWNER}  ${MANUAL_MODE}  ok      Set       No Change


Set BMC Time With BMC And NTP
    [Documentation]  Set BMC time when time owner is BMC and time mode is
    ...              NTP.
    [Tags]  Set_BMC_Time_With_BMC_And_NTP
    [Template]  Set Time Using REST

    #Operation    Owner           Mode            Status  BMC Time  Host Time
    Set BMC Time  ${BMC_OWNER}    ${NTP_MODE}     error   Not Set   No Change


Set BMC Time With Host And Manual
    [Documentation]  Set BMC time when time owner is Host and time mode is
    ...              Manual.
    [Tags]  Set_BMC_Time_With_Host_And_Manual
    [Template]  Set Time Using REST

    #Operation    Owner           Mode            Status  BMC Time  Host Time
    Set BMC Time  ${HOST_OWNER}   ${MANUAL_MODE}  error   Not Set   No Change


Set BMC Time With Both And NTP
    [Documentation]  Set BMC time when time owner is Both and time mode is
    ...              NTP.
    [Tags]  Set_BMC_Time_With_Both_And_NTP
    [Template]  Set Time Using REST

    #Operation    Owner           Mode            Status  BMC Time  Host Time
    Set BMC Time  ${BOTH_OWNER}   ${NTP_MODE}     error   Not Set   No Change


Set BMC Time With Split And NTP
    [Documentation]  Set BMC time when time owner is Split and time mode is
    ...              NTP.
    [Tags]  Set_BMC_Time_With_Split_And_NTP
    [Template]  Set Time Using REST

    #Operation    Owner           Mode            Status  BMC Time  Host Time
    Set BMC Time  ${SPLIT_OWNER}  ${NTP_MODE}     error   Not Set   No Change


Set BMC Time With Host And NTP
    [Documentation]  Set BMC time when time owner is Host and time mode is
    ...              NTP.
    [Tags]  Set_BMC_Time_With_Host_And_NTP
    [Template]  Set Time Using REST

    #Operation    Owner           Mode            Status  BMC Time  Host Time
    Set BMC Time  ${HOST_OWNER}   ${NTP_MODE}     error   Not Set   No Change


Set Host Time With Host And Manual
    [Documentation]  Set host time when time owner is host and time mode is
    ...              manual.
    [Tags]  Set_Host_Time_With_Host_And_Manual
    [Template]  Set Time Using REST

    #Operation     Owner          Mode            Status  BMC Time  Host Time
    Set Host Time  ${HOST_OWNER}  ${MANUAL_MODE}  ok      Change    Set


Set Host Time With Both And Manual
    [Documentation]  Set host time when time owner is both and time mode is
    ...              manual.
    [Tags]  Set_Host_Time_With_Both_And_Manual
    [Template]  Set Time Using REST

    #Operation     Owner          Mode            Status  BMC Time  Host Time
    Set Host Time  ${BOTH_OWNER}  ${MANUAL_MODE}  ok      Change    Set


Set Host Time With Both And NTP
    [Documentation]  Set host time when time owner is both and time mode is
    ...              NTP.
    [Tags]  Set_Host_Time_With_Both_And_NTP
    [Template]  Set Time Using REST

    #Operation     Owner           Mode           Status  BMC Time   Host Time
    Set Host Time  ${BOTH_OWNER}   ${NTP_MODE}    error   No Change  Not Set


Set Host Time With Split And Manual
    [Documentation]  Set host time when time owner is split and time mode is
    ...              manual.
    [Tags]  Set_Host_Time_With_Split_And_Manual
    [Template]  Set Time Using REST

    #Operation     Owner           Mode            Status  BMC Time   Host Time
    Set Host Time  ${SPLIT_OWNER}  ${MANUAL_MODE}  ok      No Change  Set


Set Host Time With Split And NTP
    [Documentation]  Set host time when time owner is split and time mode is
    ...              NTP.
    [Tags]  Set_Host_Time_With_Split_And_NTP
    [Template]  Set Time Using REST

    #Operation     Owner           Mode            Status   BMC Time   HOST Time
    Set Host Time  ${SPLIT_OWNER}  ${NTP_MODE}     ok       No Change  Set


Set Host Time With BMC And Manual
    [Documentation]  Set host time when time owner is BMC and time mode is
    ...              Manual.
    [Tags]  Set_Host_Time_With_BMC_And_Manual
    [Template]  Set Time Using REST

    #Operation     Owner           Mode            Status   BMC Time   HOST Time
    Set Host Time  ${BMC_OWNER}    ${MANUAL_MODE}  error    No Change  Not Set


Set Host Time With BMC Owner NTP
    [Documentation]  Set host time when time owner is BMC and time mode is
    ...              NTP.
    [Tags]  Set_Host_Time_With_BMC_And_NTP
    [Template]  Set Time Using REST

    #Operation     Owner           Mode            Status   BMC Time   HOST Time
    Set Host Time  ${BMC_OWNER}    ${NTP_MODE}     error    No Change  Not Set


Set Host Time With Host And NTP
    [Documentation]  Set host time when time owner is Host and time mode is
    ...              NTP.
    [Tags]  Set_Host_Time_With_Host_And_NTP
    [Template]  Set Time Using REST

    #Operation     Owner           Mode            Status  BMC Time    Host Time
    Set Host Time  ${HOST_OWNER}   ${NTP_MODE}     error   Not Change  No Set


Set Invalid Time Mode
    [Documentation]  Set time mode with invalid value using REST and verify
    ...              that it should throw error.
    [Tags]  Set_Invalid_Time_Mode

    ${timemode}=
    ...  Set Variable  xyz.openbmc_project.Time.Synchronization.Method.abc
    ${valueDict}=  Create Dictionary  data=${timemode}

    ${resp}=  OpenBMC Put Request
    ...  ${TIME_MANAGER_URI}sync_method/attr/TimeSyncMethod  data=${valueDict}
    ${jsondata}=  to JSON  ${resp.content}
    Should Be Equal  ${jsondata['status']}  error

    ${mode}=  Read Attribute  ${TIME_MANAGER_URI}sync_method  TimeSyncMethod
    Should Not Be Equal  ${mode}
    ...  xyz.openbmc_project.Time.Synchronization.Method.abc

Set Invalid Time Owner
    [Documentation]  Set time owner with invalid value using REST and verify
    ...              that it should throw error.
    [Tags]  Set_Invalid_Time_Owner

    ${timeowner}=  Set Variable  xyz.openbmc_project.Time.Owner.Owners.xyz
    ${valueDict}=  Create Dictionary  data=${timeowner}

    ${resp}=  OpenBMC Put Request
    ...  ${TIME_MANAGER_URI}owner/attr/TimeOwner  data=${valueDict}
    ${jsondata}=  to JSON  ${resp.content}
    Should Be Equal  ${jsondata['status']}  error

    ${owner}=  Read Attribute  ${TIME_MANAGER_URI}owner  TimeOwner
    Should Not Be Equal  ${owner}  xyz.openbmc_project.Time.Owner.Owners.xyz


*** Keywords ***

Get BMC Time Using IPMI
    [Documentation]  Returns BMC time of the system via IPMI

    ${stdout}  ${stderr}  ${output}=
    ...  Execute Command  date "+%m/%d/%Y %H:%M:%S"
    ...  return_stdout=True  return_stderr= True  return_rc=True
    Should Be Equal  ${output}  ${0}  msg=${stderr}

    ${resp}=  Convert Date  ${stdout}  date_format=%m/%d/%Y %H:%M:%S
    ...  exclude_millis=yes
    Should Not Be Empty  ${resp}
    [Return]  ${resp}

Set Time Owner
    [Arguments]  ${args}
    [Documentation]  Set time owner of the system via REST

    ${timeowner}=  Set Variable  ${args}
    ${valueDict}=  Create Dictionary  data=${timeowner}

    ${resp}=  OpenBMC Put Request
    ...  ${TIME_MANAGER_URI}owner/attr/TimeOwner  data=${valueDict}
    ${jsondata}=  to JSON  ${resp.content}

    ${host_state}=  Get Host State

    Run Keyword If  '${host_state}' == 'Off'
    ...  Log  System is in off state so owner change will get applied.
    ...  ELSE   Run keyword
    ...  Initiate Host PowerOff

    ${owner}=  Read Attribute  ${TIME_MANAGER_URI}owner  TimeOwner
    Should Be Equal  ${owner}  ${args}

    [Return]  ${jsondata['status']}


Set Time Mode
    [Arguments]  ${args}
    [Documentation]  Set time mode of the system via REST

    ${timemode}=  Set Variable  ${args}
    ${valueDict}=  Create Dictionary  data=${timemode}

    ${resp}=  OpenBMC Put Request
    ...  ${TIME_MANAGER_URI}sync_method/attr/TimeSyncMethod  data=${valueDict}
    ${jsondata}=  to JSON  ${resp.content}
    Sleep  5s

    ${mode}=  Read Attribute  ${TIME_MANAGER_URI}sync_method  TimeSyncMethod
    Should Be Equal  ${mode}  ${args}


Get BMC Time Using REST
    [Documentation]  Returns BMC time of the system via REST
    ...              Time Format : epoch time in microseconds
    ...              e.g 1507809604687329

    ${resp}=  Read Attribute  ${TIME_MANAGER_URI}/bmc  Elapsed
    [Return]  ${resp}


Get HOST Time Using REST
    [Documentation]  Returns HOST time of the system via REST
    ...              Time Format : epoch time in microseconds
    ...              e.g 1507809604687329

    ${resp}=  Read Attribute  ${TIME_MANAGER_URI}/host  Elapsed
    [Return]  ${resp}


Set Time Using REST
    [Arguments]  ${operation}  ${owner}  ${mode}  ${status}  ${bmc_time}
    ...  ${host_time}
    [Documentation]  Set BMC or Host time on system via REST.
    ...              Description of arguments:
    ...              operation :  Set BMC/Host time
    ...              owner: Time owner
    ...              mode:  Time mode
    ...              status:   Expected status of set BMC time URI
    ...              bmc_time:   Status of BMC time after operation
    ...              host_time:  Status of HOST time after operation
    ...                Set - Given time is set
    ...                Not Set - Given time is not set
    ...                Change - time is change
    ...                No Change - time is not change

    Set Time Owner  ${owner}
    Set Time Mode  ${mode}

    ${setdate}=  Set Variable  ${SYSTEM_TIME_VALID_EPOCH}

    ${time_owner_url}=  Set Variable If
    ...  '${operation}' == 'Set BMC Time'  ${TIME_MANAGER_URI}bmc
    ...  '${operation}' == 'Set Host Time'  ${TIME_MANAGER_URI}host

    ${start_time}=  Get Current Date

    ${old_bmc_time}=  Get BMC Time Using REST
    ${old_host_time}=  Get HOST Time Using REST

    ${valueDict}=  Create Dictionary  data=${SYSTEM_TIME_VALID_EPOCH}
    ${resp}=  OpenBMC Put Request
    ...  ${time_owner_url}/attr/Elapsed  data=${valueDict}
    ${jsondata}=  to JSON  ${resp.content}
    Should Be Equal As Strings  ${jsondata['status']}  ${status}

    ${new_bmc_time}=  Get BMC Time Using REST
    ${new_host_time}=  Get HOST Time Using REST

    ${end_time}=  Get Current Date
    ${time_duration}=  Subtract Date From Date  ${start_time}  ${end_time}
    ${time_duration}  Evaluate  abs(${time_duration})

    # Convert epoch to date format: YYYY-MM-DD hh:mm:ss.mil
    ${setdate}=  Convert epoch to date  ${setdate}
    ${new_bmc_time}=  Convert epoch to date  ${new_bmc_time}
    ${old_bmc_time}=  Convert epoch to date  ${old_bmc_time}
    ${new_host_time}=  Convert epoch to date  ${new_host_time}
    ${old_host_time}=  Convert epoch to date  ${old_host_time}


    ${bmc_diff_set_new}=
    ...  Subtract Date From Date  ${setdate}  ${new_bmc_time}
    ${bmc_diff_set_new}=  Evaluate  abs(${bmc_diff_set_new})
    ${bmc_diff_old_new}=
    ...  Subtract Date From Date  ${old_bmc_time}  ${new_bmc_time}
    ${bmc_diff_old_new}=  Evaluate  abs(${bmc_diff_old_new})

    ${host_diff_set_new}=
    ...  Subtract Date From Date  ${setdate}  ${new_host_time}
    ${host_diff_set_new}=  Evaluate  abs(${host_diff_set_new})
    ${host_diff_old_new}=
    ...  Subtract Date From Date  ${old_host_time}  ${new_host_time}
    ${host_diff_old_new}=  Evaluate  abs(${host_diff_old_new})

    Run Keyword If   '${bmc_time}' == 'Not Set'
    ...    Should Be True  ${bmc_diff_set_new} >= ${time_duration}
    ...  ELSE IF  '${bmc_time}' == 'Set'
    ...    Should Be True  ${bmc_diff_set_new} <= ${time_duration}
    ...  ELSE IF  '${bmc_time}' == 'No Change'
    ...    Should Be True  ${bmc_diff_old_new} <= ${time_duration}
    ...  ELSE IF  '${bmc_time}' == 'Change'
    ...    Should Be True  ${bmc_diff_old_new} >= ${time_duration}

    Run Keyword If  '${host_time}' == 'No Change'
    ...    Should Be True  ${host_diff_old_new} <= ${time_duration}
    ...  ELSE IF  '${host_time}' == 'Change'
    ...    Should Be True  ${host_diff_old_new} >= ${time_duration}
    ...  ELSE IF  '${host_time}' == 'Not Set'
    ...    Should Be True  ${host_diff_set_new} >= ${time_duration}
    ...  ELSE IF  '${host_time}' == 'Set'
    ...    Should Be True  ${host_diff_set_new} <= ${time_duration}

Convert epoch to date
    [Documentation]  Convert epoch time to date format.
    [Arguments]  ${epoch_time}
    # Description of argument(s):
    # epoch_time  epoch time in milliseconds.
    #             (e.g. 1487304700000000)

    # Convert epoch_time into floating point number.
    ${epoch_time}=  Convert To Number  ${epoch_time}

    # Convert epoch time from microseconds to seconds
    ${epoch_time_sec}=  Evaluate  ${epoch_time}/1000000

    # Convert epoch time to date format: YYYY-MM-DD hh:mm:ss.mil
    # e.g. 2017-02-16 22:14:11.000
    ${date}=  Convert Date  ${epoch_time_sec}

    [Return]  ${date}

Post Test Case Execution
    [Documentation]  Do the post test teardown.
    ...  1. Capture FFDC on test failure.
    ...  2. Sets defaults for time mode and owner.
    ...  3. Close all open SSH connections.

    FFDC On Test Case Fail
    Set Time Owner  ${BMC_OWNER}
    Set Time Mode  ${NTP_MODE}
    Close All Connections
