diff --git a/assets/NanumGothic-Regular.ttf b/assets/NanumGothic-Regular.ttf deleted file mode 100644 index 6e4dd874..00000000 Binary files a/assets/NanumGothic-Regular.ttf and /dev/null differ diff --git a/assets/NotoSansCJK_Cy_SC_KR_Krux.ttf b/assets/NotoSansCJK_Cy_SC_KR_Krux.ttf new file mode 100644 index 00000000..a9cb8df9 Binary files /dev/null and b/assets/NotoSansCJK_Cy_SC_KR_Krux.ttf differ diff --git a/assets/NotoSansSC-Regular.ttf b/assets/NotoSansSC-Regular.ttf deleted file mode 100644 index 7056f5e9..00000000 Binary files a/assets/NotoSansSC-Regular.ttf and /dev/null differ diff --git a/assets/terminus.ttf b/assets/terminus.ttf deleted file mode 100644 index 5c0ad64b..00000000 Binary files a/assets/terminus.ttf and /dev/null differ diff --git a/e2e/test_002_check_permissions_screen.py b/e2e/test_002_check_permissions_screen.py index 85148a9e..780076d1 100644 --- a/e2e/test_002_check_permissions_screen.py +++ b/e2e/test_002_check_permissions_screen.py @@ -18,11 +18,8 @@ def setUpClass(cls): cwd_path = os.path.dirname(__file__) rel_assets_path = os.path.join(cwd_path, "..", "assets") assets_path = os.path.abspath(rel_assets_path) - terminus_path = os.path.join(assets_path, "terminus.ttf") - nanum_path = os.path.join(assets_path, "NanumGothic-Regular.ttf") - LabelBase.register(name="terminus", fn_regular=terminus_path) - LabelBase.register(name="nanum", fn_regular=nanum_path) - LabelBase.register(DEFAULT_FONT, terminus_path) + noto_sans_path = os.path.join(assets_path, "NotoSansCJK_Cy_SC_KR_Krux.ttf") + LabelBase.register(DEFAULT_FONT, noto_sans_path) @classmethod def teardown_class(cls): @@ -103,7 +100,7 @@ def test_update_fail_check_user( screen.update(name="CheckPermissionsScreen", key="check_user") # patch assertions - mock_get_locale.assert_has_calls([call(), call()], any_order=True) + mock_get_locale.assert_any_call() mock_redirect_error.assert_called_once_with(msg="Not implemented for 'mockos'") mock_environ_get.assert_called_once_with("USER") mock_name.assert_has_calls([call(), call(pretty=True)]) @@ -144,11 +141,9 @@ def test_update_check_user_in_ubuntu( screen.update(name="CheckPermissionsScreen", key="check_user") message = "".join( [ - "[font=terminus]", f"[size={fontsize}sp]", "[color=#efcc00]Setup mockeduser for Ubuntu[/color]", "[/size]", - "[/font]", ] ) @@ -156,7 +151,7 @@ def test_update_check_user_in_ubuntu( self.assertEqual(button.text, message) # patch assertions - mock_get_locale.assert_has_calls([call(), call()], any_order=True) + mock_get_locale.assert_any_call() mock_environ_get.assert_called_once_with("USER") mock_name.assert_called_once() mock_id.assert_called_once() @@ -196,13 +191,11 @@ def test_update_check_user_in_fedora( screen.update(name="CheckPermissionsScreen", key="check_user") message = "".join( [ - "[font=terminus]", f"[size={fontsize}sp]", "[color=#efcc00]", "Setup mockeduser for Fedora", "[/color]", "[/size]", - "[/font]", ] ) @@ -210,7 +203,7 @@ def test_update_check_user_in_fedora( self.assertEqual(button.text, message) # patch assertions - mock_get_locale.assert_has_calls([call(), call()], any_order=True) + mock_get_locale.assert_any_call() mock_environ_get.assert_called_once_with("USER") mock_name.assert_called_once() mock_id.assert_called_once() @@ -250,13 +243,11 @@ def test_update_check_user_in_linuxmint( screen.update(name="CheckPermissionsScreen", key="check_user") message = "".join( [ - "[font=terminus]", f"[size={fontsize}sp]", "[color=#efcc00]", "Setup mockeduser for Mint", "[/color]", "[/size]", - "[/font]", ] ) @@ -264,7 +255,7 @@ def test_update_check_user_in_linuxmint( self.assertEqual(button.text, message) # patch assertions - mock_get_locale.assert_has_calls([call(), call()], any_order=True) + mock_get_locale.assert_any_call() mock_environ_get.assert_called_once_with("USER") mock_name.assert_called_once() mock_id.assert_called_once() @@ -306,13 +297,11 @@ def test_update_check_user_in_debian_like( screen.update(name="CheckPermissionsScreen", key="check_user") message = "".join( [ - "[font=terminus]", f"[size={fontsize}sp]", "[color=#efcc00]", "Setup mockeduser for Mockos", "[/color]", "[/size]", - "[/font]", ] ) @@ -320,7 +309,7 @@ def test_update_check_user_in_debian_like( self.assertEqual(button.text, message) # patch assertions - mock_get_locale.assert_has_calls([call(), call()], any_order=True) + mock_get_locale.assert_any_call() mock_environ_get.assert_called_once_with("USER") mock_name.assert_called_once() mock_id.assert_has_calls([call(), call()]) @@ -360,10 +349,9 @@ def test_check_user_in_arch( screen.update(name="CheckPermissionsScreen", key="check_user") message = "".join( [ - "[font=terminus]", - f"[size={fontsize}sp][color=#efcc00]Setup mockeduser for ArchLinux[/color]", + f"[size={fontsize}sp]", + "[color=#efcc00]Setup mockeduser for ArchLinux[/color]", "[/size]", - "[/font]", ] ) @@ -371,7 +359,7 @@ def test_check_user_in_arch( self.assertEqual(button.text, message) # patch assertions - mock_get_locale.assert_has_calls([call(), call()], any_order=True) + mock_get_locale.assert_any_call() mock_environ_get.assert_called_once_with("USER") mock_name.assert_called_once() mock_id.assert_has_calls([call(), call()]) @@ -411,11 +399,9 @@ def test_update_check_user_in_manjaro( screen.update(name="CheckPermissionsScreen", key="check_user") message = "".join( [ - "[font=terminus]", f"[size={fontsize}sp]", "[color=#efcc00]Setup mockeduser for Manjaro[/color]", "[/size]", - "[/font]", ] ) @@ -423,7 +409,7 @@ def test_update_check_user_in_manjaro( self.assertEqual(button.text, message) # patch assertions - mock_get_locale.assert_has_calls([call(), call()], any_order=True) + mock_get_locale.assert_any_call() mock_environ_get.assert_called_once_with("USER") mock_name.assert_called_once() mock_id.assert_has_calls([call(), call()]) @@ -465,11 +451,9 @@ def test_update_check_user_in_slackware( screen.update(name="CheckPermissionsScreen", key="check_user") message = "".join( [ - "[font=terminus]", f"[size={fontsize}sp]", "[color=#efcc00]Setup mockeduser for Slackware[/color]", "[/size]", - "[/font]", ] ) @@ -477,7 +461,7 @@ def test_update_check_user_in_slackware( self.assertEqual(button.text, message) # patch assertions - mock_get_locale.assert_has_calls([call(), call()], any_order=True) + mock_get_locale.assert_any_call() mock_environ_get.assert_called_once_with("USER") mock_name.assert_called_once() mock_id.assert_has_calls([call(), call()]) @@ -517,13 +501,11 @@ def test_update_check_user_in_gentoo( screen.update(name="CheckPermissionsScreen", key="check_user") message = "".join( [ - "[font=terminus]", f"[size={fontsize}sp]", "[color=#efcc00]", "Setup mockeduser for Gentoo", "[/color]", "[/size]", - "[/font]", ] ) @@ -531,7 +513,7 @@ def test_update_check_user_in_gentoo( self.assertEqual(button.text, message) # patch assertions - mock_get_locale.assert_has_calls([call(), call()], any_order=True) + mock_get_locale.assert_any_call() mock_environ_get.assert_called_once_with("USER") mock_name.assert_called_once() mock_id.assert_has_calls([call(), call()]) @@ -578,9 +560,7 @@ def test_check_group_not_in_group( self.assertEqual(screen.in_dialout, False) # patch assertions - mock_get_locale.assert_has_calls( - [call(), call(), call(), call()], any_order=True - ) + mock_get_locale.assert_any_call() mock_distro_name.assert_called_once_with(pretty=True) mock_grp.getgrall.assert_called_once() @@ -607,14 +587,12 @@ def test_update_make_on_permission_created(self, mock_get_locale): screen.update(name="CheckPermissionsScreen", key="make_on_permission_created") text = "\n".join( [ - "[font=terminus]", f"[size={fontsize_m}sp][color=#efcc00]mocked command[/color][/size]", "", f"[size={fontsize_m}sp]You may need to logout (or even reboot)", "and back in for the new group to take effect.", "", "Do not worry, this message won't appear again.[/size]", - "[/font]", ] ) @@ -628,10 +606,7 @@ def test_update_make_on_permission_created(self, mock_get_locale): self.assertEqual(screen.bin_args, None) self.assertEqual(screen.group, None) self.assertEqual(screen.user, None) - - # Do test again - # patch assertions - mock_get_locale.assert_has_calls([call(), call()], any_order=True) + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch("sys.platform", "mockos") diff --git a/e2e/test_003_main_screen.py b/e2e/test_003_main_screen.py index 1677df04..f8b395f8 100644 --- a/e2e/test_003_main_screen.py +++ b/e2e/test_003_main_screen.py @@ -14,11 +14,8 @@ def setUpClass(cls): cwd_path = os.path.dirname(__file__) rel_assets_path = os.path.join(cwd_path, "..", "assets") assets_path = os.path.abspath(rel_assets_path) - terminus_path = os.path.join(assets_path, "terminus.ttf") - nanum_path = os.path.join(assets_path, "NanumGothic-Regular.ttf") - LabelBase.register(name="terminus", fn_regular=terminus_path) - LabelBase.register(name="nanum", fn_regular=nanum_path) - LabelBase.register(DEFAULT_FONT, terminus_path) + noto_sans_path = os.path.join(assets_path, "NotoSansCJK_Cy_SC_KR_Krux.ttf") + LabelBase.register(DEFAULT_FONT, noto_sans_path) @classmethod def teardown_class(cls): @@ -39,12 +36,7 @@ def test_render_main_screen(self, mock_get_locale): self.assertEqual(window.children[0], screen) self.assertEqual(screen.name, "MainScreen") self.assertEqual(screen.id, "main_screen") - - # each button has at least 2 calls of get locale - # one for locale, other for font - mock_get_locale.assert_has_calls( - [call(), call(), call(), call(), call(), call(), call()] - ) + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( @@ -62,12 +54,7 @@ def test_render_grid_layout(self, mock_get_locale): grid = window.children[0].children[0] self.assertEqual(grid.id, "main_screen_grid") - - # each button has at least 2 calls of get locale - # one for locale, other for font - mock_get_locale.assert_has_calls( - [call(), call(), call(), call(), call(), call(), call()] - ) + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( @@ -90,12 +77,7 @@ def test_render_buttons(self, mock_get_locale): self.assertEqual(buttons[2].id, "main_wipe") self.assertEqual(buttons[1].id, "main_settings") self.assertEqual(buttons[0].id, "main_about") - - # each button has at least 2 calls of get locale - # one for locale, other for font - mock_get_locale.assert_has_calls( - [call(), call(), call(), call(), call(), call(), call()] - ) + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch("src.app.screens.main_screen.MainScreen.set_background") @@ -124,12 +106,7 @@ def test_on_press_cant_flash_or_wipe(self, mock_get_locale, mock_set_background) calls.append(call(wid=button.id, rgba=(0.25, 0.25, 0.25, 1))) mock_set_background.assert_has_calls(calls) - - # each button has at least 2 calls of get locale - # one for locale, other for font - mock_get_locale.assert_has_calls( - [call(), call(), call(), call(), call(), call(), call(), call()] - ) + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch("src.app.screens.main_screen.MainScreen.set_background") @@ -192,13 +169,7 @@ def test_on_release_cant_flash_or_wipe( mock_set_background.assert_has_calls(calls_set_background) mock_set_screen.assert_has_calls(calls_set_screen) mock_manager.get_screen.assert_has_calls(calls_manager) - - # each button has at least 2 calls of get locale - # one for locale, other for font - mock_get_locale.assert_has_calls( - [call(), call(), call(), call(), call(), call(), call(), call()] - ) - + mock_get_locale.assert_any_call() mock_open_settings.assert_called_once() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @@ -217,20 +188,9 @@ def test_update_version(self, mock_get_locale): flash_button = grid.children[3] wipe_button = grid.children[2] - text_device = "".join( - [ - "[font=terminus]", - "Version: [color=#00AABB]select a new one[/color]", - "[/font]", - ] - ) - text_flash = "".join( - ["[font=terminus]", "[color=#333333]Flash firmware[/color]", "[/font]"] - ) - text_wipe = "".join( - ["[font=terminus]", "[color=#333333]Wipe device[/color]", "[/font]"] - ) - + text_device = "Version: [color=#00AABB]select a new one[/color]" + text_flash = "[color=#333333]Flash firmware[/color]" + text_wipe = "[color=#333333]Wipe device[/color]" calls = [] self.assertEqual(device_button.text, text_device) @@ -246,12 +206,7 @@ def test_update_version(self, mock_get_locale): "v22.08.0", "v22.03.0", ): - text_version = "".join( - [ - "[font=terminus]", - f"Version: [color=#00AABB]{version}[/color]" "[/font]", - ] - ) + text_version = f"Version: [color=#00AABB]{version}[/color]" screen.update(name="SelectVersionScreen", key="version", value=version) self.assertEqual(device_button.text, text_version) self.assertEqual(flash_button.text, text_flash) @@ -281,52 +236,25 @@ def test_update_device(self, mock_get_locale): flash_button = grid.children[3] wipe_button = grid.children[2] - text_device = "".join( - [ - "[font=terminus]", - "Device: [color=#00AABB]select a new one[/color]", - "[/font]", - ] - ) - mocked_text_device = "".join( - [ - "[font=terminus]", - "Device: [color=#00AABB]Mocked device[/color]", - "[/font]", - ] - ) - text_flash = "".join( - ["[font=terminus]", "[color=#333333]Flash firmware[/color]", "[/font]"] - ) - mocked_text_flash = "".join(["[font=terminus]", "Flash firmware", "[/font]"]) - text_wipe = "".join( - ["[font=terminus]", "[color=#333333]Wipe device[/color]", "[/font]"] - ) - mocked_text_wipe = "".join(["[font=terminus]", "Wipe device", "[/font]"]) + text_device = "Device: [color=#00AABB]select a new one[/color]" + mocked_text_device = "Device: [color=#00AABB]Mocked device[/color]" + text_flash = "[color=#333333]Flash firmware[/color]" + mocked_text_flash = "Flash firmware" + text_wipe = "[color=#333333]Wipe device[/color]" + mocked_text_wipe = "Wipe device" self.assertEqual(device_button.text, text_device) self.assertEqual(flash_button.text, text_flash) self.assertEqual(wipe_button.text, text_wipe) - # each button has at least 2 calls of get locale - # one for locale, other for font - calls = [] - for device in ("m5stickv", "amigo", "dock", "bit", "yahboom", "cube"): screen.update(name="SelectVersionScreen", key="device", value=device) - mocked_text_device = "".join( - [ - "[font=terminus]", - f"Device: [color=#00AABB]{device}[/color]" "[/font]", - ] - ) + mocked_text_device = f"Device: [color=#00AABB]{device}[/color]" self.assertEqual(device_button.text, mocked_text_device) self.assertEqual(flash_button.text, mocked_text_flash) self.assertEqual(wipe_button.text, mocked_text_wipe) - calls.append(call()) - calls.append(call()) - mock_get_locale.assert_has_calls(calls) + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( @@ -341,11 +269,7 @@ def test_fail_update_invalid_screen(self, mock_redirect_error, mock_get_locale): EventLoop.ensure_window() screen.update(name="MockedScreen", key="device", value="v24.03.0") - # each button has at least 2 calls of get locale - # one for locale, other for font - mock_get_locale.assert_has_calls( - [call(), call(), call(), call(), call(), call(), call()] - ) + mock_get_locale.assert_any_call() mock_redirect_error.assert_called_once_with( msg="Invalid screen name: MockedScreen" ) @@ -363,12 +287,7 @@ def test_fail_update_invalid_key(self, mock_redirect_error, mock_get_locale): EventLoop.ensure_window() screen.update(name="SelectDeviceScreen", key="mock", value="mock") - - # each button has at least 2 calls of get locale - # one for locale, other for font - mock_get_locale.assert_has_calls( - [call(), call(), call(), call(), call(), call(), call()] - ) + mock_get_locale.assert_any_call() mock_redirect_error.assert_called_once_with(msg='Invalid key: "mock"') @patch.object(EventLoopBase, "ensure_window", lambda x: None) @@ -387,26 +306,11 @@ def test_update_no_valid_device_but_valid_situation(self, mock_get_locale): flash_button = grid.children[3] wipe_button = grid.children[2] - text_device = "".join( - [ - "[font=terminus]", - "Device: [color=#00AABB]select a new one[/color]", - "[/font]", - ] - ) - mocked_text_device = "".join( - [ - "[font=terminus]", - "Device: [color=#00AABB]Mocked device[/color]", - "[/font]", - ] - ) - text_flash = "".join( - ["[font=terminus]", "[color=#333333]Flash firmware[/color]", "[/font]"] - ) - text_wipe = "".join( - ["[font=terminus]", "[color=#333333]Wipe device[/color]", "[/font]"] - ) + text_device = "Device: [color=#00AABB]select a new one[/color]" + mocked_text_device = "Device: [color=#00AABB]Mocked device[/color]" + text_flash = "[color=#333333]Flash firmware[/color]" + text_wipe = "[color=#333333]Wipe device[/color]" + self.assertEqual(device_button.text, text_device) self.assertEqual(flash_button.text, text_flash) self.assertEqual(wipe_button.text, text_wipe) @@ -436,13 +340,7 @@ def test_update_locale(self, mock_get_locale): screen.update(name="ConfigKruxInstaller", key="locale", value="en_US.UTF-8") self.assertEqual(screen.locale, "en_US.UTF-8") - - # each button has at least 2 calls of get locale - # one for locale, other for font - # and since update locale, one more - mock_get_locale.assert_has_calls( - [call(), call(), call(), call(), call(), call(), call()] - ) + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( @@ -461,33 +359,10 @@ def test_update_device_select_a_new_one(self, mock_get_locale): screen.update( name="ConfigKruxInstaller", key="device", value="select a new one" ) - text_device = "".join( - [ - "[font=terminus]", - "Device: [color=#00AABB]select a new one[/color]", - "[/font]", - ] - ) + text_device = "Device: [color=#00AABB]select a new one[/color]" self.assertEqual(screen.device, "select a new one") self.assertEqual(device_button.text, text_device) - - # each button has at least 2 calls of get locale - # one for locale, other for font, - # and more two because update device - mock_get_locale.assert_has_calls( - [ - call(), - call(), - call(), - call(), - call(), - call(), - call(), - call(), - call(), - call(), - ] - ) + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( @@ -505,9 +380,7 @@ def test_update_flash_not_will_flash(self, mock_get_locale): screen.update(name="ConfigKruxInstaller", key="flash", value=None) - text_flash = "".join( - ["[font=terminus]", "[color=#333333]Flash firmware[/color]", "[/font]"] - ) + text_flash = "[color=#333333]Flash firmware[/color]" self.assertTrue(flash_button.markup) self.assertEqual(flash_button.text, text_flash) @@ -532,14 +405,9 @@ def test_update_flash_will_flash(self, mock_get_locale): screen.update(name="ConfigKruxInstaller", key="flash", value=None) - text_flash = "".join(["[font=terminus]", "Flash firmware", "[/font]"]) + text_flash = "Flash firmware" self.assertEqual(flash_button.text, text_flash) - - # each button has at least 2 calls of get locale - # one for locale, other for font - mock_get_locale.assert_has_calls( - [call(), call(), call(), call(), call(), call(), call(), call()] - ) + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( @@ -560,16 +428,9 @@ def test_update_flash_not_will_wipe(self, mock_get_locale): screen.update(name="ConfigKruxInstaller", key="wipe", value=None) - text_wipe = "".join( - ["[font=terminus]", "[color=#333333]Wipe device[/color]", "[/font]"] - ) + text_wipe = "[color=#333333]Wipe device[/color]" self.assertEqual(wipe_button.text, text_wipe) - - # each button has at least 2 calls of get locale - # one for locale, other for font - mock_get_locale.assert_has_calls( - [call(), call(), call(), call(), call(), call(), call(), call()] - ) + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( @@ -587,15 +448,10 @@ def test_update_flash_will_wipe(self, mock_get_locale): wipe_button = grid.children[2] screen.update(name="ConfigKruxInstaller", key="wipe", value=None) - text_wipe = "".join(["[font=terminus]", "Wipe device", "[/font]"]) + text_wipe = "Wipe device" self.assertEqual(wipe_button.text, text_wipe) - - # each button has at least 2 calls of get locale - # one for locale, other for font - mock_get_locale.assert_has_calls( - [call(), call(), call(), call(), call(), call(), call(), call()] - ) + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( @@ -613,14 +469,9 @@ def test_update_settings(self, mock_get_locale): screen.update(name="ConfigKruxInstaller", key="settings", value=None) - settings_text = "".join(["[font=terminus]", "Settings", "[/font]"]) + settings_text = "Settings" self.assertEqual(s_button.text, settings_text) - - # each button has at least 2 calls of get locale - # one for locale itself, other for font - mock_get_locale.assert_has_calls( - [call(), call(), call(), call(), call(), call(), call(), call()] - ) + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( @@ -637,14 +488,9 @@ def test_update_about(self, mock_get_locale): a_button = grid.children[0] screen.update(name="ConfigKruxInstaller", key="about", value=None) - about_text = "".join(["[font=terminus]", "About", "[/font]"]) + about_text = "About" self.assertEqual(a_button.text, about_text) - - # each button has at least 2 calls of get locale - # one for locale, other for font - mock_get_locale.assert_has_calls( - [call(), call(), call(), call(), call(), call(), call()] - ) + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch("src.app.screens.main_screen.MainScreen.set_background") @@ -663,9 +509,6 @@ def test_on_press_can_flash_or_wipe(self, mock_get_locale, mock_set_background): wipe_button = grid.children[2] background_calls = [] - locale_calls = [] - # each button has at least 2 calls of get locale - # one for locale, other for font for device in ("m5stickv", "amigo", "dock", "bit", "yahboom", "cube"): screen.update(name="SelectVersionScreen", key="device", value=device) @@ -675,11 +518,9 @@ def test_on_press_can_flash_or_wipe(self, mock_get_locale, mock_set_background): wipe_action(wipe_button) background_calls.append(call(wid="main_flash", rgba=(0.25, 0.25, 0.25, 1))) background_calls.append(call(wid="main_wipe", rgba=(0.25, 0.25, 0.25, 1))) - locale_calls.append(call()) - locale_calls.append(call()) mock_set_background.assert_has_calls(background_calls) - mock_get_locale.assert_has_calls(locale_calls) + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch("src.app.screens.main_screen.MainScreen.set_background") @@ -717,23 +558,7 @@ def test_on_release_flash_to_download_stable_zip_screen( flash_action = getattr(screen, "on_release_main_flash") flash_action(flash_button) - # each button has at least 2 calls of get locale - # one for locale, other for font - mock_get_locale.assert_has_calls( - [ - call(), - call(), - call(), - call(), - call(), - call(), - call(), - call(), - call(), - call(), - ] - ) - + mock_get_locale.assert_any_call() mock_get_destdir_assets.assert_called_once() mock_set_background.assert_called_once_with(wid="main_flash", rgba=(0, 0, 0, 1)) mock_set_screen.assert_called_once_with( @@ -779,12 +604,7 @@ def test_on_release_flash_to_warning_already_downloaded_zip_screen( flash_action = getattr(screen, "on_release_main_flash") flash_action(flash_button) - # each button has at least 2 calls of get locale - # one for locale, other for font - mock_get_locale.assert_has_calls( - [call(), call(), call(), call(), call(), call(), call(), call()] - ) - + mock_get_locale.assert_any_call() mock_get_destdir_assets.assert_called_once() mock_set_background.assert_called_once_with(wid="main_flash", rgba=(0, 0, 0, 1)) mock_set_screen.assert_called_once_with( @@ -826,23 +646,7 @@ def test_on_release_flash_to_download_beta_screen( flash_action = getattr(screen, "on_release_main_flash") flash_action(flash_button) - # each button has at least 2 calls of get locale - # one for locale, other for font - mock_get_locale.assert_has_calls( - [ - call(), - call(), - call(), - call(), - call(), - call(), - call(), - call(), - call(), - call(), - ] - ) - + mock_get_locale.assert_any_call() mock_findall.assert_has_calls( [ call("^v\\d+\\.\\d+\\.\\d$", "odudex/krux_binaries"), @@ -881,7 +685,6 @@ def test_on_release_wipe( calls_set_background = [] calls_set_screen = [] - calls_locale = [] for device in ("m5stickv", "amigo", "dock", "bit", "yahboom", "cube"): screen.update(name="SelectVersionScreen", key="device", value=device) @@ -890,9 +693,7 @@ def test_on_release_wipe( calls_set_background.append(call(wid="main_wipe", rgba=(0, 0, 0, 1))) calls_set_screen.append(call(name="WarningWipeScreen", direction="left")) - calls_locale.append(call()) - calls_locale.append(call()) - mock_get_locale.assert_has_calls(calls_locale) + mock_get_locale.assert_any_call() mock_set_background.assert_has_calls(calls_set_background) mock_set_screen.assert_has_calls(calls_set_screen) diff --git a/e2e/test_005_select_version_screen.py b/e2e/test_005_select_version_screen.py index 135eeca4..1345a51f 100644 --- a/e2e/test_005_select_version_screen.py +++ b/e2e/test_005_select_version_screen.py @@ -233,8 +233,8 @@ def test_update_locale_old_versions( button_old_versions = grid.children[1] button_back = grid.children[0] - text_old_versions = "[font=terminus]Versões antigas[/font]" - text_back_button = "[font=terminus]Voltar[/font]" + text_old_versions = "Versões antigas" + text_back_button = "Voltar" screen.update(name="ConfigKruxInstaller", key="locale", value="pt_BR.UTF-8") self.assertEqual(button_old_versions.text, text_old_versions) diff --git a/e2e/test_006_select_old_version_screen.py b/e2e/test_006_select_old_version_screen.py index e1d811ed..bbdb4e85 100644 --- a/e2e/test_006_select_old_version_screen.py +++ b/e2e/test_006_select_old_version_screen.py @@ -174,7 +174,7 @@ def test_update_locale(self, mock_get_locale): self.render(screen) screen.update(name="ConfigKruxInstaller", key="locale", value="pt_BR.UTF-8") - text_back = "[font=terminus]Voltar[/font]" + text_back = "Voltar" # get your Window instance safely EventLoop.ensure_window() window = EventLoop.window diff --git a/e2e/test_007_warning_beta_screen.py b/e2e/test_007_warning_beta_screen.py index 31f3ec71..150fc7a0 100644 --- a/e2e/test_007_warning_beta_screen.py +++ b/e2e/test_007_warning_beta_screen.py @@ -14,11 +14,8 @@ def setUpClass(cls): cwd_path = os.path.dirname(__file__) rel_assets_path = os.path.join(cwd_path, "..", "assets") assets_path = os.path.abspath(rel_assets_path) - terminus_path = os.path.join(assets_path, "terminus.ttf") - nanum_path = os.path.join(assets_path, "NanumGothic-Regular.ttf") - LabelBase.register(name="terminus", fn_regular=terminus_path) - LabelBase.register(name="nanum", fn_regular=nanum_path) - LabelBase.register(DEFAULT_FONT, terminus_path) + noto_sans_path = os.path.join(assets_path, "NotoSansCJK_Cy_SC_KR_Krux.ttf") + LabelBase.register(DEFAULT_FONT, noto_sans_path) @classmethod def teardown_class(cls): @@ -60,7 +57,6 @@ def test_render_main_screen(self, mock_get_locale): text = "".join( [ - f"[font={WarningBetaScreen.get_font_name()}]", f"[size={fontsize_mm}sp][color=#efcc00][b]WARNING[/b][/color][/size]", "\n", "\n", @@ -74,7 +70,6 @@ def test_render_main_screen(self, mock_get_locale): f"[size={fontsize_mm}sp]", "[color=#00ff00]Proceed[/color] [color=#ff0000]Back[/color]", "[/size]", - "[/font]", ] ) @@ -157,7 +152,6 @@ def test_update_locale(self, mock_get_locale): screen.update(name="ConfigKruxInstaller", key="locale", value="pt_BR.UTF-8") text = "".join( [ - f"[font={WarningBetaScreen.get_font_name()}]", f"[size={fontsize_mm}sp][color=#efcc00][b]ADVERTÊNCIA[/b][/color][/size]", "\n", "\n", @@ -171,7 +165,6 @@ def test_update_locale(self, mock_get_locale): f"[size={fontsize_mm}sp]", "[color=#00ff00]Proceder[/color] [color=#ff0000]Voltar[/color]", "[/size]", - "[/font]", ] ) diff --git a/e2e/test_008_about_screen.py b/e2e/test_008_about_screen.py index d19310e4..cae441f9 100644 --- a/e2e/test_008_about_screen.py +++ b/e2e/test_008_about_screen.py @@ -1,5 +1,5 @@ import os -from unittest.mock import patch, MagicMock, call +from unittest.mock import patch, MagicMock from kivy.base import EventLoop, EventLoopBase from kivy.tests.common import GraphicUnitTest from kivy.core.text import LabelBase, DEFAULT_FONT @@ -13,11 +13,8 @@ def setUpClass(cls): cwd_path = os.path.dirname(__file__) rel_assets_path = os.path.join(cwd_path, "..", "assets") assets_path = os.path.abspath(rel_assets_path) - terminus_path = os.path.join(assets_path, "terminus.ttf") - nanum_path = os.path.join(assets_path, "NanumGothic-Regular.ttf") - LabelBase.register(name="terminus", fn_regular=terminus_path) - LabelBase.register(name="nanum", fn_regular=nanum_path) - LabelBase.register(DEFAULT_FONT, terminus_path) + noto_sans_path = os.path.join(assets_path, "NotoSansCJK_Cy_SC_KR_Krux.ttf") + LabelBase.register(DEFAULT_FONT, noto_sans_path) @classmethod def teardown_class(cls): @@ -47,31 +44,26 @@ def test_render_main_screen(self, mock_get_locale): [ "".join( [ - "[font=terminus]", f"[size={screen.SIZE_G}sp]", "[color=#00AABB]", "[ref=SourceCode][b]v0.0.2-alpha[/b][/ref]", "[/color]", "[/size]", - "[/font]", ] ), "", "", "".join( [ - "[font=terminus]", f"[size={screen.SIZE_M}sp]", "follow us on X: [color=#00AABB][ref=X]@selfcustodykrux[/ref][/color]", "[/size]", - "[/font]", ] ), "", "", "".join( [ - "[font=terminus]", f"[size={screen.SIZE_M}sp]", "[color=#00FF00]", "[ref=Back]", @@ -79,14 +71,13 @@ def test_render_main_screen(self, mock_get_locale): "[/ref]", "[/color]", "[/size]", - "[/font]", ] ), ] ) self.assertEqual(label.text, text) - mock_get_locale.assert_has_calls([call(), call(), call(), call()]) + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( @@ -108,31 +99,26 @@ def test_update_locale(self, mock_get_locale): [ "".join( [ - "[font=terminus]", f"[size={screen.SIZE_G}sp]", "[color=#00AABB]", "[ref=SourceCode][b]v0.0.2-alpha[/b][/ref]", "[/color]", "[/size]", - "[/font]", ] ), "", "", "".join( [ - "[font=terminus]", f"[size={screen.SIZE_M}sp]", "siga-nos no X: [color=#00AABB][ref=X]@selfcustodykrux[/ref][/color]", "[/size]", - "[/font]", ] ), "", "", "".join( [ - "[font=terminus]", f"[size={screen.SIZE_M}sp]", "[color=#00FF00]", "[ref=Back]", @@ -140,15 +126,12 @@ def test_update_locale(self, mock_get_locale): "[/ref]", "[/color]", "[/size]", - "[/font]", ] ), ] ) self.assertEqual(label.text, text) - mock_get_locale.assert_has_calls( - [call(), call(), call(), call(), call(), call(), call()] - ) + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( @@ -167,7 +150,7 @@ def test_on_press_version(self, mock_webbrowser, mock_get_locale): action = getattr(screen, "on_ref_press_about_screen_label") action("Mock", "SourceCode") - mock_get_locale.assert_has_calls([call(), call(), call(), call()]) + mock_get_locale.assert_any_call() mock_webbrowser.open.assert_called_once_with( "https://selfcustody.github.io/krux/getting-started/installing/from-gui/" ) @@ -191,7 +174,7 @@ def test_on_press_x_formerly_known_as_twitter( action = getattr(screen, "on_ref_press_about_screen_label") action("Mock", "X") - mock_get_locale.assert_has_calls([call(), call(), call(), call()]) + mock_get_locale.assert_any_call() mock_webbrowser.open.assert_called_once_with("https://x.com/selfcustodykrux") @patch.object(EventLoopBase, "ensure_window", lambda x: None) @@ -209,5 +192,5 @@ def test_on_press_back(self, mock_set_screen, mock_get_locale): action = getattr(screen, "on_ref_press_about_screen_label") action("Mock", "Back") - mock_get_locale.assert_has_calls([call(), call(), call()]) + mock_get_locale.assert_any_call() mock_set_screen.assert_called_once_with(name="MainScreen", direction="right") diff --git a/e2e/test_009_base_download_screen.py b/e2e/test_009_base_download_screen.py index 33a997e7..32658c9b 100644 --- a/e2e/test_009_base_download_screen.py +++ b/e2e/test_009_base_download_screen.py @@ -13,11 +13,8 @@ def setUpClass(cls): cwd_path = os.path.dirname(__file__) rel_assets_path = os.path.join(cwd_path, "..", "assets") assets_path = os.path.abspath(rel_assets_path) - terminus_path = os.path.join(assets_path, "terminus.ttf") - nanum_path = os.path.join(assets_path, "NanumGothic-Regular.ttf") - LabelBase.register(name="terminus", fn_regular=terminus_path) - LabelBase.register(name="nanum", fn_regular=nanum_path) - LabelBase.register(DEFAULT_FONT, terminus_path) + noto_sans_path = os.path.join(assets_path, "NotoSansCJK_Cy_SC_KR_Krux.ttf") + LabelBase.register(DEFAULT_FONT, noto_sans_path) @classmethod def teardown_class(cls): @@ -27,12 +24,8 @@ def teardown_class(cls): @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) def test_init( self, - mock_get_font_name, mock_get_locale, ): screen = BaseDownloadScreen(wid="mock_screen", name="MockScreen") @@ -55,20 +48,14 @@ def test_init( self.assertEqual(grid.children[0].id, "mock_screen_info") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.base_download_screen.Clock.create_trigger") - def test_set_trigger( - self, mock_create_trigger, mock_get_font_name, mock_get_locale - ): + def test_set_trigger(self, mock_create_trigger, mock_get_locale): mock_trigger = MagicMock() screen = BaseDownloadScreen(wid="mock_screen", name="MockScreen") @@ -84,17 +71,13 @@ def test_set_trigger( # patch assertions mock_create_trigger.assert_called() - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_set_thread(self, mock_get_font_name, mock_get_locale): + def test_set_thread(self, mock_get_locale): mock_target = MagicMock() screen = BaseDownloadScreen(wid="mock_screen", name="MockScreen") @@ -109,20 +92,14 @@ def test_set_thread(self, mock_get_font_name, mock_get_locale): self.assertFalse(screen.thread is None) # patch tests - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.base_screen.BaseScreen.redirect_error") - def test_fail_on_enter( - self, mock_redirect_error, mock_get_font_name, mock_get_locale - ): + def test_fail_on_enter(self, mock_redirect_error, mock_get_locale): screen = BaseDownloadScreen(wid="mock_screen", name="MockScreen") screen.to_screen = "AnotherMockScreen" @@ -143,16 +120,12 @@ def test_fail_on_enter( mock_redirect_error.assert_called_once_with( "Downloader isnt configured. Use `update` method first" ) - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.base_download_screen.partial") @patch("src.app.screens.base_download_screen.Clock.create_trigger") @patch("src.app.screens.base_download_screen.Thread.start") @@ -161,7 +134,6 @@ def test_on_enter( mock_thread, mock_create_trigger, mock_partial, - mock_get_font_name, mock_get_locale, ): screen = BaseDownloadScreen(wid="mock_screen", name="MockScreen") @@ -186,7 +158,6 @@ def test_on_enter( screen.on_enter() # patch tests - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() on_progress = getattr(BaseDownloadScreen, "on_progress") diff --git a/e2e/test_010_download_stable_zip_screen.py b/e2e/test_010_download_stable_zip_screen.py index 40a509f2..925b279f 100644 --- a/e2e/test_010_download_stable_zip_screen.py +++ b/e2e/test_010_download_stable_zip_screen.py @@ -14,11 +14,8 @@ def setUpClass(cls): cwd_path = os.path.dirname(__file__) rel_assets_path = os.path.join(cwd_path, "..", "assets") assets_path = os.path.abspath(rel_assets_path) - terminus_path = os.path.join(assets_path, "terminus.ttf") - nanum_path = os.path.join(assets_path, "NanumGothic-Regular.ttf") - LabelBase.register(name="terminus", fn_regular=terminus_path) - LabelBase.register(name="nanum", fn_regular=nanum_path) - LabelBase.register(DEFAULT_FONT, terminus_path) + noto_sans_path = os.path.join(assets_path, "NotoSansCJK_Cy_SC_KR_Krux.ttf") + LabelBase.register(DEFAULT_FONT, noto_sans_path) @classmethod def teardown_class(cls): @@ -28,10 +25,7 @@ def teardown_class(cls): @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_init(self, mock_get_font_name, mock_get_locale): + def test_init(self, mock_get_locale): screen = DownloadStableZipScreen() self.render(screen) @@ -51,21 +45,16 @@ def test_init(self, mock_get_font_name, mock_get_locale): self.assertEqual(grid.children[0].id, "download_stable_zip_screen_info") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.base_screen.BaseScreen.redirect_error") def test_fail_update_invalid_name( self, mock_redirect_error, - mock_get_font_name, mock_get_locale, ): screen = DownloadStableZipScreen() @@ -78,7 +67,6 @@ def test_fail_update_invalid_name( screen.update(name="MockScreen") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() mock_redirect_error.assert_called_once_with("Invalid screen name: MockScreen") @@ -86,13 +74,8 @@ def test_fail_update_invalid_name( @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.base_screen.BaseScreen.redirect_error") - def test_fail_update_key( - self, mock_redirect_error, mock_get_font_name, mock_get_locale - ): + def test_fail_update_key(self, mock_redirect_error, mock_get_locale): screen = DownloadStableZipScreen() self.render(screen) @@ -103,7 +86,6 @@ def test_fail_update_key( screen.update(name="ConfigKruxInstaller", key="mock") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() mock_redirect_error.assert_called_once_with('Invalid key: "mock"') @@ -111,10 +93,7 @@ def test_fail_update_key( @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_update_locale(self, mock_get_font_name, mock_get_locale): + def test_update_locale(self, mock_get_locale): screen = DownloadStableZipScreen() self.render(screen) @@ -128,16 +107,12 @@ def test_update_locale(self, mock_get_font_name, mock_get_locale): self.assertEqual(screen.locale, "en_US.UTF-8") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch( "src.app.screens.base_screen.BaseScreen.get_destdir_assets", return_value="mockdir", @@ -147,7 +122,6 @@ def test_update_version( self, mock_downloader, mock_get_destdir_assets, - mock_get_font_name, mock_get_locale, ): @@ -162,7 +136,6 @@ def test_update_version( screen.update(name="ConfigKruxInstaller", key="version", value="v0.0.1") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() mock_get_destdir_assets.assert_any_call() mock_downloader.assert_called_once() @@ -171,10 +144,7 @@ def test_update_version( @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_update_progress(self, mock_get_font_name, mock_get_locale): + def test_update_progress(self, mock_get_locale): screen = DownloadStableZipScreen() self.render(screen) @@ -203,15 +173,11 @@ def test_update_progress(self, mock_get_font_name, mock_get_locale): # do tests text = "".join( [ - "[font=terminus]", f"[size={fontsize_g}sp][b]1.00 %[/b][/size]", - "[/font]", "\n", f"[size={fontsize_mp}sp]", "0.20", - "[font=terminus]", " of ", - "[/font]", "20.03 MB", "[/size]", ] @@ -220,17 +186,13 @@ def test_update_progress(self, mock_get_font_name, mock_get_locale): self.assertEqual(screen.ids["download_stable_zip_screen_progress"].text, text) # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): + def test_update_progress_100_percent(self, mock_get_locale): screen = DownloadStableZipScreen() screen.version = "v24.07.0" self.render(screen) @@ -265,15 +227,11 @@ def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): # do tests text_progress = "".join( [ - "[font=terminus]", f"[size={fontsize_g}sp][b]100.00 %[/b][/size]", - "[/font]", "\n", f"[size={fontsize_mp}sp]", "20.03", - "[font=terminus]", " of ", - "[/font]", "20.03", " MB", "[/size]", @@ -284,13 +242,9 @@ def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): text_info = "".join( [ f"[size={fontsize_mp}sp]", - "[font=terminus]", filepath, - "[/font]", "\n", - "[font=terminus]", "downloaded", - "[/font]", "[/size]", ] ) @@ -303,7 +257,6 @@ def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): ) # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() assert len(mock_trigger.mock_calls) >= 1 @@ -311,9 +264,6 @@ def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.download_stable_zip_screen.ZipDownloader") @patch("src.app.screens.download_stable_zip_screen.partial") @patch("src.app.screens.download_stable_zip_screen.Clock.schedule_once") @@ -322,7 +272,6 @@ def test_on_progress( mock_schedule_once, mock_partial, mock_downloader, - mock_get_font_name, mock_get_locale, ): @@ -342,7 +291,6 @@ def test_on_progress( DownloadStableZipScreen.on_progress(data=b"") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() mock_partial.assert_has_calls( [ @@ -363,9 +311,6 @@ def test_on_progress( @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.download_stable_zip_screen.time.sleep") @patch("src.app.screens.download_stable_zip_screen.DownloadStableZipScreen.manager") @patch("src.app.screens.download_stable_zip_screen.partial") @@ -380,7 +325,6 @@ def test_on_trigger( mock_partial, mock_manager, mock_sleep, - mock_get_font_name, mock_get_locale, ): # Mocks @@ -406,7 +350,6 @@ def test_on_trigger( self.assertFalse(screen.trigger is None) # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() mock_sleep.assert_called_once_with(2.1) mock_manager.get_screen.assert_called_once_with("DownloadStableZipSha256Screen") diff --git a/e2e/test_011_download_stable_zip_sha256_screen.py b/e2e/test_011_download_stable_zip_sha256_screen.py index eac2a669..a43cbdb3 100644 --- a/e2e/test_011_download_stable_zip_sha256_screen.py +++ b/e2e/test_011_download_stable_zip_sha256_screen.py @@ -16,11 +16,8 @@ def setUpClass(cls): cwd_path = os.path.dirname(__file__) rel_assets_path = os.path.join(cwd_path, "..", "assets") assets_path = os.path.abspath(rel_assets_path) - terminus_path = os.path.join(assets_path, "terminus.ttf") - nanum_path = os.path.join(assets_path, "NanumGothic-Regular.ttf") - LabelBase.register(name="terminus", fn_regular=terminus_path) - LabelBase.register(name="nanum", fn_regular=nanum_path) - LabelBase.register(DEFAULT_FONT, terminus_path) + noto_sans_path = os.path.join(assets_path, "NotoSansCJK_Cy_SC_KR_Krux.ttf") + LabelBase.register(DEFAULT_FONT, noto_sans_path) @classmethod def teardown_class(cls): @@ -30,10 +27,7 @@ def teardown_class(cls): @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_init(self, mock_get_font_name, mock_get_locale): + def test_init(self, mock_get_locale): screen = DownloadStableZipSha256Screen() self.render(screen) @@ -55,20 +49,14 @@ def test_init(self, mock_get_font_name, mock_get_locale): self.assertEqual(grid.children[0].id, "download_stable_zip_sha256_screen_info") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.base_screen.BaseScreen.redirect_error") - def test_fail_update_invalid_name( - self, mock_redirect_error, mock_get_font_name, mock_get_locale - ): + def test_fail_update_invalid_name(self, mock_redirect_error, mock_get_locale): screen = DownloadStableZipSha256Screen() self.render(screen) @@ -82,20 +70,14 @@ def test_fail_update_invalid_name( mock_redirect_error.assert_called_once_with("Invalid screen name: MockScreen") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.base_screen.BaseScreen.redirect_error") - def test_fail_update_key( - self, mock_redirect_error, mock_get_font_name, mock_get_locale - ): + def test_fail_update_key(self, mock_redirect_error, mock_get_locale): screen = DownloadStableZipSha256Screen() self.render(screen) @@ -109,17 +91,13 @@ def test_fail_update_key( mock_redirect_error.assert_any_call('Invalid key: "mock"') # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_update_locale(self, mock_get_font_name, mock_get_locale): + def test_update_locale(self, mock_get_locale): screen = DownloadStableZipSha256Screen() self.render(screen) @@ -133,16 +111,12 @@ def test_update_locale(self, mock_get_font_name, mock_get_locale): self.assertEqual(screen.locale, "en_US.UTF-8") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch( "src.app.screens.base_screen.BaseScreen.get_destdir_assets", return_value="mockdir", @@ -152,7 +126,6 @@ def test_update_version( self, mock_downloader, mock_get_destdir_assets, - mock_get_font_name, mock_get_locale, ): screen = DownloadStableZipSha256Screen() @@ -165,7 +138,6 @@ def test_update_version( screen.update(name="DownloadStableZipScreen", key="version", value="v0.0.1") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() mock_downloader.assert_called_once() mock_get_destdir_assets.assert_any_call() @@ -174,10 +146,7 @@ def test_update_version( @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_update_progress(self, mock_get_font_name, mock_get_locale): + def test_update_progress(self, mock_get_locale): screen = DownloadStableZipSha256Screen() self.render(screen) @@ -207,21 +176,13 @@ def test_update_progress(self, mock_get_font_name, mock_get_locale): # do tests text = "".join( [ - "[font=terminus]", f"[size={fontsize_g}sp][b]1.00 %[/b][/size]", - "[/font]", "\n", - "[font=terminus]", f"[size={fontsize_mp}sp]", "210000", - "[/font]", - "[font=terminus]", " of ", - "[/font]", - "[font=terminus]", "21000000", " B", - "[/font]", "[/size]", ] ) @@ -231,16 +192,12 @@ def test_update_progress(self, mock_get_font_name, mock_get_locale): ) # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.download_stable_zip_sha256_screen.Sha256Downloader") @patch("src.app.screens.download_stable_zip_sha256_screen.partial") @patch("src.app.screens.download_stable_zip_sha256_screen.Clock.schedule_once") @@ -249,7 +206,6 @@ def test_on_progress( mock_schedule_once, mock_partial, mock_downloader, - mock_get_font_name, mock_get_locale, ): @@ -269,7 +225,6 @@ def test_on_progress( DownloadStableZipSha256Screen.on_progress(data=b"") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() mock_partial.assert_has_calls( [ @@ -291,12 +246,8 @@ def test_on_progress( @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) def test_update_progress_100_percent( self, - mock_get_font_name, mock_get_locale, ): screen = DownloadStableZipSha256Screen() @@ -333,19 +284,13 @@ def test_update_progress_100_percent( # do tests text_progress = "".join( [ - "[font=terminus]" f"[size={fontsize_g}sp][b]100.00 %[/b][/size]", - "[/font]", + f"[size={fontsize_g}sp][b]100.00 %[/b][/size]", "\n", - "[font=terminus]" f"[size={fontsize_mp}sp]", + f"[size={fontsize_mp}sp]", "21", - "[/font]", - "[font=terminus]", " of ", - "[/font]", - "[font=terminus]", "21", " B", - "[/font]", "[/size]", ] ) @@ -354,13 +299,9 @@ def test_update_progress_100_percent( text_info = "".join( [ f"[size={fontsize_mp}sp]", - "[font=terminus]", filepath, - "[/font]", "\n", - "[font=terminus]", "downloaded", - "[/font]", "[/size]", ] ) @@ -374,7 +315,6 @@ def test_update_progress_100_percent( ) # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() assert len(mock_trigger.mock_calls) >= 1 @@ -382,9 +322,6 @@ def test_update_progress_100_percent( @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.download_stable_zip_sha256_screen.time.sleep") @patch( "src.app.screens.download_stable_zip_sha256_screen.DownloadStableZipSha256Screen.manager" @@ -401,7 +338,6 @@ def test_on_trigger( mock_partial, mock_manager, mock_sleep, - mock_get_font_name, mock_get_locale, ): # Mocks @@ -427,7 +363,6 @@ def test_on_trigger( self.assertFalse(screen.trigger is None) # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() mock_sleep.assert_called_once_with(2.1) mock_manager.get_screen.assert_called_once_with("DownloadStableZipSigScreen") diff --git a/e2e/test_012_download_stable_zip_sig_screen.py b/e2e/test_012_download_stable_zip_sig_screen.py index 0b242bc9..bbe5b76c 100644 --- a/e2e/test_012_download_stable_zip_sig_screen.py +++ b/e2e/test_012_download_stable_zip_sig_screen.py @@ -16,11 +16,8 @@ def setUpClass(cls): cwd_path = os.path.dirname(__file__) rel_assets_path = os.path.join(cwd_path, "..", "assets") assets_path = os.path.abspath(rel_assets_path) - terminus_path = os.path.join(assets_path, "terminus.ttf") - nanum_path = os.path.join(assets_path, "NanumGothic-Regular.ttf") - LabelBase.register(name="terminus", fn_regular=terminus_path) - LabelBase.register(name="nanum", fn_regular=nanum_path) - LabelBase.register(DEFAULT_FONT, terminus_path) + noto_sans_path = os.path.join(assets_path, "NotoSansCJK_Cy_SC_KR_Krux.ttf") + LabelBase.register(DEFAULT_FONT, noto_sans_path) @classmethod def teardown_class(cls): @@ -30,10 +27,7 @@ def teardown_class(cls): @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_init(self, mock_get_font_name, mock_get_locale): + def test_init(self, mock_get_locale): screen = DownloadStableZipSigScreen() self.render(screen) @@ -53,20 +47,14 @@ def test_init(self, mock_get_font_name, mock_get_locale): self.assertEqual(grid.children[0].id, "download_stable_zip_sig_screen_info") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.base_screen.BaseScreen.redirect_error") - def test_fail_update_invalid_name( - self, mock_redirect_error, mock_get_font_name, mock_get_locale - ): + def test_fail_update_invalid_name(self, mock_redirect_error, mock_get_locale): screen = DownloadStableZipSigScreen() self.render(screen) @@ -78,20 +66,14 @@ def test_fail_update_invalid_name( # patch assertions mock_redirect_error.assert_called_once_with("Invalid screen name: MockScreen") - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.base_screen.BaseScreen.redirect_error") - def test_fail_update_key( - self, mock_redirect_error, mock_get_font_name, mock_get_locale - ): + def test_fail_update_key(self, mock_redirect_error, mock_get_locale): screen = DownloadStableZipSigScreen() self.render(screen) @@ -103,17 +85,13 @@ def test_fail_update_key( # patch assertions mock_redirect_error.assert_called_once_with('Invalid key: "mock"') - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_update_locale(self, mock_get_font_name, mock_get_locale): + def test_update_locale(self, mock_get_locale): screen = DownloadStableZipSigScreen() self.render(screen) @@ -127,23 +105,19 @@ def test_update_locale(self, mock_get_font_name, mock_get_locale): self.assertEqual(screen.locale, "en_US.UTF-8") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch( "src.app.screens.base_screen.BaseScreen.get_destdir_assets", return_value="mockdir", ) @patch("src.app.screens.download_stable_zip_sig_screen.SigDownloader") def test_update_version( - self, mock_downloader, mock_destdir_assets, mock_get_font_name, mock_get_locale + self, mock_downloader, mock_destdir_assets, mock_get_locale ): screen = DownloadStableZipSigScreen() self.render(screen) @@ -155,7 +129,6 @@ def test_update_version( screen.update(name=screen.name, key="version", value="v0.0.1") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() mock_destdir_assets.assert_any_call() mock_downloader.assert_called_once() @@ -164,10 +137,7 @@ def test_update_version( @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_update_progress(self, mock_get_font_name, mock_get_locale): + def test_update_progress(self, mock_get_locale): screen = DownloadStableZipSigScreen() self.render(screen) @@ -197,21 +167,13 @@ def test_update_progress(self, mock_get_font_name, mock_get_locale): # do tests text = "".join( [ - "[font=terminus]", f"[size={fontsize_g}sp][b]1.00 %[/b][/size]", - "[/font]", "\n", - "[font=terminus]", f"[size={fontsize_mp}sp]", "210000", - "[/font]", - "[font=terminus]", " of ", - "[/font]", - "[font=terminus]", "21000000", " B", - "[/font]", "[/size]", ] ) @@ -221,16 +183,12 @@ def test_update_progress(self, mock_get_font_name, mock_get_locale): ) # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.download_stable_zip_sig_screen.SigDownloader") @patch("src.app.screens.download_stable_zip_sig_screen.partial") @patch("src.app.screens.download_stable_zip_sig_screen.Clock.schedule_once") @@ -239,7 +197,6 @@ def test_on_progress( mock_schedule_once, mock_partial, mock_downloader, - mock_get_font_name, mock_get_locale, ): mock_downloader.downloaded_len = 8 @@ -258,7 +215,6 @@ def test_on_progress( DownloadStableZipSigScreen.on_progress(data=b"") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() mock_partial.assert_has_calls( [ @@ -280,10 +236,7 @@ def test_on_progress( @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): + def test_update_progress_100_percent(self, mock_get_locale): screen = DownloadStableZipSigScreen() screen.version = "v24.07.0" @@ -319,19 +272,13 @@ def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): # do tests text_progress = "".join( [ - "[font=terminus]" f"[size={fontsize_g}sp][b]100.00 %[/b][/size]", - "[/font]", + f"[size={fontsize_g}sp][b]100.00 %[/b][/size]", "\n", - "[font=terminus]" f"[size={fontsize_mp}sp]", + f"[size={fontsize_mp}sp]", "21", - "[/font]", - "[font=terminus]", " of ", - "[/font]", - "[font=terminus]", "21", " B", - "[/font]", "[/size]", ] ) @@ -340,13 +287,9 @@ def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): text_info = "".join( [ f"[size={fontsize_mp}sp]", - "[font=terminus]", filepath, - "[/font]", "\n", - "[font=terminus]", "downloaded", - "[/font]", "[/size]", ] ) @@ -360,7 +303,6 @@ def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): ) # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() assert len(mock_trigger.mock_calls) >= 1 @@ -368,9 +310,6 @@ def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.download_stable_zip_sig_screen.time.sleep") @patch( "src.app.screens.download_stable_zip_sig_screen.DownloadStableZipSigScreen.manager" @@ -387,7 +326,6 @@ def test_on_trigger( mock_partial, mock_manager, mock_sleep, - mock_get_font_name, mock_get_locale, ): # Mocks @@ -413,7 +351,6 @@ def test_on_trigger( self.assertFalse(screen.trigger is None) # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() mock_sleep.assert_called_once_with(2.1) mock_manager.get_screen.assert_called_once_with("DownloadSelfcustodyPemScreen") diff --git a/e2e/test_013_download_selfcustody_pem_screen.py b/e2e/test_013_download_selfcustody_pem_screen.py index 2d76020f..771e1eac 100644 --- a/e2e/test_013_download_selfcustody_pem_screen.py +++ b/e2e/test_013_download_selfcustody_pem_screen.py @@ -16,11 +16,8 @@ def setUpClass(cls): cwd_path = os.path.dirname(__file__) rel_assets_path = os.path.join(cwd_path, "..", "assets") assets_path = os.path.abspath(rel_assets_path) - terminus_path = os.path.join(assets_path, "terminus.ttf") - nanum_path = os.path.join(assets_path, "NanumGothic-Regular.ttf") - LabelBase.register(name="terminus", fn_regular=terminus_path) - LabelBase.register(name="nanum", fn_regular=nanum_path) - LabelBase.register(DEFAULT_FONT, terminus_path) + noto_sans_path = os.path.join(assets_path, "NotoSansCJK_Cy_SC_KR_Krux.ttf") + LabelBase.register(DEFAULT_FONT, noto_sans_path) @classmethod def teardown_class(cls): @@ -30,10 +27,7 @@ def teardown_class(cls): @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_init(self, mock_get_font_name, mock_get_locale): + def test_init(self, mock_get_locale): screen = DownloadSelfcustodyPemScreen() self.render(screen) @@ -54,20 +48,14 @@ def test_init(self, mock_get_font_name, mock_get_locale): self.assertEqual(grid.children[0].id, "download_selfcustody_pem_screen_info") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.base_screen.BaseScreen.redirect_error") - def test_fail_update_invalid_name( - self, mock_redirect_error, mock_get_font_name, mock_get_locale - ): + def test_fail_update_invalid_name(self, mock_redirect_error, mock_get_locale): screen = DownloadSelfcustodyPemScreen() self.render(screen) @@ -79,20 +67,14 @@ def test_fail_update_invalid_name( # patch assertions mock_redirect_error.assert_called_once_with("Invalid screen name: MockScreen") - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.base_screen.BaseScreen.redirect_error") - def test_fail_update_key( - self, mock_redirect_error, mock_get_font_name, mock_get_locale - ): + def test_fail_update_key(self, mock_redirect_error, mock_get_locale): screen = DownloadSelfcustodyPemScreen() self.render(screen) @@ -104,17 +86,13 @@ def test_fail_update_key( # patch assertions mock_redirect_error.assert_called_once_with('Invalid key: "mock"') - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_update_locale(self, mock_get_font_name, mock_get_locale): + def test_update_locale(self, mock_get_locale): screen = DownloadSelfcustodyPemScreen() self.render(screen) @@ -128,23 +106,19 @@ def test_update_locale(self, mock_get_font_name, mock_get_locale): self.assertEqual(screen.locale, "en_US.UTF-8") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch( "src.app.screens.base_screen.BaseScreen.get_destdir_assets", return_value="mockdir", ) @patch("src.app.screens.download_selfcustody_pem_screen.PemDownloader") def test_update_public_key_certificate( - self, mock_downloader, mock_destdir_assets, mock_get_font_name, mock_get_locale + self, mock_downloader, mock_destdir_assets, mock_get_locale ): screen = DownloadSelfcustodyPemScreen() self.render(screen) @@ -156,7 +130,6 @@ def test_update_public_key_certificate( screen.update(name=screen.name, key="public-key-certificate") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() mock_destdir_assets.assert_any_call() mock_downloader.assert_called_once() @@ -165,10 +138,7 @@ def test_update_public_key_certificate( @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_update_progress(self, mock_get_font_name, mock_get_locale): + def test_update_progress(self, mock_get_locale): screen = DownloadSelfcustodyPemScreen() self.render(screen) @@ -197,21 +167,13 @@ def test_update_progress(self, mock_get_font_name, mock_get_locale): # do tests text = "".join( [ - "[font=terminus]", f"[size={fontsize_g}sp][b]1.00 %[/b][/size]", - "[/font]", "\n", - "[font=terminus]", f"[size={fontsize_mp}sp]", "210000", - "[/font]", - "[font=terminus]", " of ", - "[/font]", - "[font=terminus]", "21000000", " B", - "[/font]", "[/size]", ] ) @@ -221,16 +183,12 @@ def test_update_progress(self, mock_get_font_name, mock_get_locale): ) # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.download_selfcustody_pem_screen.PemDownloader") @patch("src.app.screens.download_selfcustody_pem_screen.partial") @patch("src.app.screens.download_selfcustody_pem_screen.Clock.schedule_once") @@ -239,7 +197,6 @@ def test_on_progress( mock_schedule_once, mock_partial, mock_downloader, - mock_get_font_name, mock_get_locale, ): mock_downloader.downloaded_len = 8 @@ -258,7 +215,6 @@ def test_on_progress( DownloadSelfcustodyPemScreen.on_progress(data=b"") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() mock_partial.assert_has_calls( [ @@ -280,10 +236,7 @@ def test_on_progress( @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): + def test_update_progress_100_percent(self, mock_get_locale): screen = DownloadSelfcustodyPemScreen() self.render(screen) @@ -317,19 +270,13 @@ def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): # do tests text_progress = "".join( [ - "[font=terminus]" f"[size={fontsize_g}sp][b]100.00 %[/b][/size]", - "[/font]", + f"[size={fontsize_g}sp][b]100.00 %[/b][/size]", "\n", - "[font=terminus]" f"[size={fontsize_mp}sp]", + f"[size={fontsize_mp}sp]", "21", - "[/font]", - "[font=terminus]", " of ", - "[/font]", - "[font=terminus]", "21", " B", - "[/font]", "[/size]", ] ) @@ -338,13 +285,9 @@ def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): text_info = "".join( [ f"[size={fontsize_mp}sp]", - "[font=terminus]", filepath, - "[/font]", "\n", - "[font=terminus]", "downloaded", - "[/font]", "[/size]", ] ) @@ -358,7 +301,6 @@ def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): ) # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() assert len(mock_trigger.mock_calls) >= 1 @@ -366,16 +308,11 @@ def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.download_selfcustody_pem_screen.time.sleep") @patch( "src.app.screens.download_selfcustody_pem_screen.DownloadSelfcustodyPemScreen.set_screen" ) - def test_on_trigger( - self, mock_set_screen, mock_sleep, mock_get_font_name, mock_get_locale - ): + def test_on_trigger(self, mock_set_screen, mock_sleep, mock_get_locale): # screen screen = DownloadSelfcustodyPemScreen() @@ -395,7 +332,6 @@ def test_on_trigger( self.assertFalse(screen.trigger is None) # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() mock_sleep.assert_called_once_with(2.1) mock_set_screen.assert_called_once_with( diff --git a/e2e/test_014_download_beta_screen.py b/e2e/test_014_download_beta_screen.py index c299b713..daf0bbe7 100644 --- a/e2e/test_014_download_beta_screen.py +++ b/e2e/test_014_download_beta_screen.py @@ -16,11 +16,8 @@ def setUpClass(cls): cwd_path = os.path.dirname(__file__) rel_assets_path = os.path.join(cwd_path, "..", "assets") assets_path = os.path.abspath(rel_assets_path) - terminus_path = os.path.join(assets_path, "terminus.ttf") - nanum_path = os.path.join(assets_path, "NanumGothic-Regular.ttf") - LabelBase.register(name="terminus", fn_regular=terminus_path) - LabelBase.register(name="nanum", fn_regular=nanum_path) - LabelBase.register(DEFAULT_FONT, terminus_path) + noto_sans_path = os.path.join(assets_path, "NotoSansCJK_Cy_SC_KR_Krux.ttf") + LabelBase.register(DEFAULT_FONT, noto_sans_path) @classmethod def teardown_class(cls): @@ -30,10 +27,7 @@ def teardown_class(cls): @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_init(self, mock_get_font_name, mock_get_locale): + def test_init(self, mock_get_locale): screen = DownloadBetaScreen() self.render(screen) @@ -54,20 +48,14 @@ def test_init(self, mock_get_font_name, mock_get_locale): self.assertEqual(grid.children[0].id, "download_beta_screen_info") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.base_screen.BaseScreen.redirect_error") - def test_fail_update_invalid_name( - self, mock_redirect_error, mock_get_font_name, mock_get_locale - ): + def test_fail_update_invalid_name(self, mock_redirect_error, mock_get_locale): screen = DownloadBetaScreen() self.render(screen) @@ -79,20 +67,14 @@ def test_fail_update_invalid_name( # patch assertions mock_redirect_error.assert_called_once_with("Invalid screen name: MockScreen") - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.base_screen.BaseScreen.redirect_error") - def test_fail_update_key( - self, mock_redirect_error, mock_get_font_name, mock_get_locale - ): + def test_fail_update_key(self, mock_redirect_error, mock_get_locale): screen = DownloadBetaScreen() self.render(screen) @@ -104,17 +86,13 @@ def test_fail_update_key( # patch assertions mock_redirect_error.assert_called_once_with('Invalid key: "mock"') - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_update_locale(self, mock_get_font_name, mock_get_locale): + def test_update_locale(self, mock_get_locale): screen = DownloadBetaScreen() self.render(screen) @@ -128,20 +106,14 @@ def test_update_locale(self, mock_get_font_name, mock_get_locale): self.assertEqual(screen.locale, "en_US.UTF-8") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.base_screen.BaseScreen.redirect_error") - def test_fail_update_firmware( - self, mock_redirect_error, mock_get_font_name, mock_get_locale - ): + def test_fail_update_firmware(self, mock_redirect_error, mock_get_locale): screen = DownloadBetaScreen() self.render(screen) @@ -153,17 +125,13 @@ def test_fail_update_firmware( # patch assertions mock_redirect_error.assert_called_once_with("Invalid firmware: mock.kfpkg") - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_update_firmware(self, mock_get_font_name, mock_get_locale): + def test_update_firmware(self, mock_get_locale): screen = DownloadBetaScreen() self.render(screen) @@ -177,20 +145,14 @@ def test_update_firmware(self, mock_get_font_name, mock_get_locale): self.assertEqual(screen.firmware, "kboot.kfpkg") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.base_screen.BaseScreen.redirect_error") - def test_fail_update_device( - self, mock_redirect_error, mock_get_font_name, mock_get_locale - ): + def test_fail_update_device(self, mock_redirect_error, mock_get_locale): screen = DownloadBetaScreen() self.render(screen) @@ -204,17 +166,13 @@ def test_fail_update_device( # patch assertions mock_redirect_error.assert_called_once_with('Invalid device: "mock"') - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_update_device(self, mock_get_font_name, mock_get_locale): + def test_update_device(self, mock_get_locale): screen = DownloadBetaScreen() self.render(screen) @@ -228,23 +186,17 @@ def test_update_device(self, mock_get_font_name, mock_get_locale): self.assertEqual(screen.device, "m5stickv") # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch( "src.app.screens.base_screen.BaseScreen.get_destdir_assets", return_value="mockdir", ) - def test_update_downloader( - self, mock_destdir_assets, mock_get_font_name, mock_get_locale - ): + def test_update_downloader(self, mock_destdir_assets, mock_get_locale): screen = DownloadBetaScreen() screen.firmware = "kboot.kfpkg" screen.device = "amigo" @@ -271,9 +223,7 @@ def test_update_downloader( text = "".join( [ f"[size={fontsize_mp}sp]", - "[font=terminus]", "Downloading", - "[/font]", "\n", "[color=#00AABB]", "[ref=https://raw.githubusercontent.com/odudex/krux_binaries/main/maixpy_amigo/kboot.kfpkg]", @@ -281,9 +231,7 @@ def test_update_downloader( "[/ref]", "[/color]", "\n", - "[font=terminus]", "to", - "[/font]", "\n", firmware_path, "\n", @@ -294,7 +242,6 @@ def test_update_downloader( self.assertEqual(screen.ids["download_beta_screen_info"].text, text) # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() mock_destdir_assets.assert_any_call() @@ -302,10 +249,7 @@ def test_update_downloader( @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_update_progress(self, mock_get_font_name, mock_get_locale): + def test_update_progress(self, mock_get_locale): screen = DownloadBetaScreen() screen.downloader = MagicMock(destdir="mockdir") self.render(screen) @@ -335,28 +279,22 @@ def test_update_progress(self, mock_get_font_name, mock_get_locale): # do tests text = "".join( [ - "[font=terminus]", f"[size={fontsize_g}sp][b]1.00 %[/b][/size]", "\n", f"[size={fontsize_mp}sp]0.20 of 20.03 MB[/size]", - "[/font]", ] ) self.assertEqual(screen.ids["download_beta_screen_progress"].text, text) # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) - def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): + def test_update_progress_100_percent(self, mock_get_locale): screen = DownloadBetaScreen() self.render(screen) @@ -390,25 +328,15 @@ def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): # do tests text_progress = "".join( [ - "[font=terminus]", f"[size={fontsize_g}sp][b]100.00 %[/b][/size]", "\n", f"[size={fontsize_mp}sp]20.03 of 20.03 MB[/size]", - "[/font]", ] ) kboot = os.path.join("mockdir", "kboot.kfpkg") text_info = "".join( - [ - "[font=terminus]", - f"[size={fontsize_mp}sp]", - kboot, - "\n", - "downloaded", - "[/size]", - "[/font]", - ] + [f"[size={fontsize_mp}sp]", kboot, "\n", "downloaded", "[/size]"] ) self.assertEqual( @@ -417,7 +345,6 @@ def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): self.assertEqual(screen.ids["download_beta_screen_info"].text, text_info) # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() assert len(mock_trigger.mock_calls) >= 1 @@ -425,9 +352,6 @@ def test_update_progress_100_percent(self, mock_get_font_name, mock_get_locale): @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.base_screen.BaseScreen.get_baudrate", return_value=1500000) @patch( "src.app.screens.base_screen.BaseScreen.get_destdir_assets", @@ -447,7 +371,6 @@ def test_on_trigger( mock_sleep, mock_get_destdir_assets, mock_get_baudrate, - mock_get_font_name, mock_get_locale, ): # Mocks @@ -475,7 +398,6 @@ def test_on_trigger( self.assertFalse(screen.trigger is None) # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() mock_get_destdir_assets.assert_any_call() mock_get_baudrate.assert_any_call() @@ -514,14 +436,9 @@ def test_on_trigger( @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.screens.download_beta_screen.partial") @patch("src.app.screens.download_beta_screen.Clock.schedule_once") - def test_on_progress( - self, mock_schedule_once, mock_partial, mock_get_font_name, mock_get_locale - ): + def test_on_progress(self, mock_schedule_once, mock_partial, mock_get_locale): # screen screen = DownloadBetaScreen() @@ -547,7 +464,6 @@ def test_on_progress( self.assertFalse(screen.on_progress is None) # patch assertions - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() mock_partial.assert_has_calls( [ diff --git a/e2e/test_015_warning_already_downloaded_screen.py b/e2e/test_015_warning_already_downloaded_screen.py index c3886964..6bd05fac 100644 --- a/e2e/test_015_warning_already_downloaded_screen.py +++ b/e2e/test_015_warning_already_downloaded_screen.py @@ -115,30 +115,20 @@ def test_update_version(self, mock_get_locale): label_text = "".join( [ - f"[font=terminus]" f"[size={size[0]}sp][b]Assets already downloaded[/b][/size]", - "[/font]", "\n", - "\n", - "[font=terminus]", f"[size={size[2]}sp]* krux-v0.0.1.zip[/size]", "\n", - "\n", f"[size={size[2]}sp]* krux-v0.0.1.zip.sha256.txt[/size]", "\n", - "\n", f"[size={size[2]}sp]* krux-v0.0.1.zip.sig[/size]", "\n", - "\n", f"[size={size[2]}sp]* selfcustody.pem[/size]", "\n", "\n", - "\n", - "[font=terminus]", f"[size={size[1]}sp]Do you want to proceed with the same file or do you want to download it again?[/size]", "\n", "\n", - "\n", f"[size={size[0]}]" f"[color=#00ff00]", "[ref=DownloadStableZipScreen]", "Download again", @@ -151,7 +141,6 @@ def test_update_version(self, mock_get_locale): "[/ref]", "[/color]", "[/size]", - "[/font]", ] ) diff --git a/e2e/test_016_unzip_stable_screen.py b/e2e/test_016_unzip_stable_screen.py index ed342dc5..7976d160 100644 --- a/e2e/test_016_unzip_stable_screen.py +++ b/e2e/test_016_unzip_stable_screen.py @@ -16,11 +16,8 @@ def setUpClass(cls): cwd_path = os.path.dirname(__file__) rel_assets_path = os.path.join(cwd_path, "..", "assets") assets_path = os.path.abspath(rel_assets_path) - terminus_path = os.path.join(assets_path, "terminus.ttf") - nanum_path = os.path.join(assets_path, "NanumGothic-Regular.ttf") - LabelBase.register(name="terminus", fn_regular=terminus_path) - LabelBase.register(name="nanum", fn_regular=nanum_path) - LabelBase.register(DEFAULT_FONT, terminus_path) + noto_sans_path = os.path.join(assets_path, "NotoSansCJK_Cy_SC_KR_Krux.ttf") + LabelBase.register(DEFAULT_FONT, noto_sans_path) @classmethod def teardown_class(cls): @@ -248,7 +245,7 @@ def test_update_flash_button(self, mock_get_locale, mock_get_destdir_assets): p = os.path.join("mock", "krux-v0.0.1", "maixpy_mock", "kboot.kfpkg") text = "".join( [ - "[font=terminus]" f"[size={size[0]}sp]", + f"[size={size[0]}sp]", "Flash with", "[/size]", "\n", @@ -257,7 +254,6 @@ def test_update_flash_button(self, mock_get_locale, mock_get_destdir_assets): p, "[/color]", "[/size]", - "[/font]", ] ) @@ -299,7 +295,6 @@ def test_update_airgap_button(self, mock_get_locale, mock_get_destdir_assets): p = os.path.join("mock", "krux-v0.0.1", "maixpy_mock", "firmware.bin") text = "".join( [ - "[font=terminus]", f"[size={size[0]}sp]", "[color=#333333]", "Air-gapped update with", @@ -311,7 +306,6 @@ def test_update_airgap_button(self, mock_get_locale, mock_get_destdir_assets): p, "[/color]", "[/size]", - "[/font]", ] ) @@ -365,7 +359,6 @@ def test_on_press_flash_button( p = os.path.join("mock", "krux-v0.0.1", "maixpy_mock", "kboot.kfpkg") text = "".join( [ - "[font=terminus]", f"[size={size[0]}sp]", "Extracting", "[/size]", @@ -375,7 +368,6 @@ def test_on_press_flash_button( p, "[/color]", "[/size]", - "[/font]", ] ) @@ -426,7 +418,6 @@ def test_on_press_airgap_button( p = os.path.join("mock", "krux-v0.0.1", "maixpy_mock", "firmware.bin") text = "".join( [ - "[font=terminus]", f"[size={size[0]}sp]", "[color=#333333]", "Air-gapped update with", @@ -438,7 +429,6 @@ def test_on_press_airgap_button( p, "[/color]", "[/size]", - "[/font]", ] ) @@ -501,7 +491,6 @@ def test_on_release_flash_button( p = os.path.join("mock", "krux-v0.0.1", "maixpy_mock", "kboot.kfpkg") text = "".join( [ - "[font=terminus]", f"[size={size[0]}sp]", "Extracted", "[/size]", @@ -511,7 +500,6 @@ def test_on_release_flash_button( p, "[/color]", "[/size]", - "[/font]", ] ) @@ -582,7 +570,6 @@ def test_on_release_airgapped_button( p = os.path.join("mock", "krux-v0.0.1", "maixpy_mock", "firmware.bin") text = "".join( [ - "[font=terminus]", f"[size={size[0]}sp]", "[color=#333333]", "Air-gapped update with", @@ -594,7 +581,6 @@ def test_on_release_airgapped_button( p, "[/color]", "[/size]", - "[/font]", ] ) diff --git a/e2e/test_017_verify_stable_zip_screen.py b/e2e/test_017_verify_stable_zip_screen.py index 5c556e09..d262308f 100644 --- a/e2e/test_017_verify_stable_zip_screen.py +++ b/e2e/test_017_verify_stable_zip_screen.py @@ -119,12 +119,11 @@ def test_on_pre_enter(self, mock_get_locale): text = "".join( [ - "[font=terminus]" f"[size={fontsize_mm}sp]", + f"[size={fontsize_mm}sp]", "[color=#efcc00]", "Verifying integrity and authenticity", "[/color]", "[/size]", - "[/font]", ] ) self.assertEqual(len(screen.ids["verify_stable_zip_screen_grid"].children), 1) diff --git a/e2e/test_020_app_init.py b/e2e/test_020_app_init.py index 4c826482..4152aeed 100644 --- a/e2e/test_020_app_init.py +++ b/e2e/test_020_app_init.py @@ -14,11 +14,8 @@ def setUpClass(cls): cwd_path = os.path.dirname(__file__) rel_assets_path = os.path.join(cwd_path, "..", "assets") assets_path = os.path.abspath(rel_assets_path) - terminus_path = os.path.join(assets_path, "terminus.ttf") - nanum_path = os.path.join(assets_path, "NanumGothic-Regular.ttf") - LabelBase.register(name="terminus", fn_regular=terminus_path) - LabelBase.register(name="nanum", fn_regular=nanum_path) - LabelBase.register(DEFAULT_FONT, terminus_path) + noto_sans_path = os.path.join(assets_path, "NotoSansCJK_Cy_SC_KR_Krux.ttf") + LabelBase.register(DEFAULT_FONT, noto_sans_path) @classmethod def teardown_class(cls): @@ -64,15 +61,10 @@ def test_fail_setup_screen_manager(self): @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch( "src.app.screens.base_screen.BaseScreen.get_destdir_assets", return_value="mock" ) - def test_setup_screens( - self, mock_get_destdir_assets, mock_get_font_name, mock_get_locale - ): + def test_setup_screens(self, mock_get_destdir_assets, mock_get_locale): app = KruxInstallerApp() app.setup_screens() @@ -104,22 +96,16 @@ def test_setup_screens( mock_get_destdir_assets.assert_called_once() mock_get_locale.assert_called() - mock_get_font_name.assert_called() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch("sys.platform", "win32") @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch( "src.app.screens.base_screen.BaseScreen.get_destdir_assets", return_value="mock" ) - def test_setup_screens_win32( - self, mock_get_destdir_assets, mock_get_font_name, mock_get_locale - ): + def test_setup_screens_win32(self, mock_get_destdir_assets, mock_get_locale): app = KruxInstallerApp() app.setup_screens() @@ -150,22 +136,16 @@ def test_setup_screens_win32( mock_get_destdir_assets.assert_called_once() mock_get_locale.assert_called() - mock_get_font_name.assert_called() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch("sys.platform", "darwin") @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch( "src.app.screens.base_screen.BaseScreen.get_destdir_assets", return_value="mock" ) - def test_setup_screens_darwin( - self, mock_get_destdir_assets, mock_get_font_name, mock_get_locale - ): + def test_setup_screens_darwin(self, mock_get_destdir_assets, mock_get_locale): app = KruxInstallerApp() app.setup_screens() @@ -195,7 +175,6 @@ def test_setup_screens_darwin( self.assertIn(screen.name, allowed_screens) mock_get_destdir_assets.assert_called_once() - mock_get_font_name.assert_any_call() mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @@ -226,9 +205,6 @@ def test_on_start(self, mock_on_greetings): @patch( "src.app.screens.base_screen.BaseScreen.get_locale", return_value="en_US.UTF-8" ) - @patch( - "src.app.screens.base_screen.BaseScreen.get_font_name", return_value="terminus" - ) @patch("src.app.KruxInstallerApp.setup_screens") @patch("src.app.KruxInstallerApp.setup_screen_manager") # pylint: disable=unused-argument @@ -236,7 +212,6 @@ def test_build( self, mock_setup_screen_manager, mock_setup_screens, - mock_get_font_name, mock_get_locale, ): app = KruxInstallerApp() diff --git a/e2e/test_022_flash_screen.py b/e2e/test_022_flash_screen.py index 9b2dd1e1..4372298b 100644 --- a/e2e/test_022_flash_screen.py +++ b/e2e/test_022_flash_screen.py @@ -366,13 +366,11 @@ def test_on_process_callback(self, mock_get_locale): text = "".join( [ - "[font=terminus]", "[size=100sp]4.76 %[/size]", "\n", "[size=28sp]Flashing [color=#efcc00][b]firmware.bin[/b][/color] at ", "[color=#efcc00][b]21 KiB/s[/b][/color]", "[/size]", - "[/font]", ] ) on_process_callback = getattr(FlashScreen, "on_process_callback") @@ -404,36 +402,25 @@ def test_on_trigger_callback(self, mock_get_locale): else: size = screen.SIZE_M - text = "\n".join( + text = "".join( [ - "".join( - [ - "[font=terminus]", - f"[size={size}sp][b]DONE![/b][/size]", - "[/font]", - ] - ), - "", - "", - "".join( - [ - "[font=terminus]", - f"[size={size}sp]", - "[color=#00FF00][ref=Back]Back[/ref][/color]", - " ", - "[color=#EFCC00][ref=Quit]Quit[/ref][/color]", - "[/font]", - ] - ), + f"[size={size}sp][b]DONE![/b][/size]", + "\n", + "\n", + f"[size={size}sp]", + "[color=#00FF00][ref=Back]Back[/ref][/color]", + " ", + "[color=#EFCC00][ref=Quit]Quit[/ref][/color]", ] ) + on_trigger_callback = getattr(FlashScreen, "on_trigger_callback") on_trigger_callback(0) self.assertEqual(screen.ids[f"{screen.id}_progress"].text, text) - # patch assertions - mock_get_locale.assert_has_calls([call(), call(), call()]) + # patch assertions + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( diff --git a/e2e/test_023_wipe_screen.py b/e2e/test_023_wipe_screen.py index 71780091..51d5102d 100644 --- a/e2e/test_023_wipe_screen.py +++ b/e2e/test_023_wipe_screen.py @@ -14,11 +14,8 @@ def setUpClass(cls): cwd_path = os.path.dirname(__file__) rel_assets_path = os.path.join(cwd_path, "..", "assets") assets_path = os.path.abspath(rel_assets_path) - terminus_path = os.path.join(assets_path, "terminus.ttf") - nanum_path = os.path.join(assets_path, "NanumGothic-Regular.ttf") - LabelBase.register(name="terminus", fn_regular=terminus_path) - LabelBase.register(name="nanum", fn_regular=nanum_path) - LabelBase.register(DEFAULT_FONT, terminus_path) + noto_sans_path = os.path.join(assets_path, "NotoSansCJK_Cy_SC_KR_Krux.ttf") + LabelBase.register(DEFAULT_FONT, noto_sans_path) @classmethod def teardown_class(cls): @@ -264,38 +261,24 @@ def test_on_trigger_callback(self, mock_get_locale): else: size = screen.SIZE_M - text = "\n".join( + text = "".join( [ - "".join( - [ - "[font=terminus]", - f"[size={size}sp][b]DONE![/b][/size]", - "[/font]", - ] - ), - "", - "", - "".join( - [ - "[font=terminus]", - f"[size={size}sp]", - "[color=#00FF00][ref=Back]Back[/ref][/color]", - " ", - "[color=#EFCC00][ref=Quit]Quit[/ref][/color]", - "[/font]", - ] - ), + f"[size={size}sp][b]DONE![/b][/size]", + "\n", + f"[size={size}sp]", + "[color=#00FF00][ref=Back]Back[/ref][/color]", + " ", + "[color=#EFCC00][ref=Quit]Quit[/ref][/color]", ] ) on_trigger_callback = getattr(WipeScreen, "on_trigger_callback") on_trigger_callback(0) self.assertEqual(screen.ids[f"{screen.id}_progress"].text, text) - # patch assertions + self.assertEqual(screen.ids[f"{screen.id}_progress"].text, text) - # each button has at least 2 calls of get locale - # one for locale, other for font - mock_get_locale.assert_has_calls([call(), call(), call()]) + # patch assertions + mock_get_locale.assert_any_call() @patch.object(EventLoopBase, "ensure_window", lambda x: None) @patch( diff --git a/src/app/config_krux_installer.py b/src/app/config_krux_installer.py index 14a31edf..be3f1c44 100644 --- a/src/app/config_krux_installer.py +++ b/src/app/config_krux_installer.py @@ -29,7 +29,7 @@ from functools import partial from kivy import resources as kv_resources from kivy.clock import Clock -from kivy.core.text import LabelBase +from kivy.core.text import LabelBase, DEFAULT_FONT from src.utils.trigger import Trigger from src.app.base_krux_installer import BaseKruxInstaller @@ -59,13 +59,8 @@ def __init__(self, *args, **kwargs): self.info(f"Registering assets path={self.assets_path}") - terminus_path = os.path.join(self.assets_path, "terminus.ttf") - nanum_path = os.path.join(self.assets_path, "NanumGothic-Regular.ttf") - sc_path = os.path.join(self.assets_path, "NotoSansSC-Regular.ttf") - - LabelBase.register(name="terminus", fn_regular=terminus_path) - LabelBase.register(name="nanum", fn_regular=nanum_path) - LabelBase.register(name="noto-sc", fn_regular=sc_path) + noto_sans_path = os.path.join(self.assets_path, "NotoSansCJK_Cy_SC_KR_Krux.ttf") + LabelBase.register(DEFAULT_FONT, noto_sans_path) @staticmethod def make_lang_code(lang: str) -> str: diff --git a/src/app/screens/about_screen.py b/src/app/screens/about_screen.py index a0936077..67d9951a 100644 --- a/src/app/screens/about_screen.py +++ b/src/app/screens/about_screen.py @@ -104,32 +104,27 @@ def update(self, *args, **kwargs): version = "".join( [ - f"[font={AboutScreen.get_font_name()}]" f"[size={self.SIZE_G}sp]", "[color=#00AABB]", f"[ref=SourceCode][b]v{get_version()}[/b][/ref]", "[/color]", "[/size]", - "[/font]", ] ) X = "".join( [ - f"[font={AboutScreen.get_font_name()}]", f"[size={self.SIZE_M}sp]", f"{follow}: ", "[color=#00AABB]", "[ref=X]@selfcustodykrux[/ref]", "[/color]", "[/size]", - "[/font]", ] ) back = "".join( [ - f"[font={AboutScreen.get_font_name()}]" f"[size={self.SIZE_M}sp]", "[color=#00FF00]", "[ref=Back]", @@ -137,7 +132,6 @@ def update(self, *args, **kwargs): "[/ref]", "[/color]", "[/size]", - "[/font]", ] ) diff --git a/src/app/screens/base_download_screen.py b/src/app/screens/base_download_screen.py index 55023970..06d1e553 100644 --- a/src/app/screens/base_download_screen.py +++ b/src/app/screens/base_download_screen.py @@ -49,12 +49,11 @@ def __init__(self, wid: str, name: str, **kwargs): connecting = self.translate("Connecting") text = "".join( [ - f"[font={BaseDownloadScreen.get_font_name()}]", f"[size={self.SIZE_G}]", f"{connecting}...", "[/size]", "[color=#efcc00]", - "[/color]" "[/font]", + "[/color]", ] ) diff --git a/src/app/screens/base_screen.py b/src/app/screens/base_screen.py index 708811b2..ecaa7b46 100644 --- a/src/app/screens/base_screen.py +++ b/src/app/screens/base_screen.py @@ -292,19 +292,6 @@ def get_locale() -> str: else: raise RuntimeError(f"Not implemented for '{sys.platform}'") - @staticmethod - def get_font_name() -> str: - locale = BaseScreen.get_locale() - - if locale.startswith("ko_KR"): - return "nanum" - - elif locale.startswith("zh_CN"): - return "noto-sc" - - else: - return "terminus" - @staticmethod def open_settings(): app = App.get_running_app() diff --git a/src/app/screens/check_internet_connection_screen.py b/src/app/screens/check_internet_connection_screen.py index 5c01b3c5..5f6f7d5d 100644 --- a/src/app/screens/check_internet_connection_screen.py +++ b/src/app/screens/check_internet_connection_screen.py @@ -63,13 +63,11 @@ def _release(instance): root_widget=f"{self.id}_grid", text="".join( [ - f"[font={CheckInternetConnectionScreen.get_font_name()}]" f"[size={self.SIZE_MM}sp]", "[color=#efcc00]", self.translate("Checking your internet connection"), "[/color]", "[/size]", - "[/font]", ] ), markup=True, diff --git a/src/app/screens/check_permissions_screen.py b/src/app/screens/check_permissions_screen.py index 1e11120c..5ec3825e 100644 --- a/src/app/screens/check_permissions_screen.py +++ b/src/app/screens/check_permissions_screen.py @@ -154,11 +154,11 @@ def update(self, *args, **kwargs): self.ids[f"{self.id}_label"].text = "".join( [ - f"[font={CheckPermissionsScreen.get_font_name()}]", f"[size={self.SIZE_MM}sp]", - f"[color=#efcc00]{setup_msg} {self.user} {for_msg} {distro.name()}[/color]", + "[color=#efcc00]", + f"{setup_msg} {self.user} {for_msg} {distro.name()}", + "[/color]", "[/size]", - "[/font]", ] ) @@ -196,10 +196,11 @@ def update(self, *args, **kwargs): self.ids[f"{self.id}_label"].text = "".join( [ - f"[font={CheckPermissionsScreen.get_font_name()}]", f"[size={self.SIZE_G}sp]", - f"[color=#efcc00]{check_msg} {self.group} {perm_msg} {self.user}[/color][/size]", - "[/font]", + "[color=#efcc00]", + f"{check_msg} {self.group} {perm_msg} {self.user}", + "[/color]", + "[/size]", ] ) @@ -231,23 +232,19 @@ def update(self, *args, **kwargs): self.ids[f"{self.id}_label"].text = "\n".join( [ - f"[font={CheckPermissionsScreen.get_font_name()}]" f"[size={self.SIZE_G}sp][color=#efcc00]{warn_msg}[/color][/size]", "", f'[size={self.SIZE_MP}sp]{first_msg} "{distro.name(pretty=True)}"', f"{access_msg}.", proceed_msg, f"{exec_msg}:", - "[/font]" "", "", - "[font=terminus]" "[color=#00ff00]", + "[color=#00ff00]", f"{self.bin} {" ".join(self.bin_args or [])} {self.group} {self.user}", "[/color]", "[/size]", - "[/font]", "", "", - f"[font={CheckPermissionsScreen.get_font_name()}]", f"[size={self.SIZE_M}]", " ".join( [ @@ -256,7 +253,6 @@ def update(self, *args, **kwargs): ] ), "[/size]", - "[/font]", ] ) @@ -288,14 +284,12 @@ def on_permission_created(output: str): self.ids[f"{self.id}_label"].text = "\n".join( [ - f"[font={CheckPermissionsScreen.get_font_name()}]", f"[size={self.SIZE_M}sp][color=#efcc00]{output}[/color][/size]", "", f"[size={self.SIZE_M}sp]{logout_msg}", f"{backin_msg}.", "", f"{not_worry_msg}.[/size]", - "[/font]", ] ) diff --git a/src/app/screens/download_beta_screen.py b/src/app/screens/download_beta_screen.py index f24e4f8a..be05e798 100644 --- a/src/app/screens/download_beta_screen.py +++ b/src/app/screens/download_beta_screen.py @@ -149,17 +149,13 @@ def update(self, *args, **kwargs): self.ids[f"{self.id}_info"].text = "".join( [ f"[size={self.SIZE_MP}sp]", - f"[font={DownloadBetaScreen.get_font_name()}]", downloading, - "[/font]", "\n", "[color=#00AABB]", f"[ref={self.downloader.url}]{self.downloader.url}[/ref]", "[/color]", "\n", - f"[font={DownloadBetaScreen.get_font_name()}]", to, - "[/font]", "\n", self.downloader.destdir, "\n", @@ -182,11 +178,9 @@ def update(self, *args, **kwargs): downs = [f"{lens[0]/(1<<20):,.2f}", f"{lens[1]/(1<<20):,.2f}"] self.ids[f"{self.id}_progress"].text = "".join( [ - "[font=terminus]", f"[size={self.SIZE_G}sp][b]{ percent * 100:,.2f} %[/b][/size]", "\n", f"[size={self.SIZE_MP}sp]{downs[0]} of {downs[1]} MB[/size]", - "[/font]", ] ) @@ -195,13 +189,11 @@ def update(self, *args, **kwargs): destdir = os.path.join(self.downloader.destdir, "kboot.kfpkg") self.ids[f"{self.id}_info"].text = "".join( [ - f"[font={DownloadBetaScreen.get_font_name()}]", f"[size={self.SIZE_MP}sp]", destdir, "\n", downloaded, "[/size]", - "[/font]", ] ) diff --git a/src/app/screens/download_selfcustody_pem_screen.py b/src/app/screens/download_selfcustody_pem_screen.py index 23fd5760..0415eb5f 100644 --- a/src/app/screens/download_selfcustody_pem_screen.py +++ b/src/app/screens/download_selfcustody_pem_screen.py @@ -115,21 +115,13 @@ def update(self, *args, **kwargs): self.ids[f"{self.id}_info"].text = "".join( [ f"[size={self.SIZE_MP}sp]", - f"[font={DownloadSelfcustodyPemScreen.get_font_name()}]", downloading, - "[/font]", "\n", - "[font=terminus]", f"[color=#00AABB][ref={url}]{url}[/ref][/color]", - "[/font]", "\n", - f"[font={DownloadSelfcustodyPemScreen.get_font_name()}]", to, - "[/font]", "\n", - "[font=terminus]", filepath, - "[/font]", "[/size]", ] ) @@ -155,21 +147,13 @@ def update(self, *args, **kwargs): of = self.translate("of") self.ids[f"{self.id}_progress"].text = "".join( [ - "[font=terminus]", f"[size={self.SIZE_G}sp][b]{percent * 100:,.2f} %[/b][/size]", - "[/font]", "\n", - "[font=terminus]", f"[size={self.SIZE_MP}sp]", str(lens[0]), - "[/font]", - f"[font={DownloadSelfcustodyPemScreen.get_font_name()}]", f" {of} ", - "[/font]", - "[font=terminus]", str(lens[1]), " B", - "[/font]", "[/size]", ] ) @@ -182,13 +166,9 @@ def update(self, *args, **kwargs): self.ids[f"{self.id}_info"].text = "".join( [ f"[size={self.SIZE_MP}sp]", - "[font=terminus]", filepath, - "[/font]", "\n", - f"[font={DownloadSelfcustodyPemScreen.get_font_name()}]", downloaded, - "[/font]", "[/size]", ] ) diff --git a/src/app/screens/download_stable_zip_screen.py b/src/app/screens/download_stable_zip_screen.py index 93d394bf..72deb462 100644 --- a/src/app/screens/download_stable_zip_screen.py +++ b/src/app/screens/download_stable_zip_screen.py @@ -134,21 +134,13 @@ def update(self, *args, **kwargs): self.ids[f"{self.id}_info"].text = "".join( [ f"[size={self.SIZE_MP}sp]", - f"[font={DownloadStableZipScreen.get_font_name()}]", downloading, - "[/font]", "\n", - "[font=terminus]", f"[color=#00AABB][ref={url}]{url}[/ref][/color]", - "[/font]", "\n", - f"[font={DownloadStableZipScreen.get_font_name()}]", to, - "[/font]", "\n", - "[font=terminus]", filepath, - "[/font]", "[/size]", ] ) @@ -173,15 +165,11 @@ def update(self, *args, **kwargs): of = self.translate("of") self.ids[f"{self.id}_progress"].text = "".join( [ - "[font=terminus]", f"[size={self.SIZE_G}sp][b]{ percent * 100:,.2f} %[/b][/size]", - "[/font]", "\n", f"[size={self.SIZE_MP}sp]", downs[0], - f"[font={DownloadStableZipScreen.get_font_name()}]", f" {of} ", - "[/font]", downs[1], " MB", "[/size]", @@ -198,13 +186,9 @@ def update(self, *args, **kwargs): self.ids[f"{self.id}_info"].text = "".join( [ f"[size={self.SIZE_MP}sp]", - "[font=terminus]", filepath, - "[/font]", "\n", - f"[font={DownloadStableZipScreen.get_font_name()}]", downloaded, - "[/font]", "[/size]", ] ) diff --git a/src/app/screens/download_stable_zip_sha256_screen.py b/src/app/screens/download_stable_zip_sha256_screen.py index 75adf77c..4baf9085 100644 --- a/src/app/screens/download_stable_zip_sha256_screen.py +++ b/src/app/screens/download_stable_zip_sha256_screen.py @@ -126,21 +126,13 @@ def update(self, *args, **kwargs): self.ids[f"{self.id}_info"].text = "".join( [ f"[size={self.SIZE_MP}sp]", - f"[font={DownloadStableZipSha256Screen.get_font_name()}]", downloading, - "[/font]", "\n", - "[font=terminus]", f"[color=#00AABB][ref={url}]{url}[/ref][/color]", - "[/font]", "\n", - f"[font={DownloadStableZipSha256Screen.get_font_name()}]", to, - "[/font]", "\n", - "[font=terminus]", filepath, - "[/font]", "[/size]", ] ) @@ -156,21 +148,13 @@ def update(self, *args, **kwargs): of = self.translate("of") self.ids[f"{self.id}_progress"].text = "".join( [ - "[font=terminus]", f"[size={self.SIZE_G}sp][b]{percent * 100:,.2f} %[/b][/size]", - "[/font]", "\n", - "[font=terminus]", f"[size={self.SIZE_MP}sp]", str(lens[0]), - "[/font]", - f"[font={DownloadStableZipSha256Screen.get_font_name()}]", f" {of} ", - "[/font]", - "[font=terminus]", str(lens[1]), " B", - "[/font]", "[/size]", ] ) @@ -187,13 +171,9 @@ def update(self, *args, **kwargs): self.ids[f"{self.id}_info"].text = "".join( [ f"[size={self.SIZE_MP}sp]", - "[font=terminus]", filepath, - "[/font]", "\n", - f"[font={DownloadStableZipSha256Screen.get_font_name()}]", downloaded, - "[/font]", "[/size]", ] ) diff --git a/src/app/screens/download_stable_zip_sig_screen.py b/src/app/screens/download_stable_zip_sig_screen.py index 5e5739d6..a576d781 100644 --- a/src/app/screens/download_stable_zip_sig_screen.py +++ b/src/app/screens/download_stable_zip_sig_screen.py @@ -122,21 +122,13 @@ def update(self, *args, **kwargs): self.ids[f"{self.id}_info"].text = "".join( [ f"[size={self.SIZE_MP}sp]", - f"[font={DownloadStableZipSigScreen.get_font_name()}]", downloading, - "[/font]", "\n", - "[font=terminus]", f"[color=#00AABB][ref={url}]{url}[/ref][/color]", - "[/font]", "\n", - f"[font={DownloadStableZipSigScreen.get_font_name()}]", to, - "[/font]", "\n", - "[font=terminus]", filepath, - "[/font]", "[/size]", ] ) @@ -153,21 +145,13 @@ def update(self, *args, **kwargs): of = self.translate("of") self.ids[f"{self.id}_progress"].text = "".join( [ - "[font=terminus]", f"[size={self.SIZE_G}sp][b]{percent * 100:,.2f} %[/b][/size]", - "[/font]", "\n", - "[font=terminus]", f"[size={self.SIZE_MP}sp]", str(lens[0]), - "[/font]", - f"[font={DownloadStableZipSigScreen.get_font_name()}]", f" {of} ", - "[/font]", - "[font=terminus]", str(lens[1]), " B", - "[/font]", "[/size]", ] ) @@ -182,13 +166,9 @@ def update(self, *args, **kwargs): self.ids[f"{self.id}_info"].text = "".join( [ f"[size={self.SIZE_MP}sp]", - "[font=terminus]", filepath, - "[/font]", "\n", - f"[font={DownloadStableZipSigScreen.get_font_name()}]", downloaded, - "[/font]", "[/size]", ] ) diff --git a/src/app/screens/flash_screen.py b/src/app/screens/flash_screen.py index fa6086c0..14f01530 100644 --- a/src/app/screens/flash_screen.py +++ b/src/app/screens/flash_screen.py @@ -94,7 +94,6 @@ def on_process_callback( self.ids[f"{self.id}_progress"].text = "".join( [ - f"[font={FlashScreen.get_font_name()}]", f"[size=100sp]{percent:.2f} %[/size]", "\n", "[size=28sp]", @@ -111,7 +110,6 @@ def on_process_callback( "[/b]", "[/color]", "[/size]", - "[/font]", ] ) @@ -138,27 +136,15 @@ def on_trigger_callback(dt): else: size = self.SIZE_M - self.ids[f"{self.id}_progress"].text = "\n".join( + self.ids[f"{self.id}_progress"].text = "".join( [ - "".join( - [ - f"[font={FlashScreen.get_font_name()}]", - f"[size={size}sp][b]{done}![/b][/size]", - "[/font]", - ] - ), - "", - "", - "".join( - [ - f"[font={FlashScreen.get_font_name()}]", - f"[size={size}sp]", - f"[color=#00FF00][ref=Back]{back}[/ref][/color]", - " ", - f"[color=#EFCC00][ref=Quit]{quit}[/ref][/color]", - "[/font]", - ] - ), + f"[size={size}sp][b]{done}![/b][/size]", + "\n", + "\n", + f"[size={size}sp]", + f"[color=#00FF00][ref=Back]{back}[/ref][/color]", + " ", + f"[color=#EFCC00][ref=Quit]{quit}[/ref][/color]", ] ) self.ids[f"{self.id}_progress"].bind(on_ref_press=on_ref_press) @@ -227,30 +213,21 @@ def hook(err): quit = self.translate("Quit") self.ids[f"{self.id}_progress"].text = "".join( [ - "[font=terminus]", f"[size={sizes[0]}]", "[color=#FF0000]Flash failed[/color]", "[/size]", - "[/font]," "\n", + "\n", "\n", f"[size={sizes[0]}]", - f"[font={FlashScreen.get_font_name()}]" f"[color=#00FF00][ref=Back]{back}[/ref][/color]", " ", f"[color=#EFCC00][ref=Quit]{quit}[/ref][/color]", "[/size]", - "[/font]", ] ) self.ids[f"{self.id}_info"].text = "".join( - [ - "[font=terminus]", - f"[size={sizes[1]}]", - msg, - "[/size]", - "[/font]", - ] + [f"[size={sizes[1]}]", msg, "[/size]"] ) # hook what happened diff --git a/src/app/screens/main_screen.py b/src/app/screens/main_screen.py index d62ed6dc..26d3952f 100644 --- a/src/app/screens/main_screen.py +++ b/src/app/screens/main_screen.py @@ -65,73 +65,28 @@ def on_change(instance, value): "main_select_version", "".join( [ - f"[font={MainScreen.get_font_name()}]", f"{self.translate("Version")}: ", "[color=#00AABB]", self.translate(self.version), "[/color]", - "[/font]", ] ), - True, ), ( "main_select_device", "".join( [ - f"[font={MainScreen.get_font_name()}]", f"{self.translate("Device")}: ", "[color=#00AABB]", self.translate(self.device), "[/color]", - "[/font]", ] ), - True, - ), - ( - "main_flash", - "".join( - [ - f"[font={MainScreen.get_font_name()}]", - f"[color=#333333]{self.translate("Flash")}[/color]" "[/font]", - ] - ), - True, - ), - ( - "main_wipe", - "".join( - [ - f"[font={MainScreen.get_font_name()}]", - f"[color=#333333]{self.translate("Wipe")}[/color]", - "[/font]", - ] - ), - True, - ), - ( - "main_settings", - "".join( - [ - f"[font={MainScreen.get_font_name()}]", - self.translate("Settings"), - "[/font]", - ] - ), - True, - ), - ( - "main_about", - "".join( - [ - f"[font={MainScreen.get_font_name()}]", - self.translate("About"), - "[/font]", - ] - ), - True, ), + ("main_flash", f"[color=#333333]{self.translate("Flash")}[/color]"), + ("main_wipe", f"[color=#333333]{self.translate("Wipe")}[/color]"), + ("main_settings", self.translate("Settings")), + ("main_about", self.translate("About")), ] # START of buttons @@ -156,7 +111,6 @@ def _press(instance): url = "https://api.github.com/repos/selfcustody/krux/releases" self.ids[instance.id].text = "".join( [ - f"[font={MainScreen.get_font_name()}]", f"[size={self.SIZE_M}sp]", "[color=#efcc00]", f"[b]{self.translate("Fetching data from")}[/b]", @@ -165,7 +119,6 @@ def _press(instance): url, "[/size]", "[/color]", - "[/font]", ] ) @@ -287,7 +240,7 @@ def _release(instance): id=_tuple[0], root_widget="main_screen_grid", text=_tuple[1], - markup=_tuple[2], + markup=True, on_press=_press, on_release=_release, ) @@ -371,12 +324,10 @@ def update(self, *args, **kwargs): self.version = MainScreen.sanitize_markup(value) self.ids["main_select_version"].text = "".join( [ - f"[font={MainScreen.get_font_name()}]", f"{self.translate("Version")}: ", "[color=#00AABB]", self.version, "[/color]", - "[/font]", ] ) else: @@ -392,20 +343,8 @@ def update(self, *args, **kwargs): self.device = value self.will_flash = True self.will_wipe = True - self.ids["main_flash"].text = "".join( - [ - f"[font={MainScreen.get_font_name()}]", - self.translate("Flash"), - "[/font]", - ] - ) - self.ids["main_wipe"].text = "".join( - [ - f"[font={MainScreen.get_font_name()}]", - self.translate("Wipe"), - "[/font]", - ] - ) + self.ids["main_flash"].text = self.translate("Flash") + self.ids["main_wipe"].text = self.translate("Wipe") else: self.will_flash = False @@ -413,22 +352,10 @@ def update(self, *args, **kwargs): self.ids["main_flash"].markup = True self.ids["main_wipe"].markup = True self.ids["main_flash"].text = "".join( - [ - f"[font={MainScreen.get_font_name()}]", - "[color=#333333]", - self.translate("Flash"), - "[/color]", - "[/font]", - ] + ["[color=#333333]", self.translate("Flash"), "[/color]"] ) self.ids["main_wipe"].text = "".join( - [ - f"[font={MainScreen.get_font_name()}]", - "[color=#333333]", - self.translate("Wipe"), - "[/color]", - "[/font]", - ] + ["[color=#333333]", self.translate("Wipe"), "[/color]"] ) if value == "select a new one": @@ -436,11 +363,10 @@ def update(self, *args, **kwargs): self.ids["main_select_device"].text = "".join( [ - f"[font={MainScreen.get_font_name()}]", f"{self.translate("Device")}: ", "[color=#00AABB]", value, - "[/color]" "[/font]", + "[/color]", ] ) else: @@ -449,64 +375,24 @@ def update(self, *args, **kwargs): elif key == "flash": if not self.will_flash: self.ids["main_flash"].text = "".join( - [ - f"[font={MainScreen.get_font_name()}]", - "[color=#333333]", - self.translate("Flash"), - "[/color]", - "[/font]", - ] + ["[color=#333333]", self.translate("Flash"), "[/color]"] ) else: - self.ids["main_flash"].text = "".join( - [ - f"[font={MainScreen.get_font_name()}]", - self.translate("Flash"), - "[/font]", - ] - ) + self.ids["main_flash"].text = self.translate("Flash") elif key == "wipe": if not self.will_wipe: self.ids["main_wipe"].text = "".join( - [ - f"[font={MainScreen.get_font_name()}]", - "[color=#333333]", - self.translate("Wipe"), - "[/color]", - "[/font]", - ] + ["[color=#333333]", self.translate("Wipe"), "[/color]"] ) else: - self.ids["main_wipe"].text = "".join( - [ - f"[font={MainScreen.get_font_name()}]", - self.translate("Wipe"), - "[/font]", - ] - ) + self.ids["main_wipe"].text = self.translate("Wipe") elif key == "settings": - self.ids["main_settings"].text = "".join( - [ - f"[font={MainScreen.get_font_name()}]", - self.translate("Settings"), - "[/font]", - ] - ) + self.ids["main_settings"].text = self.translate("Settings") elif key == "about": - self.ids["main_about"].text = "".join( - [ - f"[font={MainScreen.get_font_name()}]", - self.translate("About"), - "[/font]", - ] - ) + self.ids["main_about"].text = self.translate("About") else: self.redirect_error(msg=f'Invalid key: "{key}"') - - def on_enter(self): - for children in self.ids[f"{self.id}_grid"].children: - children.font_name = MainScreen.get_font_name() diff --git a/src/app/screens/select_device_screen.py b/src/app/screens/select_device_screen.py index a9f4af0c..4e26cc59 100644 --- a/src/app/screens/select_device_screen.py +++ b/src/app/screens/select_device_screen.py @@ -104,19 +104,12 @@ def update(self, *args, **kwargs): clean_text = re.sub(cleanr, "", value) if device not in VALID_DEVICES_VERSIONS[clean_text]: self.ids[f"select_device_{device}"].text = "".join( - [ - "[font=terminus]", - "[color=#333333]", - device, - "[/color]", - "[/font]", - ] + ["[color=#333333]", device, "[/color]"] ) else: self.enabled_devices.append(f"select_device_{device}") - self.ids[f"select_device_{device}"].text = "".join( - ["[font=terminus]", device, "[/font]"] - ) + self.ids[f"select_device_{device}"].text = device + else: self.redirect_error(f"Invalid value for key '{key}': '{value}'") else: diff --git a/src/app/screens/select_old_version_screen.py b/src/app/screens/select_old_version_screen.py index 54b7fd63..3d4b0445 100644 --- a/src/app/screens/select_old_version_screen.py +++ b/src/app/screens/select_old_version_screen.py @@ -78,7 +78,7 @@ def _release(instance): row=row, id=wid, root_widget="select_old_version_screen_grid", - text=f"[font=terminus]{text}[/font]", + text=text, markup=True, on_press=_press, on_release=_release, @@ -101,7 +101,7 @@ def _release_back(instance): row=len(old_versions) + 1, id="select_old_version_back", root_widget="select_old_version_screen_grid", - text=f"[font={SelectOldVersionScreen.get_font_name()}]{back}[/font]", + text=back, markup=True, on_press=_press_back, on_release=_release_back, @@ -126,13 +126,7 @@ def update(self, *args, **kwargs): if "select_old_version_back" in self.ids: back = self.translate("Back") - self.ids["select_old_version_back"].text = "".join( - [ - f"[font={SelectOldVersionScreen.get_font_name()}]", - back, - "[/font]", - ] - ) + self.ids["select_old_version_back"].text = back else: self.redirect_error(f"Invalid value for key '{key}': '{value}'") diff --git a/src/app/screens/select_version_screen.py b/src/app/screens/select_version_screen.py index c9d3ea18..efb4f460 100644 --- a/src/app/screens/select_version_screen.py +++ b/src/app/screens/select_version_screen.py @@ -59,20 +59,17 @@ def fetch_releases(self): buttons = [ ( "select_version_latest", - f"[font=terminus]{selector.releases[0]}[/font]", + selector.releases[0], ), ( "select_version_beta", - f"[font=terminus]{selector.releases[-1]}[/font]", + selector.releases[-1], ), ( "select_version_old", - f"[font={SelectVersionScreen.get_font_name()}]{old}[/font]", - ), - ( - "select_version_back", - f"[font={SelectVersionScreen.get_font_name()}]{back}[/font]", + old, ), + ("select_version_back", back), ] # Push other releases to SelectOldVersionScreen @@ -173,23 +170,11 @@ def update(self, *args, **kwargs): self.locale = value if "select_version_old" in self.ids: old = self.translate("Old versions") - self.ids["select_version_old"].text = "".join( - [ - f"[font={SelectVersionScreen.get_font_name()}]", - old, - "[/font]", - ] - ) + self.ids["select_version_old"].text = old if "select_version_back" in self.ids: back = self.translate("Back") - self.ids["select_version_back"].text = "".join( - [ - f"[font={SelectVersionScreen.get_font_name()}]", - back, - "[/font]", - ] - ) + self.ids["select_version_back"].text = back else: self.redirect_error(f"Invalid value for key '{key}': '{value}'") diff --git a/src/app/screens/unzip_stable_screen.py b/src/app/screens/unzip_stable_screen.py index 76353f35..9e598ca0 100644 --- a/src/app/screens/unzip_stable_screen.py +++ b/src/app/screens/unzip_stable_screen.py @@ -45,10 +45,6 @@ class UnzipStableScreen(BaseScreen): def __init__(self, **kwargs): super().__init__(wid="unzip_stable_screen", name="UnzipStableScreen", **kwargs) self.make_grid(wid=f"{self.id}_grid", rows=2) - # with self.canvas.before: - # Color(0, 0, 0, 1) - # Rectangle(size=(Window.width, Window.height)) - self.assets_dir = UnzipStableScreen.get_destdir_assets() self.device = None self.version = None @@ -117,7 +113,6 @@ def _press(instance): file_path = os.path.join(rel_path, "kboot.kfpkg") self.ids[instance.id].text = "".join( [ - f"[font={UnzipStableScreen.get_font_name()}]", f"[size={size[0]}sp]", extract_msg, "[/size]", @@ -127,7 +122,6 @@ def _press(instance): file_path, "[/color]", "[/size]", - "[/font]", ] ) self.set_background(wid=instance.id, rgba=(0.25, 0.25, 0.25, 1)) @@ -166,7 +160,6 @@ def _release(instance): p = os.path.join(rel_path, "kboot.kfpkg") self.ids[instance.id].text = "".join( [ - f"[font={UnzipStableScreen.get_font_name()}]", f"[size={size[0]}sp]", extracted_msg, "[/size]", @@ -176,7 +169,6 @@ def _release(instance): p, "[/color]", "[/size]", - "[/font]", ] ) @@ -192,7 +184,6 @@ def _release(instance): root_widget=f"{self.id}_grid", text="".join( [ - f"[font={UnzipStableScreen.get_font_name()}]", f"[size={size[0]}sp]", flash_msg, "[/size]", @@ -202,7 +193,6 @@ def _release(instance): p, "[/color]", "[/size]", - "[/font]", ] ), markup=True, @@ -230,7 +220,6 @@ def _press(instance): file_path = os.path.join(rel_path, "firmware.bin") self.ids[instance.id].text = "".join( [ - f"[font={UnzipStableScreen.get_font_name()}]", f"[size={size[0]}sp]", extract_msg, "[/size]", @@ -240,7 +229,6 @@ def _press(instance): file_path, "[/color]", "[/size]", - "[/font]", ] ) self.set_background(wid=instance.id, rgba=(0.25, 0.25, 0.25, 1)) @@ -268,7 +256,6 @@ def _release(instance): p = os.path.join(rel_path, "firmware.bin") self.ids[instance.id].text = "".join( [ - f"[font={UnzipStableScreen.get_font_name()}]", f"[size={size[0]}sp]", extracted_msg, "[/size]", @@ -278,7 +265,6 @@ def _release(instance): p, "[/color]", "[/size]", - "[/font]", ] ) @@ -294,7 +280,6 @@ def _release(instance): root_widget=f"{self.id}_grid", text="".join( [ - f"[font={UnzipStableScreen.get_font_name()}]", f"[size={size[0]}sp]", "[color=#333333]", airgap_msg, @@ -306,7 +291,6 @@ def _release(instance): p, "[/color]", "[/size]", - "[/font]", ] ), markup=True, diff --git a/src/app/screens/verify_stable_zip_screen.py b/src/app/screens/verify_stable_zip_screen.py index 3273551f..d8c5c119 100644 --- a/src/app/screens/verify_stable_zip_screen.py +++ b/src/app/screens/verify_stable_zip_screen.py @@ -128,13 +128,11 @@ def on_pre_enter(self): warning = Label( text="".join( [ - f"[font={VerifyStableZipScreen.get_font_name()}]", f"[size={self.SIZE_MM}sp]", "[color=#efcc00]", verifying_msg, "[/color]", "[/size]", - "[/font]", ] ), markup=True, @@ -181,8 +179,6 @@ def verify_sha256(self, assets_dir: str, version: str) -> str: filepath = os.path.join(assets_dir, f"krux-{version}.zip") integrity_msg = self.translate("Integrity verification") - success_msg = self.translate("SUCCESS") - failed_msg = self.translate("FAILED") computed_msg = self.translate("computed hash from") provided_msg = self.translate("provided hash from") hash_color = "" @@ -211,41 +207,33 @@ def verify_sha256(self, assets_dir: str, version: str) -> str: if checksum: hash_color = "#00FF00" - hash_msg = success_msg + hash_msg = self.translate("SUCCESS") else: hash_color = "FF0000" - hash_msg = failed_message + hash_msg = self.translate("FAILED") return "".join( [ - f"[font={VerifyStableZipScreen.get_font_name()}]" - f"[size={size[0]}sp][u]{integrity_msg.upper()}[/u]: [b][color=#00ff00]{hash_msg}[/color][/b][/size]", - "[/font]", + f"[size={size[0]}sp]", + f"[u]{integrity_msg.upper()}[/u]: ", + f"[b][color={hash_color}]{hash_msg}[/color][/b]", + "[/size]", "\n", "\n", - f"[font={VerifyStableZipScreen.get_font_name()}]", - f"[size={size[1]}sp][b]{computed_msg} [color=#777777]{filepath}[/color][/b][/size]", - "[/font]", + f"[size={size[1]}sp]", + f"[b]{computed_msg} [color=#777777]{filepath}[/color][/b]", + "[/size]", "\n", - "[font=terminus]", f"[size={size[1]}sp]{sha_0}[/size]", - "[/font]", "\n", "\n", - f"[font={VerifyStableZipScreen.get_font_name()}]", - f"[size={size[1]}sp][b]{provided_msg} [color=#777777]{filepath}.sha256.txt[/color][/b][/size]", - "[/font]", + f"[size={size[1]}sp]", + f"[b]{provided_msg} [color=#777777]{filepath}.sha256.txt[/color][/b]", + "[/size]", "\n", - "[font=terminus]", f"[size={size[1]}sp]{sha_1}[/size]", - "[/font]", "\n", "\n", - "[/font]", - "\n", - f"[font={VerifyStableZipScreen.get_font_name()}]", - "[/font]", - "\n", "\n", ] ) @@ -293,19 +281,18 @@ def verify_signature(self, assets_dir: str, version: str) -> bool | str: return "".join( [ - f"[font={VerifyStableZipScreen.get_font_name()}]", - f"[size={size[0]}sp][u]{authenticity_msg.upper()}[/u]: [b][color={sig_color}]{res_msg} {sig_msg}[/color][/b][/size]", - "[/font]", + f"[size={size[0]}sp]", + f"[u]{authenticity_msg.upper()}[/u]: ", + f"[b][color={sig_color}]{res_msg} {sig_msg}[/color][/b]", + "[/size]", "\n", "\n", "\n", - f"[font={VerifyStableZipScreen.get_font_name()}]", f"[size={size[1]}sp]{installed_msg}[/size]", "\n" f"[size={size[1]}sp]{check_msg}:[/size]", - "[/font]", "\n", "\n", - "[font=terminus]" f"[size={size[1]}sp]", + f"[size={size[1]}sp]", "[b]", f"openssl sha256< [color=#777777]{filepath}[/color] -binary | \\", "\n" @@ -314,20 +301,16 @@ def verify_signature(self, assets_dir: str, version: str) -> bool | str: f"-sigfile [color=#777777]{filepath}.sig[/color]", "[/size]", "[/b]", - "[/font]", "\n", "\n", - f"[font={VerifyStableZipScreen.get_font_name()}]" f"[size={size[1]}sp][b][color=#{sig_color}]{res_msg} {sig_msg}[/b][/color][/size]", - "[/font]", "\n", "\n", - f"[font={VerifyStableZipScreen.get_font_name()}]" f"[size={size[0]}sp]", + f"[size={size[0]}sp]", f"[ref=UnzipStableScreen][color=#00ff00]{proceed}[/ref][/color]", " ", f"[ref=MainScreen][color=#ff0000]{back}[/ref][/color]", "[/b]", "[/size]", - "[/font]", ] ) diff --git a/src/app/screens/warning_already_downloaded_screen.py b/src/app/screens/warning_already_downloaded_screen.py index 13d66555..5cf0e44d 100644 --- a/src/app/screens/warning_already_downloaded_screen.py +++ b/src/app/screens/warning_already_downloaded_screen.py @@ -132,30 +132,20 @@ def update(self, *args, **kwargs): self.ids[f"{self.id}_label"].text = "".join( [ - f"[font={WarningAlreadyDownloadedScreen.get_font_name()}]" f"[size={size[0]}sp][b]{warning_msg}[/b][/size]", - "[/font]", "\n", - "\n" - f"[font=terminus]" f"[size={size[2]}sp]* krux-{value}.zip[/size]", "\n", - "\n", f"[size={size[2]}sp]* krux-{value}.zip.sha256.txt[/size]", "\n", - "\n", f"[size={size[2]}sp]* krux-{value}.zip.sig[/size]", "\n", - "\n", f"[size={size[2]}sp]* selfcustody.pem[/size]", "\n", "\n", - "\n", - f"[font={WarningAlreadyDownloadedScreen.get_font_name()}]" f"[size={size[1]}sp]{ask_proceed}[/size]", "\n", "\n", - "\n", f"[size={size[0]}]" f"[color=#00ff00]", "[ref=DownloadStableZipScreen]", download_msg, @@ -168,7 +158,6 @@ def update(self, *args, **kwargs): "[/ref]", "[/color]", "[/size]", - "[/font]", ] ) diff --git a/src/app/screens/warning_beta_screen.py b/src/app/screens/warning_beta_screen.py index 7039e961..dc779125 100644 --- a/src/app/screens/warning_beta_screen.py +++ b/src/app/screens/warning_beta_screen.py @@ -48,7 +48,6 @@ def __init__(self, **kwargs): text = "".join( [ - f"[font={WarningBetaScreen.get_font_name()}]", f"[size={self.SIZE_MM}sp][color=#efcc00][b]{warning}[/b][/color][/size]", "\n", "\n", @@ -62,7 +61,6 @@ def __init__(self, **kwargs): f"[size={self.SIZE_MM}sp]", f"[color=#00ff00]{proceed}[/color] [color=#ff0000]{back}[/color]" "[/size]", - "[/font]", ] ) @@ -118,7 +116,6 @@ def update(self, *args, **kwargs): text = "".join( [ - f"[font={WarningBetaScreen.get_font_name()}]", f"[size={self.SIZE_MM}sp][color=#efcc00][b]{warning}[/b][/color][/size]", "\n", "\n", @@ -132,7 +129,6 @@ def update(self, *args, **kwargs): f"[size={self.SIZE_MM}sp]", f"[color=#00ff00]{proceed}[/color] [color=#ff0000]{back}[/color]", "[/size]", - "[/font]", ] ) diff --git a/src/app/screens/warning_wipe_screen.py b/src/app/screens/warning_wipe_screen.py index 2af37e34..20f42651 100644 --- a/src/app/screens/warning_wipe_screen.py +++ b/src/app/screens/warning_wipe_screen.py @@ -157,7 +157,6 @@ def make_label_text(self): return "".join( [ - f"[font={WarningWipeScreen.get_font_name()}]", "[color=#EFCC00]", f"[size={sizes[0]}]", full_wipe, @@ -178,8 +177,6 @@ def make_label_text(self): f"[size={sizes[0]}]" f"[color=#00FF00][ref=WipeScreen]{proceed}[/ref][/color]", " ", - f"[color=#FF0000][ref=MainScreen]{back}[/ref][/color]" - "[/size]" - "[/font]", + f"[color=#FF0000][ref=MainScreen]{back}[/ref][/color]" "[/size]", ] ) diff --git a/src/app/screens/wipe_screen.py b/src/app/screens/wipe_screen.py index af645c7e..42ce2be1 100644 --- a/src/app/screens/wipe_screen.py +++ b/src/app/screens/wipe_screen.py @@ -111,27 +111,14 @@ def on_trigger_callback(dt): else: size = self.SIZE_M - self.ids[f"{self.id}_progress"].text = "\n".join( + self.ids[f"{self.id}_progress"].text = "".join( [ - "".join( - [ - f"[font={WipeScreen.get_font_name()}]", - f"[size={size}sp][b]{done}![/b][/size]", - "[/font]", - ] - ), - "", - "", - "".join( - [ - f"[font={WipeScreen.get_font_name()}]", - f"[size={size}sp]", - f"[color=#00FF00][ref=Back]{back}[/ref][/color]", - " ", - f"[color=#EFCC00][ref=Quit]{quit}[/ref][/color]", - "[/font]", - ] - ), + f"[size={size}sp][b]{done}![/b][/size]", + "\n", + f"[size={size}sp]", + f"[color=#00FF00][ref=Back]{back}[/ref][/color]", + " ", + f"[color=#EFCC00][ref=Quit]{quit}[/ref][/color]", ] ) self.ids[f"{self.id}_progress"].bind(on_ref_press=on_ref_press) @@ -177,13 +164,7 @@ def on_enter(self): else: sizes = [self.SIZE_MM, self.SIZE_MP] - self.ids[f"{self.id}_progress"].text = "".join( - [ - f"[font={WipeScreen.get_font_name()}]", - f"[size={sizes[0]}sp][b]{please}[/b]", - "[/font]", - ] - ) + self.ids[f"{self.id}_progress"].text = f"[size={sizes[0]}sp][b]{please}[/b]" self.output = [] self.progress = "" self.is_done = False @@ -208,30 +189,24 @@ def hook(err): self.ids[f"{self.id}_progress"].text = "".join( [ - "[font=terminus]", f"[size={sizes[0]}]", f"[color=#FF0000]{"Wipe failed" if not self.success else done}[/color]", "[/size]", - "[/font]", "\n", "\n", - f"[font={WipeScreen.get_font_name()}]" f"[size={sizes[0]}]" f"[color=#00FF00][ref=Back]{back}[/ref][/color]", " ", f"[color=#EFCC00][ref=Quit]{quit}[/ref][/color]", "[/size]", - "[/font]", ] ) self.ids[f"{self.id}_info"].text = "".join( [ - "[font=terminus]", f"[size={sizes[1]}]", msg, "[/size]", - "[/font]", ] )