From d46bce422fd03cd57d1ba336361da17d6efb48db Mon Sep 17 00:00:00 2001 From: Manel Caro Date: Fri, 31 Jul 2020 02:07:37 +0200 Subject: TEST restructure --- test-cli/test/helpers/plc.py | 57 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 test-cli/test/helpers/plc.py (limited to 'test-cli/test/helpers/plc.py') diff --git a/test-cli/test/helpers/plc.py b/test-cli/test/helpers/plc.py new file mode 100644 index 0000000..3b00934 --- /dev/null +++ b/test-cli/test/helpers/plc.py @@ -0,0 +1,57 @@ +import sh +from sh import flashcp +from sh import flash_erase +from sh import ErrorReturnCode +from sh import Command +from test.helpers.gpio import gpio + + +class dcpPLC(object): + __nReset = None + __Phy = None + __Plc = None + __mtd_device = None + __factool = None + __myConfigTool = None + + def __init__(self, plcfactool, mtd_device): + # default save firmware + self.__nRest = gpio('75', 'out', '0') + self.__nRest = gpio('69', 'out', '0') + self.__nRest = gpio('78', 'out', '1') + self.__factool = plcfactool + self.__mtd_device = mtd_device + self.__myConfigTool = Command(self.__factool) + + def setSaveFirmwareMode(self): + self.__nRest = gpio('75', 'out', '0') + self.__nRest = gpio('69', 'out', '0') + self.__nRest = gpio('78', 'out', '1') + + def setBootMode(self): + self.__nRest = gpio('78', 'out', '0') + self.__nRest = gpio('75', 'out', '1') + self.__nRest = gpio('69', 'out', '1') + + def SaveFirmware(self, firmare): + self.setSaveFirmwareMode() + try: + flash_erase(self.__mtd_device) + flashcp(firmare, self.__mtd_device) + except ErrorReturnCode as Error: + return False, "plc flash firmware failed {} ".format(Error.exit_code) + return True, '' + + def set_plc (self, var, value, password): + try: + self.__myConfigTool("-o", "SET", "-p", "{}".format(var), '{}'.format(value), "-w", "{}".format(password)) + except ErrorReturnCode as Error: + return False, "set var failed {} {}".format(var,Error.exit_code) + return True, '' + + def get_plc (self, var, value, password): + try: + self.__myConfigTool("-o", "GET", "-p", "{}".format(var), '{}'.format(value), "-w", "{}".format(password)) + except ErrorReturnCode as Error: + return False, "set var failed {} {}".format(var,Error.exit_code) + return True, '' -- cgit v1.1 From 227d9783fe8327b84ac3b0e032f012ba144816f8 Mon Sep 17 00:00:00 2001 From: Manel Caro Date: Fri, 31 Jul 2020 13:58:41 +0200 Subject: IGEP0048: added plc test --- test-cli/test/helpers/plc.py | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) (limited to 'test-cli/test/helpers/plc.py') diff --git a/test-cli/test/helpers/plc.py b/test-cli/test/helpers/plc.py index 3b00934..b1ec382 100644 --- a/test-cli/test/helpers/plc.py +++ b/test-cli/test/helpers/plc.py @@ -1,10 +1,10 @@ import sh from sh import flashcp -from sh import flash_erase +from sh import flash_eraseall from sh import ErrorReturnCode from sh import Command from test.helpers.gpio import gpio - +import time class dcpPLC(object): __nReset = None @@ -33,10 +33,18 @@ class dcpPLC(object): self.__nRest = gpio('75', 'out', '1') self.__nRest = gpio('69', 'out', '1') + def setPLCReset(self): + self.__nRest = gpio('75', 'out', '0') + self.__nRest = gpio('69', 'out', '0') + time.sleep(0.25) + self.__nRest = gpio('69', 'out', '1') + self.__nRest = gpio('75', 'out', '1') + + def SaveFirmware(self, firmare): self.setSaveFirmwareMode() try: - flash_erase(self.__mtd_device) + flash_eraseall(self.__mtd_device) flashcp(firmare, self.__mtd_device) except ErrorReturnCode as Error: return False, "plc flash firmware failed {} ".format(Error.exit_code) @@ -44,11 +52,21 @@ class dcpPLC(object): def set_plc (self, var, value, password): try: - self.__myConfigTool("-o", "SET", "-p", "{}".format(var), '{}'.format(value), "-w", "{}".format(password)) + res = self.__myConfigTool("-o", "SET", "-p", "{}={}".format(var, value), "-w", "{}".format(password)) + print(res) except ErrorReturnCode as Error: return False, "set var failed {} {}".format(var,Error.exit_code) return True, '' + def set_plc2 (self, var1, value1,var2, value2, password): + try: + res = self.__myConfigTool("-o", "SET", "-p", "{}={}".format(var1, value1), "-p", "{}={}".format(var2, value2), "-w", "{}".format(password)) + print(res) + except ErrorReturnCode as Error: + return False, "set var failed {}".format(Error.exit_code) + return True, '' + + def get_plc (self, var, value, password): try: self.__myConfigTool("-o", "GET", "-p", "{}".format(var), '{}'.format(value), "-w", "{}".format(password)) -- cgit v1.1 From 8765219910c95d0712ac0b2c27d33fd7a21fe3b8 Mon Sep 17 00:00:00 2001 From: Hector Fernandez Date: Mon, 14 Sep 2020 17:40:45 +0200 Subject: IGEP0048: Solved PLC test error. The PLC MAC address can be changed now. --- test-cli/test/helpers/plc.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'test-cli/test/helpers/plc.py') diff --git a/test-cli/test/helpers/plc.py b/test-cli/test/helpers/plc.py index b1ec382..c9ef774 100644 --- a/test-cli/test/helpers/plc.py +++ b/test-cli/test/helpers/plc.py @@ -36,7 +36,7 @@ class dcpPLC(object): def setPLCReset(self): self.__nRest = gpio('75', 'out', '0') self.__nRest = gpio('69', 'out', '0') - time.sleep(0.25) + time.sleep(1) self.__nRest = gpio('69', 'out', '1') self.__nRest = gpio('75', 'out', '1') @@ -58,7 +58,7 @@ class dcpPLC(object): return False, "set var failed {} {}".format(var,Error.exit_code) return True, '' - def set_plc2 (self, var1, value1,var2, value2, password): + def set_plc2 (self, var1, value1, var2, value2, password): try: res = self.__myConfigTool("-o", "SET", "-p", "{}={}".format(var1, value1), "-p", "{}={}".format(var2, value2), "-w", "{}".format(password)) print(res) -- cgit v1.1 From 6550286c1f6ce5b1dbfc718b5566af3012ab538a Mon Sep 17 00:00:00 2001 From: Hector Fernandez Date: Tue, 15 Sep 2020 16:29:14 +0200 Subject: IGEP0048: PLC test: Variable IP of the connected PLC. Use discover before changing MAC address. --- test-cli/test/helpers/plc.py | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) (limited to 'test-cli/test/helpers/plc.py') diff --git a/test-cli/test/helpers/plc.py b/test-cli/test/helpers/plc.py index c9ef774..069058d 100644 --- a/test-cli/test/helpers/plc.py +++ b/test-cli/test/helpers/plc.py @@ -6,6 +6,7 @@ from sh import Command from test.helpers.gpio import gpio import time + class dcpPLC(object): __nReset = None __Phy = None @@ -40,7 +41,6 @@ class dcpPLC(object): self.__nRest = gpio('69', 'out', '1') self.__nRest = gpio('75', 'out', '1') - def SaveFirmware(self, firmare): self.setSaveFirmwareMode() try: @@ -50,26 +50,33 @@ class dcpPLC(object): return False, "plc flash firmware failed {} ".format(Error.exit_code) return True, '' - def set_plc (self, var, value, password): + def set_plc(self, var, value, password): try: res = self.__myConfigTool("-o", "SET", "-p", "{}={}".format(var, value), "-w", "{}".format(password)) print(res) except ErrorReturnCode as Error: - return False, "set var failed {} {}".format(var,Error.exit_code) + return False, "set var failed {} {}".format(var, Error.exit_code) return True, '' - def set_plc2 (self, var1, value1, var2, value2, password): + def set_plc2(self, var1, value1, var2, value2, password): try: - res = self.__myConfigTool("-o", "SET", "-p", "{}={}".format(var1, value1), "-p", "{}={}".format(var2, value2), "-w", "{}".format(password)) + res = self.__myConfigTool("-o", "SET", "-p", "{}={}".format(var1, value1), "-p", + "{}={}".format(var2, value2), "-w", "{}".format(password)) print(res) except ErrorReturnCode as Error: return False, "set var failed {}".format(Error.exit_code) return True, '' - - def get_plc (self, var, value, password): + def get_plc(self, var, value, password): try: self.__myConfigTool("-o", "GET", "-p", "{}".format(var), '{}'.format(value), "-w", "{}".format(password)) except ErrorReturnCode as Error: - return False, "set var failed {} {}".format(var,Error.exit_code) + return False, "set var failed {} {}".format(var, Error.exit_code) return True, '' + + def discover(self): + try: + self.__myConfigTool("-o", "DISCOVER") + except ErrorReturnCode: + return False + return True -- cgit v1.1