# -*- coding: utf-8 -*- import dogtail.tc from dogtail import tree from dogtail.procedural import * from dogtail.utils import screenshot from dogtail.predicate import GenericPredicate import os import signal from lliurextest import core class GeditTest(core.BaseTest): def __init__(self,rel_path): core.BaseTest.__init__(self,rel_path) def test_lang(self,lang,language): error = False if lang != os.environ['LANG']: error = True if language != os.environ['LANGUAGE']: error = True if error: status = "wrong" result = "WRONG" else: status = "pass" result = "OK" self.write_result('LANG='+lang+ " LANGUAGE=" + language,result,status) return True def test_language_valencian(self): gedit = tree.root.application('gedit') list_tool_bar = gedit.findChildren(GenericPredicate(roleName='menu')) toolbar = '' for x in list_tool_bar: if x.name == 'Fitxer': toolbar = x break list_items = toolbar.findChildren(GenericPredicate(roleName='menu item')) black_list_items = ['surt'] white_list_items = ['ix','anomena i guarda...'] black_found = [] for item in list_items: lname = item.name.lower() if lname in white_list_items: white_list_items.remove(item.name.lower()) if lname in black_list_items: black_found.append(lname) if len(white_list_items) > 0 or len(black_found) > 0: status = "wrong" result = "WRONG" else: status = "pass" result = "OK" self.write_result('Gedit in Valencian',result,status) return True import time x = GeditTest(time.strftime("%d_%m_%Y:%H:%M:%S")) if not x.run('gedit'): x.close() x.run('gedit') x.test_lang('ca_ES.UTF-8@valencia','ca_ES@valencia:en') x.test_language_valencian() x.close()