diff --git a/case/test_dde_1271207.py b/case/test_dde_1271207.py new file mode 100644 index 0000000000000000000000000000000000000000..8873027d377942a4283bdda72bfd5d272e64083a --- /dev/null +++ b/case/test_dde_1271207.py @@ -0,0 +1,44 @@ +from apps.dde_autotest_euler.case.base_case import BaseCase +from apps.dde_autotest_euler.method.dde_method import DdeMethod +from apps.dde_autotest_euler.method.vender.deepin_font_manager_method import DeepinFontManagerMethod +from apps.dde_autotest_euler.method.vender.dde_file_manager_method import DdeFileManagerMethod +from src import sleep + + +class TestFontForbiddenCase(BaseCase): + + def test_dde_1271207_1(self): + """字体管理器-启用禁用字体""" + DdeMethod().open_software_by_launcher("zitiguanli") + sleep(6) + font = DeepinFontManagerMethod() + font.method_click_menu_by_image() + font.method_click_add_font_by_ocr() + font.method_search_fonts("dde_autotest_euler/method/static_res/fonts/NotoSansLinearB") + font.method_import_one_fonts_by_ocr("NotoSansLinearB-Regular") + sleep(3) + + font.method_click_activated_by_ocr() + sleep(2) + DdeMethod().search_font_in_font_manager("Noto Sans Linear") + font.method_forbidden_font_by_ocr("Noto Sans Linear B-Regular") + sleep(2) + + self.assert_ocr_not_exist("Noto Sans Linear B-Regular") + + font.method_click_user_fonts_by_ocr() + sleep(2) + font.method_active_font_by_ocr("Noto Sans Linear B-Regular") + + font.method_click_activated_by_ocr() + sleep(2) + + self.assert_ocr_exist("Noto Sans Linear B-Regular") + + font.method_click_font_by_ocr("Noto Sans Linear B-Regular") + DeepinFontManagerMethod().method_del_font() + # sleep(3) + + def teardown_method(self): + """关闭字体管理器""" + DdeMethod().kill_process("deepin-font-manager") diff --git a/case/test_dde_1271211.py b/case/test_dde_1271211.py index 5a39445808d9294ffdd34a4fbc7bcfdcae6712cc..3faba6a1d080a4fe204c4d109c9a04a956647889 100644 --- a/case/test_dde_1271211.py +++ b/case/test_dde_1271211.py @@ -11,10 +11,10 @@ class TestFontAddCase(BaseCase): """字体管理器-导入一个字体""" DdeMethod().open_software_by_launcher("zitiguanli") sleep(6) - DeepinFontManagerMethod().method_click_menu() - DeepinFontManagerMethod().method_click_add_font() + DeepinFontManagerMethod().method_click_menu_by_image() + DeepinFontManagerMethod().method_click_add_font_by_ocr() DeepinFontManagerMethod().method_search_fonts("dde_autotest_euler/method/static_res/fonts/fangzheng") - DeepinFontManagerMethod().method_import_one_fonts() + DeepinFontManagerMethod().method_import_one_fonts_by_ocr() self.assert_ocr_exist("吕建德字体") DeepinFontManagerMethod().method_del_font() sleep(3) @@ -23,10 +23,10 @@ class TestFontAddCase(BaseCase): """字体管理器-导入多个字体""" DdeMethod().open_software_by_launcher("zitiguanli") sleep(6) - DeepinFontManagerMethod().method_click_menu() - DeepinFontManagerMethod().method_click_add_font() + DeepinFontManagerMethod().method_click_menu_by_image() + DeepinFontManagerMethod().method_click_add_font_by_ocr() DeepinFontManagerMethod().method_search_fonts("dde_autotest_euler/method/static_res/fonts/fangzheng") - DeepinFontManagerMethod().method_import_many_fonts() + DeepinFontManagerMethod().method_import_many_fonts_by_ocr() self.assert_ocr_exist("吕建德字体") self.assert_ocr_exist("真广标简体") DeepinFontManagerMethod().method_del_font() diff --git a/dde.csv b/dde.csv index bf16d77ec7bf984fc4bef8e9f233c850d8239c5f..398b2d69e3038df499608b4bed63d9bcf4712bd8 100644 --- a/dde.csv +++ b/dde.csv @@ -57,3 +57,4 @@ 1271229,,, 1271217,,, 1271211,,, +1271207,,, diff --git a/method/vender/deepin_font_manager_method.py b/method/vender/deepin_font_manager_method.py index 2b47f5c938aeaa5858626d8255fa1b46386a7fcb..0d98c0be0bc132690a2a3a9d86907ce11bce8e42 100644 --- a/method/vender/deepin_font_manager_method.py +++ b/method/vender/deepin_font_manager_method.py @@ -11,19 +11,39 @@ class DeepinFontManagerMethod(BaseMethod): """在字体管理器中通过元素点击""" self.dog.element_click(path) + def method_click_font_by_ocr(self, font_name): + self.click_by_ocr(font_name) + def method_click_search_box_attr(self): """在字体管理器中点击搜索框""" self.method_click_by_attr("DSearchEditIconButton") - def method_click_menu(self): + def method_click_menu_by_image(self): """字体管理其中点击菜单""" self.click_by_img("dde_fonts_menu_icon.png") - # self.method_click_by_attr("添加字体") - def method_click_add_font(self): + def method_click_add_font_by_ocr(self): """菜单添加字体""" self.click(*self.ocr("添加字体")) + def method_click_activated_by_ocr(self): + """点击已激活""" + self.click(*self.ocr("已激活")) + + def method_click_user_fonts_by_ocr(self): + """点击用户字体""" + self.click(*self.ocr("用户字体")) + + def method_forbidden_font_by_ocr(self, font_name): + """禁用字体""" + self.right_click(*self.ocr(font_name)) + self.right_click(*self.ocr("禁用字体")) + + def method_active_font_by_ocr(self, font_name): + """启用字体""" + self.right_click(*self.ocr(font_name)) + self.right_click(*self.ocr("启用字体")) + def method_search_fonts(self, fonts_path): """字体文件路径查找字体""" self.click_by_img("dde_fonts_search_icon.png") @@ -32,29 +52,19 @@ class DeepinFontManagerMethod(BaseMethod): Src.enter() sleep(2) - def method_import_one_fonts(self): + def method_import_one_fonts_by_ocr(self, font_name="fangzhenglvjiandexingkai"): """选择一个字体添加""" - self.click_by_ocr("fangzhenglvjiandexingkai") + self.click_by_ocr(font_name) self.click(*self.ocr("打开")) - def method_import_many_fonts(self): + def method_import_many_fonts_by_ocr(self): """添加多个字体""" self.click_by_ocr("fangzhenglvjiandexingkai") Src.ctrl_a() self.click(*self.ocr("打开")) - def search_font_in_font_manager(self, font_name): - """在字体管理器中搜索字体""" - self.deepin_font_manager.method_click_search_box_attr() - self.input_message(font_name) - sleep(3) - self.enter() - - def method_del_font(self, font_name=None): + def method_del_font(self): """删除字体""" - if font_name: - self.search_font_in_font_manager(font_name) - self.click_by_ocr(font_name) Src.delete() self.click_by_img("dde_fonts_delete_btn_icon.png")