diff --git a/extended/code_update/code_update_utils.robot b/extended/code_update/code_update_utils.robot
index 3316b18..6d12349 100644
--- a/extended/code_update/code_update_utils.robot
+++ b/extended/code_update/code_update_utils.robot
@@ -17,8 +17,8 @@
 
 Preserve BMC Network Setting
     [Documentation]   Preserve Network setting
-    ${policy} =       Set Variable   ${1}
-    ${value} =    create dictionary   data=${policy}
+    ${policy}=       Set Variable   ${1}
+    ${value}=    create dictionary   data=${policy}
     Write Attribute   ${BMC_UPD_ATTR}  preserve_network_settings  data=${value}
     ${data}=      Read Properties   ${BMC_UPD_ATTR}
     should be equal as strings    ${data['preserve_network_settings']}   ${1}
@@ -30,8 +30,8 @@
     ...               The status could be either one of these
     ...               'Deferred for mounted filesystem. reboot BMC to apply.'
     ...               'Image ready to apply.'
-    @{img_path} =   Create List    /tmp/flashimg
-    ${data} =   create dictionary   data=@{img_path}
+    @{img_path}=   Create List    /tmp/flashimg
+    ${data}=   create dictionary   data=@{img_path}
     ${resp}=    openbmc post request    ${BMC_UPD_METHOD}   data=${data}
     should be equal as strings   ${resp.status_code}   ${HTTP_OK}
 
@@ -44,7 +44,7 @@
     [Documentation]   Switch to update mode in progress. This method calls
     ...               the Abort method to remove the pending update if there
     ...               is any before code activation.
-    ${data} =   create dictionary   data=@{EMPTY}
+    ${data}=   create dictionary   data=@{EMPTY}
     ${resp}=    openbmc post request    ${BMC_PREP_METHOD}   data=${data}
     should be equal as strings   ${resp.status_code}   ${HTTP_OK}
 
@@ -68,7 +68,7 @@
 
 
 System Readiness Test
-    ${l_status} =   Run Keyword and Return Status
+    ${l_status}=   Run Keyword and Return Status
     ...   Verify Ping and REST Authentication
     Run Keyword If  '${l_status}' == '${False}'
     ...   Fail  msg=System not in ideal state to use [ERROR]
@@ -103,7 +103,7 @@
     [Documentation]   Set the given test policy
     [arguments]   ${policy}
 
-    ${valueDict} =     create dictionary  data=${policy}
+    ${valueDict}=     create dictionary  data=${policy}
     Write Attribute    ${HOST_SETTING}    power_policy   data=${valueDict}
     ${currentPolicy}=  Read Attribute     ${HOST_SETTING}   power_policy
     Should Be Equal    ${currentPolicy}   ${policy}
diff --git a/extended/standby_bmc.robot b/extended/standby_bmc.robot
index 6ef3f65..f872bf9 100644
--- a/extended/standby_bmc.robot
+++ b/extended/standby_bmc.robot
@@ -31,12 +31,12 @@
     Wait For Host To Ping  ${OPENBMC_HOST}  1 mins
     Open Connection And Log In   host=${OPENBMC_HOST}
 
-    ${l_rest} =   Run Keyword And Return Status
+    ${l_rest}=   Run Keyword And Return Status
     ...    Initialize OpenBMC
     Run Keyword If  '${l_rest}' == '${False}'
     ...    Reboot and Wait for BMC Online
 
-    ${l_ready} =   Run Keyword And Return Status
+    ${l_ready}=   Run Keyword And Return Status
     ...    Get BMC State and Expect Standby
 
     Run Keyword If  '${l_ready}' == '${False}'
@@ -61,7 +61,7 @@
 BMC Online Test
     [Documentation]   BMC ping, SSH, REST connection Test
 
-    ${l_status} =   Run Keyword and Return Status
+    ${l_status}=   Run Keyword and Return Status
     ...   Verify Ping and REST Authentication
     Run Keyword If  '${l_status}' == '${False}'
     ...   Fail  msg=System not in ideal state to continue [ERROR]
@@ -87,7 +87,7 @@
     [Documentation]   Update the given restore policy
     [arguments]   ${policy}
 
-    ${valueDict} =     create dictionary  data=${policy}
+    ${valueDict}=     create dictionary  data=${policy}
     Write Attribute    ${HOST_SETTING}    power_policy   data=${valueDict}
     ${currentPolicy}=  Read Attribute     ${HOST_SETTING}   power_policy
     Should Be Equal    ${currentPolicy}   ${policy}
diff --git a/extended/test_journal.robot b/extended/test_journal.robot
index d16cfc5..1b4189b 100644
--- a/extended/test_journal.robot
+++ b/extended/test_journal.robot
@@ -46,8 +46,8 @@
 
     Start Journal Log
 
-    ${bootpolicy} =   Set Variable   ONETIME
-    ${valueDict} =   create dictionary   data=${bootpolicy}
+    ${bootpolicy}=   Set Variable   ONETIME
+    ${valueDict}=   create dictionary   data=${bootpolicy}
     openbmc put request  ${OPENBMC_BASE_URI}settings/host0/attr/boot_policy   data=${valueDict}
 
     ${output}=    Stop Journal Log
diff --git a/extended/test_networkd_ext.robot b/extended/test_networkd_ext.robot
index 3f41da8..3064920 100755
--- a/extended/test_networkd_ext.robot
+++ b/extended/test_networkd_ext.robot
@@ -53,7 +53,7 @@
     ${ipaddress}=      set variable    ${networkInfo['data'][2]}
     ${gateway}=        set variable    ${networkInfo['data'][3]}
 
-    ${isgatewayfound} =    Set Variable If   '${gateway}'=='${NEW_GATEWAY}'  true    false
+    ${isgatewayfound}=    Set Variable If   '${gateway}'=='${NEW_GATEWAY}'  true    false
     Log   ${isgatewayfound}
     ${isIPfound}=    Set Variable if    '${ipaddress}' == '${NEW_IP}'    true   false
     should be true   '${isIPfound}' == 'true' and '${isgatewayfound}' == 'true'
@@ -81,7 +81,7 @@
     ${ipaddress}=      set variable    ${networkInfo['data'][2]}
     ${gateway}=        set variable    ${networkInfo['data'][3]}
 
-    ${isgatewayfound} =    Set Variable If   '${gateway}'=='${OLD_GATEWAY}'  true    false
+    ${isgatewayfound}=    Set Variable If   '${gateway}'=='${OLD_GATEWAY}'  true    false
     Log   ${isgatewayfound}
     ${isIPfound}=    Set Variable if    '${ipaddress}' == '${OLD_IP}'    true   false
     should be true   '${isIPfound}' == 'true' and '${isgatewayfound}' == 'true'
@@ -101,7 +101,7 @@
     ${ipaddress}=      set variable    ${networkInfo['data'][2]}
     ${gateway}=        set variable    ${networkInfo['data'][3]}
 
-    ${isgatewayfound} =    Set Variable If   '${gateway}'=='${OLD_GATEWAY}'  true    false
+    ${isgatewayfound}=    Set Variable If   '${gateway}'=='${OLD_GATEWAY}'  true    false
     Log   ${isgatewayfound}
     ${isIPfound}=    Set Variable if    '${ipaddress}' == '${OLD_IP}'    true   false
     should be true   '${isIPfound}' == 'true' and '${isgatewayfound}' == 'true'
@@ -149,7 +149,7 @@
     ${resp}=       Call Method
     ...    ${OPENBMC_BASE_URI}NetworkManager/Interface/   GetAddress4    data=${args}
     should be equal as strings      ${resp.status_code}     ${HTTP_OK}
-    ${json} =   to json         ${resp.content}
+    ${json}=   to json         ${resp.content}
     Log   ${json['data'][2]}
     Log   ${json['data'][3]}
     [return]    ${json}
@@ -173,7 +173,7 @@
     ${resp}=       Call Method
     ...   ${OPENBMC_BASE_URI}NetworkManager/Interface/   SetHwAddress    data=${args}
     should not be equal as strings      ${resp.status_code}     ${HTTP_OK}
-    ${json} =   to json         ${resp.content}
+    ${json}=   to json         ${resp.content}
     should be equal as strings      ${json['status']}       ${result}
 
 
@@ -184,7 +184,7 @@
     ${resp}=       Call Method
     ...    ${OPENBMC_BASE_URI}NetworkManager/Interface/   SetHwAddress    data=${args}
     should be equal as strings      ${resp.status_code}     ${HTTP_OK}
-    ${json} =   to json         ${resp.content}
+    ${json}=   to json         ${resp.content}
     should be equal as strings      ${json['status']}       ${result}
     Wait For Host To Ping      ${OPENBMC_HOST}
 
@@ -194,5 +194,5 @@
     ${args}=     Create Dictionary   data=@{arglist}
     ${resp}=   Call Method
     ...    ${OPENBMC_BASE_URI}NetworkManager/Interface/    GetHwAddress    data=${args}
-    ${json} =   to json         ${resp.content}
+    ${json}=   to json         ${resp.content}
     should be equal as strings   ${json['data']}    ${address}
diff --git a/extended/test_power_restore.robot b/extended/test_power_restore.robot
index 8fc150e..3709dca 100644
--- a/extended/test_power_restore.robot
+++ b/extended/test_power_restore.robot
@@ -74,7 +74,7 @@
     [Documentation]   Set the given test policy
     [arguments]   ${policy}
 
-    ${valueDict} =     create dictionary  data=${policy}
+    ${valueDict}=     create dictionary  data=${policy}
     Write Attribute    ${HOST_SETTING}    power_policy   data=${valueDict}
     ${currentPolicy}=  Read Attribute     ${HOST_SETTING}   power_policy
     Should Be Equal    ${currentPolicy}   ${policy}
diff --git a/extended/test_syslog.robot b/extended/test_syslog.robot
index c8dab97..e87c475 100755
--- a/extended/test_syslog.robot
+++ b/extended/test_syslog.robot
@@ -25,15 +25,15 @@
     ...                 This testcase is to get all syslog settings from
     ...                 open bmc system.\n
 
-    ${ip_address} =    Read Attribute
+    ${ip_address}=    Read Attribute
     ...    ${OPENBMC_BASE_URI}LogManager/rsyslog   ipaddr
     Should Not Be Empty     ${ip_address}
 
-    ${port} =    Read Attribute
+    ${port}=    Read Attribute
     ...    ${OPENBMC_BASE_URI}LogManager/rsyslog   port
     Should Not Be Empty     ${port}
 
-    ${status} =    Read Attribute
+    ${status}=    Read Attribute
     ...    ${OPENBMC_BASE_URI}LogManager/rsyslog   status
     Should Not Be Empty     ${status}
 
@@ -42,7 +42,7 @@
     ...                 This testcase is to enable syslog with both ip address
     ...                 and port number of remote system.\n
 
-    ${resp} =    Enable Syslog Setting    ${SYSLOG_IP_ADDRESS}    ${SYSLOG_PORT}
+    ${resp}=    Enable Syslog Setting    ${SYSLOG_IP_ADDRESS}    ${SYSLOG_PORT}
     Should Be Equal    ${resp}    ok
     ${ip}=   Read Attribute
     ...   ${OPENBMC_BASE_URI}LogManager/rsyslog   ipaddr
@@ -56,7 +56,7 @@
     ...                 This testcase is to enable syslog without changing ip address
     ...                 and port number.\n
 
-    ${resp} =    Enable Syslog Setting    ${EMPTY}    ${EMPTY}
+    ${resp}=    Enable Syslog Setting    ${EMPTY}    ${EMPTY}
     Should Be Equal    ${resp}    ok
     ${status}=   Read Attribute
     ...   ${OPENBMC_BASE_URI}LogManager/rsyslog   status
@@ -66,7 +66,7 @@
     [Documentation]     ***GOOD PATH***
     ...                 This testcase is to enable syslog with only ip address.\n
 
-    ${resp} =    Enable Syslog Setting    ${SYSLOG_IP_ADDRESS}    ${EMPTY}
+    ${resp}=    Enable Syslog Setting    ${SYSLOG_IP_ADDRESS}    ${EMPTY}
     Should Be Equal    ${resp}    ok
     ${ip}=   Read Attribute
     ...   ${OPENBMC_BASE_URI}LogManager/rsyslog   ipaddr
@@ -82,7 +82,7 @@
     ${status}=   Read Attribute
     ...   ${OPENBMC_BASE_URI}LogManager/rsyslog   status
     Should Be Equal    ${status}    Enabled
-    ${resp} =    Enable Syslog Setting    ${EMPTY}    ${SYSLOG_PORT}
+    ${resp}=    Enable Syslog Setting    ${EMPTY}    ${SYSLOG_PORT}
     Should Be Equal    ${resp}    ok
     ${port}=   Read Attribute
     ...   ${OPENBMC_BASE_URI}LogManager/rsyslog   port
@@ -95,7 +95,7 @@
     [Documentation]     ***GOOD PATH***
     ...                 This testcase is to verify disabling syslog.\n
 
-    ${resp} =    Disable Syslog Setting    ${EMPTY}
+    ${resp}=    Disable Syslog Setting    ${EMPTY}
     Should Be Equal    ${resp}    ok
     ${status}=   Read Attribute
     ...   ${OPENBMC_BASE_URI}LogManager/rsyslog   status
@@ -106,7 +106,7 @@
     ...                 This testcase is to verify error while enabling syslog with
     ...                 invalid ip address.\n
 
-    ${resp} =    Enable Syslog Setting    ${INVALID_SYSLOG_IP_ADDRESS}    ${SYSLOG_PORT}
+    ${resp}=    Enable Syslog Setting    ${INVALID_SYSLOG_IP_ADDRESS}    ${SYSLOG_PORT}
     Should Be Equal    ${resp}    error
 
 Enable invalid port for Syslog remote server
@@ -114,7 +114,7 @@
     ...                 This testcase is to verify error while enabling syslog with
     ...                 invalid port number.\n
 
-    ${resp} =    Enable Syslog Setting    ${SYSLOG_IP_ADDRESS}    ${INVALID_SYSLOG_PORT}
+    ${resp}=    Enable Syslog Setting    ${SYSLOG_IP_ADDRESS}    ${INVALID_SYSLOG_PORT}
     Should Be Equal    ${resp}    error
 
 
@@ -127,7 +127,7 @@
     ...   ${OPENBMC_BASE_URI}LogManager/rsyslog   ipaddr
     ${old_port}=   Read Attribute
     ...   ${OPENBMC_BASE_URI}LogManager/rsyslog   port
-    ${old_status} =    Read Attribute
+    ${old_status}=    Read Attribute
     ...    ${OPENBMC_BASE_URI}LogManager/rsyslog   status
 
     ${output}=      Execute Command    /sbin/reboot
@@ -135,11 +135,11 @@
     Wait For Host To Ping   ${OPENBMC_HOST}
     Sleep   ${WAIT_FOR_SERVICES_UP}
 
-    ${ip_address} =    Read Attribute
+    ${ip_address}=    Read Attribute
     ...    ${OPENBMC_BASE_URI}LogManager/rsyslog   ipaddr
-    ${port} =    Read Attribute
+    ${port}=    Read Attribute
     ...    ${OPENBMC_BASE_URI}LogManager/rsyslog   port
-    ${status} =    Read Attribute
+    ${status}=    Read Attribute
     ...    ${OPENBMC_BASE_URI}LogManager/rsyslog   status
 
     Should Be Equal    ${old_ip}    ${ip_address}
@@ -151,18 +151,18 @@
 Enable Syslog Setting
     [Arguments]    ${ipaddr}    ${port}
     ${MYDICT}=  create Dictionary   ipaddr=${ipaddr}  port=${port}
-    @{rsyslog} =   Create List     ${MYDICT}
-    ${data} =   create dictionary   data=@{rsyslog}
-    ${resp} =   openbmc post request
+    @{rsyslog}=   Create List     ${MYDICT}
+    ${data}=   create dictionary   data=@{rsyslog}
+    ${resp}=   openbmc post request
     ...    ${OPENBMC_BASE_URI}LogManager/rsyslog/action/Enable     data=${data}
-    ${jsondata} =    to json    ${resp.content}
+    ${jsondata}=    to json    ${resp.content}
     [return]    ${jsondata['status']}
 
 Disable Syslog Setting
     [Arguments]    ${args}
-    @{setting_list} =   Create List     ${args}
-    ${data} =   create dictionary   data=@{setting_list}
-    ${resp} =   OpenBMC Post Request
+    @{setting_list}=   Create List     ${args}
+    ${data}=   create dictionary   data=@{setting_list}
+    ${resp}=   OpenBMC Post Request
     ...    ${OPENBMC_BASE_URI}LogManager/rsyslog/action/Disable      data=${data}
-    ${jsondata} =    to json    ${resp.content}
+    ${jsondata}=    to json    ${resp.content}
     [return]    ${jsondata['status']}
