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/sdl.py | 126 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 126 insertions(+) create mode 100644 test-cli/test/helpers/sdl.py (limited to 'test-cli/test/helpers/sdl.py') diff --git a/test-cli/test/helpers/sdl.py b/test-cli/test/helpers/sdl.py new file mode 100644 index 0000000..8f55d9f --- /dev/null +++ b/test-cli/test/helpers/sdl.py @@ -0,0 +1,126 @@ +import sdl2.ext +from sdl2 import * +import os +import time + +Colors = { + 'red': sdl2.ext.Color(255, 0, 0, 255), + 'green': sdl2.ext.Color(0, 255, 0, 255), + 'blue': sdl2.ext.Color(0, 0, 255, 255), + 'white': sdl2.ext.Color(255, 255, 255, 255), + 'black': sdl2.ext.Color(0, 0, 0, 255), +} + + +class SDL2(object): + __resources = None + __w = 1024 + __h = 768 + __winName = "noname" + __window = None + __factory = None + __renderer = None + __srender = None + + def __init__(self, parent): + os.environ['SDL_VIDEODRIVER'] = "x11" + os.environ['DISPLAY'] = ":0" + self.__resources = sdl2.ext.Resources(parent.getAppPath(), 'files') + sdl2.ext.init() + self.__createWindow() + + def __createWindow(self): + self.__window = sdl2.ext.Window(title='{}'.format(self.__winName), size=(self.__w, self.__h), position=(0, 0), + flags=( + SDL_WINDOW_HIDDEN | SDL_WINDOW_FULLSCREEN | SDL_WINDOW_BORDERLESS | SDL_WINDOW_MAXIMIZED)) + self.__renderer = sdl2.ext.Renderer(self.__window) + self.__factory = sdl2.ext.SpriteFactory(sdl2.ext.TEXTURE, renderer=self.__renderer) + self.__srender = self.__factory.create_sprite_render_system(self.__window) + self.__window.show() + SDL_ShowCursor(SDL_DISABLE) + + def createFont(self, fontName, fontSize, fontColor): + return sdl2.ext.FontManager(font_path=self.__resources.get_path(fontName), size=fontSize, color=fontColor) + + def WriteText(self, text, x, y, fontManager): + imText = self.__factory.from_text(text, fontmanager=fontManager) + self.__renderer.copy(imText, dstrect=(x, y, imText.size[0], imText.size[1])) + + def show(self): + self.__window.show() + + def hide(self): + self.__window.hide() + + def setColor(self, red, green, blue, alpha): + self.__renderer.color = sdl2.ext.Color(red, green, blue, alpha) + + def fillColor(self, red, green, blue, alpha): + self.setColor(red, green, blue, alpha) + self.__renderer.clear() + + def fillbgColor(self, color, update=False): + if color in Colors: + self.__renderer.color = Colors[color] + self.__renderer.clear() + if update: + self.update() + + def update(self): + self.__renderer.present() + + def showImage(self, filename): + im = self.__factory.from_image(self.__resources.get_path(filename)) + self.__srender.render(im) + + +class SDL2_Test(object): + __sdl2 = None + + def __init__(self, parent): + self.__sdl2 = SDL2(parent) + + def Clear(self): + self.__sdl2.fillbgColor('black', True) + + def Paint(self, dcolor): + self.Clear() + self.__sdl2.fillbgColor(dcolor.lower(), True) + + +class SDL2_Message(object): + __sdl2 = None + __fontManager_w = None + __fontManager_b = None + + def __init__(self, parent): + self.__sdl2 = SDL2(parent) + self.__fontManager_w = self.__sdl2.createFont('OpenSans-Regular.ttf', 24, Colors['white']) + self.__fontManager_b = self.__sdl2.createFont('OpenSans-Regular.ttf', 24, Colors['black']) + + def Clear(self): + self.__sdl2.fillbgColor('black', True) + + def Paint(self, dcolor): + self.Clear() + self.__sdl2.fillbgColor(dcolor.lower(), True) + + def __write_w(self, x, y, text): + self.__sdl2.WriteText(text, x, y, self.__fontManager_w) + + def __write_b(self, x, y, text): + self.__sdl2.WriteText(text, x, y, self.__fontManager_b) + + def setTestOK(self, board_uuid, qrdata): + self.Paint('GREEN') + self.__write_b(100, 50, 'TEST OK') + self.__write_b(100, 100, 'uuid={}'.format(board_uuid)) + self.__write_b(100, 150, 'qr={}'.format(qrdata)) + self.__sdl2.update() + + def setTestERROR(self, error): + self.Paint('RED') + self.__write_w(100, 50, 'TEST FAILED') + self.__write_w(100, 100, '{}'.format(error)) + self.__sdl2.update() + -- cgit v1.1 From ca73fcc336edc23db5750e93b6e1014d32a54ea5 Mon Sep 17 00:00:00 2001 From: Hector Fernandez Date: Tue, 29 Sep 2020 13:27:32 +0200 Subject: Added new test to validate video output with a webcam. --- test-cli/test/helpers/sdl.py | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'test-cli/test/helpers/sdl.py') diff --git a/test-cli/test/helpers/sdl.py b/test-cli/test/helpers/sdl.py index 8f55d9f..2abb6ee 100644 --- a/test-cli/test/helpers/sdl.py +++ b/test-cli/test/helpers/sdl.py @@ -22,10 +22,10 @@ class SDL2(object): __renderer = None __srender = None - def __init__(self, parent): + def __init__(self): os.environ['SDL_VIDEODRIVER'] = "x11" os.environ['DISPLAY'] = ":0" - self.__resources = sdl2.ext.Resources(parent.getAppPath(), 'files') + # self.__resources = sdl2.ext.Resources(parent.getAppPath(), 'files') sdl2.ext.init() self.__createWindow() @@ -39,8 +39,8 @@ class SDL2(object): self.__window.show() SDL_ShowCursor(SDL_DISABLE) - def createFont(self, fontName, fontSize, fontColor): - return sdl2.ext.FontManager(font_path=self.__resources.get_path(fontName), size=fontSize, color=fontColor) + # def createFont(self, fontName, fontSize, fontColor): + # return sdl2.ext.FontManager(font_path=self.__resources.get_path(fontName), size=fontSize, color=fontColor) def WriteText(self, text, x, y, fontManager): imText = self.__factory.from_text(text, fontmanager=fontManager) @@ -69,16 +69,16 @@ class SDL2(object): def update(self): self.__renderer.present() - def showImage(self, filename): - im = self.__factory.from_image(self.__resources.get_path(filename)) - self.__srender.render(im) + # def showImage(self, filename): + # im = self.__factory.from_image(self.__resources.get_path(filename)) + # self.__srender.render(im) class SDL2_Test(object): __sdl2 = None - def __init__(self, parent): - self.__sdl2 = SDL2(parent) + def __init__(self): + self.__sdl2 = SDL2() def Clear(self): self.__sdl2.fillbgColor('black', True) @@ -93,8 +93,8 @@ class SDL2_Message(object): __fontManager_w = None __fontManager_b = None - def __init__(self, parent): - self.__sdl2 = SDL2(parent) + def __init__(self): + self.__sdl2 = SDL2() self.__fontManager_w = self.__sdl2.createFont('OpenSans-Regular.ttf', 24, Colors['white']) self.__fontManager_b = self.__sdl2.createFont('OpenSans-Regular.ttf', 24, Colors['black']) -- cgit v1.1 From 33fdf3f804a171b2d9c70ba39a7bad11658c5b64 Mon Sep 17 00:00:00 2001 From: Manel Caro Date: Mon, 5 Oct 2020 11:44:43 +0200 Subject: Add qvideo variables --- test-cli/test/helpers/sdl.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'test-cli/test/helpers/sdl.py') diff --git a/test-cli/test/helpers/sdl.py b/test-cli/test/helpers/sdl.py index 2abb6ee..8131a53 100644 --- a/test-cli/test/helpers/sdl.py +++ b/test-cli/test/helpers/sdl.py @@ -14,15 +14,15 @@ Colors = { class SDL2(object): __resources = None - __w = 1024 - __h = 768 + __w = 1280 + __h = 720 __winName = "noname" __window = None __factory = None __renderer = None __srender = None - def __init__(self): + def __init__(self, driver, display, w, h): os.environ['SDL_VIDEODRIVER'] = "x11" os.environ['DISPLAY'] = ":0" # self.__resources = sdl2.ext.Resources(parent.getAppPath(), 'files') @@ -77,8 +77,8 @@ class SDL2(object): class SDL2_Test(object): __sdl2 = None - def __init__(self): - self.__sdl2 = SDL2() + def __init__(self, driver, display, w, h): + self.__sdl2 = SDL2(driver, display, w, h) def Clear(self): self.__sdl2.fillbgColor('black', True) -- cgit v1.1