]> git.openstreetmap.org Git - osqa.git/commitdiff
adding some Selenium tests to the default skin
authorjordan <jordan@0cfe37f9-358a-4d5e-be75-b63607b5c754>
Fri, 29 Apr 2011 13:37:50 +0000 (13:37 +0000)
committerjordan <jordan@0cfe37f9-358a-4d5e-be75-b63607b5c754>
Fri, 29 Apr 2011 13:37:50 +0000 (13:37 +0000)
git-svn-id: http://svn.osqa.net/svnroot/osqa/trunk@1009 0cfe37f9-358a-4d5e-be75-b63607b5c754

forum/skins/default/tests/__init__.py [new file with mode: 0644]
forum/skins/default/tests/faq_page.py [new file with mode: 0644]
forum/skins/default/tests/registration_login.py [new file with mode: 0644]
forum/skins/default/tests/tags_page.py [new file with mode: 0644]
forum/skins/default/tests/users_page.py [new file with mode: 0644]

diff --git a/forum/skins/default/tests/__init__.py b/forum/skins/default/tests/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/forum/skins/default/tests/faq_page.py b/forum/skins/default/tests/faq_page.py
new file mode 100644 (file)
index 0000000..573ed4e
--- /dev/null
@@ -0,0 +1,21 @@
+from selenium import selenium
+import unittest, time, re
+
+class faq_page(unittest.TestCase):
+    def setUp(self):
+        self.verificationErrors = []
+        self.selenium = selenium("localhost", 4444, "*chrome", "http://127.0.0.1:8000/")
+        self.selenium.start()
+    
+    def test_faq_page(self):
+        sel = self.selenium
+        sel.open("/faq/")
+        try: self.failUnless(sel.is_text_present("FAQ"))
+        except AssertionError, e: self.verificationErrors.append(str(e))
+    
+    def tearDown(self):
+        self.selenium.stop()
+        self.assertEqual([], self.verificationErrors)
+
+if __name__ == "__main__":
+    unittest.main()
diff --git a/forum/skins/default/tests/registration_login.py b/forum/skins/default/tests/registration_login.py
new file mode 100644 (file)
index 0000000..181d6e1
--- /dev/null
@@ -0,0 +1,43 @@
+from selenium import selenium
+import unittest, time, re
+import random
+
+class registration_login(unittest.TestCase):
+    def setUp(self):
+        rand_number = random.randrange(1, 10000)
+        self.verificationErrors = []
+        self.account_name = 'TestAccount%d' % rand_number
+        self.account_email = 'test_account_%d@example.com' % rand_number
+        self.selenium = selenium("localhost", 4444, "*chrome", "http://127.0.0.1:8000/")
+        self.selenium.start()
+    
+    def test_registration_login(self):
+        sel = self.selenium
+        sel.open("/account/signin/")
+        sel.click("link=Create account")
+        sel.wait_for_page_to_load("30000")
+        sel.type("id_username", "%s" % self.account_name)
+        sel.type("id_email", "%s" % self.account_email)
+        sel.type("id_password1", "test")
+        sel.type("id_password2", "test")
+        sel.click("bnewaccount")
+        sel.wait_for_page_to_load("30000")
+        sel.click("link=logout")
+        sel.wait_for_page_to_load("30000")
+        sel.click("btLogout")
+        sel.wait_for_page_to_load("30000")
+        sel.click("link=login")
+        sel.wait_for_page_to_load("30000")
+        sel.type("id_username", "%s" % self.account_name)
+        sel.type("id_password", "test")
+        sel.click("blogin")
+        sel.wait_for_page_to_load("30000")
+        try: self.failUnless(sel.is_element_present("link=%s" % self.account_name))
+        except AssertionError, e: self.verificationErrors.append(str(e))
+    
+    def tearDown(self):
+        self.selenium.stop()
+        self.assertEqual([], self.verificationErrors)
+
+if __name__ == "__main__":
+    unittest.main()
diff --git a/forum/skins/default/tests/tags_page.py b/forum/skins/default/tests/tags_page.py
new file mode 100644 (file)
index 0000000..38e3550
--- /dev/null
@@ -0,0 +1,27 @@
+from selenium import selenium
+import unittest, time, re
+
+class tags_page(unittest.TestCase):
+    def setUp(self):
+        self.verificationErrors = []
+        self.selenium = selenium("localhost", 4444, "*chrome", "http://127.0.0.1:8000/")
+        self.selenium.start()
+    
+    def test_tags_page(self):
+        sel = self.selenium
+        sel.open("/")
+        sel.click("nav_tags")
+        sel.wait_for_page_to_load("30000")
+        try: self.failUnless(sel.is_text_present("Tag list"))
+        except AssertionError, e: self.verificationErrors.append(str(e))
+        try: self.failUnless(sel.is_text_present("by name"))
+        except AssertionError, e: self.verificationErrors.append(str(e))
+        try: self.failUnless(sel.is_text_present("by popularity"))
+        except AssertionError, e: self.verificationErrors.append(str(e))
+    
+    def tearDown(self):
+        self.selenium.stop()
+        self.assertEqual([], self.verificationErrors)
+
+if __name__ == "__main__":
+    unittest.main()
diff --git a/forum/skins/default/tests/users_page.py b/forum/skins/default/tests/users_page.py
new file mode 100644 (file)
index 0000000..b4ff345
--- /dev/null
@@ -0,0 +1,33 @@
+from selenium import selenium
+import unittest, time, re
+
+class users_page(unittest.TestCase):
+    def setUp(self):
+        self.verificationErrors = []
+        self.selenium = selenium("localhost", 4444, "*chrome", "http://127.0.0.1:8000/")
+        self.selenium.start()
+    
+    def test_users_page(self):
+        sel = self.selenium
+        sel.open("/")
+        sel.click("nav_users")
+        sel.wait_for_page_to_load("30000")
+        try: self.failUnless(sel.is_text_present("Users"))
+        except AssertionError, e: self.verificationErrors.append(str(e))
+        sel.click("nav_users")
+        sel.wait_for_page_to_load("30000")
+        try: self.failUnless(sel.is_text_present("karma"))
+        except AssertionError, e: self.verificationErrors.append(str(e))
+        try: self.failUnless(sel.is_text_present("recent"))
+        except AssertionError, e: self.verificationErrors.append(str(e))
+        try: self.failUnless(sel.is_text_present("oldest"))
+        except AssertionError, e: self.verificationErrors.append(str(e))
+        try: self.failUnless(sel.is_text_present("by username"))
+        except AssertionError, e: self.verificationErrors.append(str(e))
+    
+    def tearDown(self):
+        self.selenium.stop()
+        self.assertEqual([], self.verificationErrors)
+
+if __name__ == "__main__":
+    unittest.main()