Revise energy scale (power) base test

Update test_escale_base.robot to:
  - Resolve "Witherspoon phosphor-settings-manager:
    Input parameter for PowerCap is invalid.  Input: 500 Watts
    is not in range 556..3389".
  - Check and clear expected BMC error logs as a consequence
    of deliberately setting a power limit out of range.

Resolves openbmc/openbmc-test-automation#204
Change-Id: Iadb159d67c1b604aca675e59e2b94cc5bb80ff70
Signed-off-by: Steven Sombar <ssombar@us.ibm.com>
diff --git a/tests/test_escale_base.robot b/tests/test_escale_base.robot
index d1ab4f5..8fca023 100755
--- a/tests/test_escale_base.robot
+++ b/tests/test_escale_base.robot
@@ -8,22 +8,24 @@
 
 Resource          ../lib/energy_scale_utils.robot
 Resource          ../lib/openbmc_ffdc.robot
+Resource          ../lib/utils.robot
+Resource          ../lib/logging_utils.robot
+Library           ../lib/logging_utils.py
 
 
 Suite Setup      Suite Setup Execution
 Test Teardown    Test Teardown Execution
 
 
-
 *** Variables ****
 
-${over_max_power}       3051
+${over_max_power}       3500
 ${max_power}            3050
 ${mid_power}            1950
-${min_power}            500
+${min_power}            600
 ${below_min_power}      499
 ${zero_power}           0
-#  The power limits shown above are documented at
+#  The power limits are documented in
 #  open-power/witherspoon-xml/master/witherspoon.xml.
 
 
@@ -107,6 +109,16 @@
     Test Power Limit  ${min_power}  ${zero_power}
     Test Power Limit  ${max_power}  ${over_max_power}
 
+    # There should be one error log entry for each attempt to set
+    # a power limit out of range.
+    ${error_logs}=  Get Error Logs
+    ${num_logs}=  Get Length  ${error_logs}
+    Run Keyword If  ${num_logs} != 3  Run Keywords
+    ...  Print Error Logs  ${error_logs}
+    ...  AND  Fail  msg=Unexpected number of error logs.
+
+    Delete Error Logs
+
 
 Test Power Limit
     [Documentation]  Set power and check limit.
@@ -118,11 +130,9 @@
 
     Set DCMI Power Limit And Verify  ${good_power}
 
-    # Try to set out of bounds.
-    ${expected_error}=  Set Variable
-    ...  Failed setting dcmi power limit to ${outside_bounds_power} watts.
-    Run Keyword and Expect Error  ${expected_error}
-    ...  Set DCMI Power Limit And Verify  ${outside_bounds_power}
+    # Attempt set power limit out of range.
+    ${data}=  Create Dictionary  data=${outside_bounds_power}
+    Write Attribute   ${CONTROL_HOST_URI}power_cap  PowerCap  data=${data}
 
 
 Suite Setup Execution
@@ -140,6 +150,8 @@
     ${initial_power_setting}=  Get DCMI Power Limit
     Set Suite Variable  ${initial_power_setting}  children=true
 
+    Delete Error Logs
+
 
 Test Teardown Execution
     [Documentation]  Do the post test teardown.