@@ -65,7 +65,9 @@ def test_create_page_again(page: Page, login):
6565 create .click ()
6666 page .wait_for_url ("/edit/en/Main%20Page" )
6767
68- page .locator ("[name=content]" ).fill ("My Third Edit\n \n [[Category:en/MyPages]]\n {{en/Summary}}\n {{Page:en/Empty}}" )
68+ page .locator ("[name=content]" ).fill (
69+ "[[Translation:en/Main Page]]\n My Third Edit\n \n [[Category:en/MyPages]]\n {{en/Summary}}\n {{Page:en/Empty}}"
70+ )
6971 with page .expect_navigation ():
7072 page .locator ("[name=save]" ).click ()
7173 page .wait_for_url ("/en/Main%20Page" )
@@ -135,12 +137,12 @@ def test_rename_page_invalid_language(page: Page, login):
135137 edit .click ()
136138 page .wait_for_url ("/edit/en/Main%20Page" )
137139
138- page .locator ("[name=page]" ).fill ("de /Main Page" )
140+ page .locator ("[name=page]" ).fill ("zz /Main Page" )
139141 with page .expect_navigation ():
140142 page .locator ("[name=save]" ).click ()
141143 page .wait_for_url ("/edit/en/Main%20Page" )
142144
143- expect (page .locator ('text=Page name "de /Main Page" is in language "de " that does not exist.' )).to_be_visible ()
145+ expect (page .locator ('text=Page name "zz /Main Page" is in language "zz " that does not exist.' )).to_be_visible ()
144146
145147
146148def test_rename_page_invalid_casing (page : Page , login ):
@@ -205,3 +207,40 @@ def test_edit_page_invalid_language(page: Page, login):
205207 """View a page with an invalid language."""
206208 page .goto ("http://localhost:8080/test/invalid" )
207209 expect (page .locator ('text=Page name "test/invalid" is in language "test" that does not exist.' )).to_be_visible ()
210+
211+
212+ def test_create_translation (page : Page , login ):
213+ """Create a translation for the main page."""
214+ page .goto ("http://localhost:8080/de/" )
215+
216+ create = page .locator ("text=Create Page" )
217+ expect (create ).to_be_visible ()
218+ with page .expect_navigation ():
219+ create .click ()
220+ page .wait_for_url ("/edit/de/Main%20Page" )
221+
222+ page .locator ("[name=content]" ).fill (
223+ "[[Translation:en/Main Page]]\n Mein dritter Edit\n \n [[Category:de/MyPages]]\n {{de/Summary}}\n {{Page:de/Empty}}"
224+ )
225+ with page .expect_navigation ():
226+ page .locator ("[name=save]" ).click ()
227+ page .wait_for_url ("/de/Main%20Page" )
228+
229+ expect (page ).to_have_title ("Unnamed | Unnamed's Wiki" )
230+ expect (page .locator ("text=Mein dritter Edi" )).to_be_visible ()
231+ expect (page .locator ("text=Page:de/Empty" )).to_be_visible ()
232+
233+
234+ def test_language_bar (page : Page ):
235+ """Check that the language bar is working."""
236+ page .goto ("http://localhost:8080/de/" )
237+
238+ expect (page .locator ('strong:has-text("de")' )).to_be_visible ()
239+ en = page .locator ("#language-bar >> text=en" )
240+ expect (en ).to_be_visible ()
241+ with page .expect_navigation ():
242+ en .click ()
243+ page .wait_for_url ("/en/" )
244+
245+ expect (page .locator ('strong:has-text("en")' )).to_be_visible ()
246+ expect (page .locator ("#language-bar >> text=de" )).to_be_visible ()
0 commit comments