diff options
author | Aleksander Machniak <alec@alec.pl> | 2013-01-30 11:50:52 +0100 |
---|---|---|
committer | Aleksander Machniak <alec@alec.pl> | 2013-01-30 11:50:52 +0100 |
commit | a2a1f8d7ed2911c2a4bab05ae599a80ed690c9c4 (patch) | |
tree | 7d672ba4833b53c0d24e51985f15a81fa8d1b8b7 /tests/Selenium/Mail | |
parent | cbaf7a2fb001fb52c32c1d30e46d52d29b420350 (diff) |
Added automated in-browser tests (PHPUnit + Selenium Web Driver)
Diffstat (limited to 'tests/Selenium/Mail')
-rw-r--r-- | tests/Selenium/Mail/CheckRecent.php | 14 | ||||
-rw-r--r-- | tests/Selenium/Mail/Compose.php | 25 | ||||
-rw-r--r-- | tests/Selenium/Mail/Getunread.php | 13 | ||||
-rw-r--r-- | tests/Selenium/Mail/List.php | 25 | ||||
-rw-r--r-- | tests/Selenium/Mail/Mail.php | 23 |
5 files changed, 100 insertions, 0 deletions
diff --git a/tests/Selenium/Mail/CheckRecent.php b/tests/Selenium/Mail/CheckRecent.php new file mode 100644 index 000000000..865421c2d --- /dev/null +++ b/tests/Selenium/Mail/CheckRecent.php @@ -0,0 +1,14 @@ +<?php + +class Selenium_Mail_CheckRecent extends Selenium_Test +{ + public function testCheckRecent() + { + $this->go('mail'); + + $res = $this->ajaxResponse('check-recent', "rcmail.command('checkmail')"); + + $this->assertEquals('check-recent', $res['action']); + $this->assertRegExp('/this\.set_unread_count/', $res['exec']); + } +} diff --git a/tests/Selenium/Mail/Compose.php b/tests/Selenium/Mail/Compose.php new file mode 100644 index 000000000..e707ef17d --- /dev/null +++ b/tests/Selenium/Mail/Compose.php @@ -0,0 +1,25 @@ +<?php + +class Selenium_Mail_Compose extends Selenium_Test +{ + public function testCompose() + { + $this->go('mail', 'compose'); + + // check task and action + $env = $this->get_env(); + $this->assertEquals('mail', $env['task']); + $this->assertEquals('compose', $env['action']); + + $objects = $this->get_objects(); + + // these objects should be there always + $this->assertContains('qsearchbox', $objects); + $this->assertContains('addressbookslist', $objects); + $this->assertContains('contactslist', $objects); + $this->assertContains('messageform', $objects); + $this->assertContains('attachmentlist', $objects); + $this->assertContains('filedrop', $objects); + $this->assertContains('uploadform', $objects); + } +} diff --git a/tests/Selenium/Mail/Getunread.php b/tests/Selenium/Mail/Getunread.php new file mode 100644 index 000000000..d6362f2f4 --- /dev/null +++ b/tests/Selenium/Mail/Getunread.php @@ -0,0 +1,13 @@ +<?php + +class Selenium_Mail_Getunread extends Selenium_Test +{ + public function testGetunread() + { + $this->go('mail'); + + $res = $this->ajaxResponse('getunread', "rcmail.http_request('getunread')"); + + $this->assertEquals('getunread', $res['action']); + } +} diff --git a/tests/Selenium/Mail/List.php b/tests/Selenium/Mail/List.php new file mode 100644 index 000000000..7574c1801 --- /dev/null +++ b/tests/Selenium/Mail/List.php @@ -0,0 +1,25 @@ +<?php + +class Selenium_Mail_List extends Selenium_Test +{ + public function testCheckRecent() + { + $this->go('mail'); + + $res = $this->ajaxResponse('list', "rcmail.command('list')"); + + $this->assertEquals('list', $res['action']); + $this->assertRegExp('/this\.set_pagetitle/', $res['exec']); + $this->assertRegExp('/this\.set_unread_count/', $res['exec']); + $this->assertRegExp('/this\.set_rowcount/', $res['exec']); + $this->assertRegExp('/this\.set_message_coltypes/', $res['exec']); +// $this->assertRegExp('/this\.add_message_row/', $res['exec']); + + $this->assertContains('current_page', $res['env']); + $this->assertContains('exists', $res['env']); + $this->assertContains('pagecount', $res['env']); + $this->assertContains('pagesize', $res['env']); + $this->assertContains('messagecount', $res['env']); + $this->assertContains('mailbox', $res['env']); + } +} diff --git a/tests/Selenium/Mail/Mail.php b/tests/Selenium/Mail/Mail.php new file mode 100644 index 000000000..98413787b --- /dev/null +++ b/tests/Selenium/Mail/Mail.php @@ -0,0 +1,23 @@ +<?php + +class Selenium_Mail_Mail extends Selenium_Test +{ + public function testMail() + { + $this->go('mail'); + + // check task + $env = $this->get_env(); + $this->assertEquals('mail', $env['task']); + + $objects = $this->get_objects(); + + // these objects should be there always + $this->assertContains('qsearchbox', $objects); + $this->assertContains('mailboxlist', $objects); + $this->assertContains('messagelist', $objects); + $this->assertContains('quotadisplay', $objects); + $this->assertContains('search_filter', $objects); + $this->assertContains('countdisplay', $objects); + } +} |