Skip to content

Commit 36249a2

Browse files
authored
Merge pull request #666 from seleniumbase/get-locale-code-method
Add a method for getting the browser's Locale Code
2 parents b3e47b3 + 8b956ba commit 36249a2

File tree

16 files changed

+81
-2
lines changed

16 files changed

+81
-2
lines changed

docs/requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
livereload==2.6.2;python_version>="3.6"
1+
livereload==2.6.3;python_version>="3.6"
22
pymdown-extensions==8.0
33
mkdocs==1.1.2
44
mkdocs-material==5.5.7

examples/locale_code_test.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
from seleniumbase import BaseCase
2+
3+
4+
class LocaleTestClass(BaseCase):
5+
6+
def test_locale_code(self):
7+
self.open("https://localeplanet.com/support/browser.html")
8+
locale_code = self.get_locale_code()
9+
expected_text = "navigator.language: %s" % locale_code
10+
self.demo_mode = True # Display test actions
11+
self.assert_text(expected_text, "pre")

examples/test_get_locale_code.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
from seleniumbase import BaseCase
2+
3+
4+
class LocaleTestClass(BaseCase):
5+
6+
def test_get_locale_code(self):
7+
self.open("data:,")
8+
locale_code = self.get_locale_code()
9+
message = '\nLocale Code = "%s"' % locale_code
10+
print(message)
11+
self.set_messenger_theme(
12+
theme="flat", location="top_center")
13+
self.post_message(message, duration=4)

help_docs/method_summary.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ self.get_title()
4545

4646
self.get_user_agent()
4747

48+
self.get_locale_code()
49+
4850
self.go_back()
4951

5052
self.go_forward()

seleniumbase/fixtures/base_case.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -476,6 +476,11 @@ def get_user_agent(self):
476476
user_agent = self.driver.execute_script("return navigator.userAgent;")
477477
return user_agent
478478

479+
def get_locale_code(self):
480+
locale_code = self.driver.execute_script(
481+
"return navigator.language || navigator.languages[0];")
482+
return locale_code
483+
479484
def go_back(self):
480485
self.__last_page_load_url = None
481486
if self.browser != "safari":

seleniumbase/translate/chinese.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -532,6 +532,10 @@ def 获取用户代理(self, *args, **kwargs):
532532
# get_user_agent()
533533
return self.get_user_agent(*args, **kwargs)
534534

535+
def 获取语言代码(self, *args, **kwargs):
536+
# get_locale_code()
537+
return self.get_locale_code(*args, **kwargs)
538+
535539

536540
class MasterQA_中文(MasterQA, 硒测试用例):
537541

seleniumbase/translate/dutch.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -532,6 +532,10 @@ def gebruikersagent_ophalen(self, *args, **kwargs):
532532
# get_user_agent()
533533
return self.get_user_agent(*args, **kwargs)
534534

535+
def taalcode_ophalen(self, *args, **kwargs):
536+
# get_locale_code()
537+
return self.get_locale_code(*args, **kwargs)
538+
535539

536540
class MasterQA_Nederlands(MasterQA, Testgeval):
537541

seleniumbase/translate/french.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -532,6 +532,10 @@ def obtenir_agent_utilisateur(self, *args, **kwargs):
532532
# get_user_agent()
533533
return self.get_user_agent(*args, **kwargs)
534534

535+
def obtenir_code_de_langue(self, *args, **kwargs):
536+
# get_locale_code()
537+
return self.get_locale_code(*args, **kwargs)
538+
535539

536540
class MasterQA_Français(MasterQA, CasDeBase):
537541

seleniumbase/translate/italian.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -532,6 +532,10 @@ def ottenere_agente_utente(self, *args, **kwargs):
532532
# get_user_agent()
533533
return self.get_user_agent(*args, **kwargs)
534534

535+
def ottenere_codice_lingua(self, *args, **kwargs):
536+
# get_locale_code()
537+
return self.get_locale_code(*args, **kwargs)
538+
535539

536540
class MasterQA_Italiano(MasterQA, CasoDiProva):
537541

seleniumbase/translate/japanese.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -532,6 +532,10 @@ def ユーザーエージェントの取得(self, *args, **kwargs):
532532
# get_user_agent()
533533
return self.get_user_agent(*args, **kwargs)
534534

535+
def 言語コードを取得する(self, *args, **kwargs):
536+
# get_locale_code()
537+
return self.get_locale_code(*args, **kwargs)
538+
535539

536540
class MasterQA_日本語(MasterQA, セレニウムテストケース):
537541

0 commit comments

Comments
 (0)