From: Gunnar Wrobel Date: Wed, 3 Mar 2010 09:44:25 +0000 (+0100) Subject: Tried to replace the two step test against a complete login task series but I'm still... X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=7481b0c5823014a8647afc473b8d337ba62991c1;p=horde.git Tried to replace the two step test against a complete login task series but I'm still doing something wrong. --- diff --git a/framework/LoginTasks/test/Horde/LoginTasks/LoginTasksTest.php b/framework/LoginTasks/test/Horde/LoginTasks/LoginTasksTest.php index d8d6b4700..edf7abde5 100644 --- a/framework/LoginTasks/test/Horde/LoginTasks/LoginTasksTest.php +++ b/framework/LoginTasks/test/Horde/LoginTasks/LoginTasksTest.php @@ -429,40 +429,76 @@ class Horde_LoginTasks_Class_LoginTasksTest extends PHPUnit_Framework_TestCase ); } - public function testConfirmAfterNoticeWillBeDisplayed() + public function testConfirmSeriesDisplay() { - $this->markTestIncomplete('I don\'t understand the logic here.'); + $this->markTestIncomplete(); Horde_LoginTasks_Stub_Task::$executed = array(); $tasks = $this->_getLoginTasks( array( + 'Horde_LoginTasks_Stub_ConfirmNo', 'Horde_LoginTasks_Stub_Confirm', + 'Horde_LoginTasks_Stub_Task', + 'Horde_LoginTasks_Stub_Notice', + 'Horde_LoginTasks_Stub_ConfirmTwo', + 'Horde_LoginTasks_Stub_TaskTwo', + 'Horde_LoginTasks_Stub_ConfirmThree', 'Horde_LoginTasks_Stub_Notice', ), true ); - $tasks->runTasks(false, 'redirect', true); - $tasks->displayTasks(); + $this->assertContains( + 'http:///services/logintasks.php?app=test', + (string) $tasks->runTasks(false, 'redirect', true) + ); + $this->assertEquals( + array( + ), + Horde_LoginTasks_Stub_Task::$executed + ); + $tasklist = $tasks->displayTasks(); + $classes = array(); + foreach ($tasklist as $task) { + $classes[] = get_class($task); + } + asort($classes); + $this->assertEquals( + array( + 'Horde_LoginTasks_Stub_ConfirmNo' + ), + $classes + ); $_POST['logintasks_confirm_0'] = true; - $tasks->runTasks(true, null, true); + $this->assertEquals( + 'redirect', + $tasks->runTasks(true, null, true) + ); $this->assertEquals( array( - 'Horde_LoginTasks_Stub_Confirm', - 'Horde_LoginTasks_Stub_Notice', + 'Horde_LoginTasks_Stub_ConfirmNo', ), Horde_LoginTasks_Stub_Task::$executed ); - } - - public function testNoticeBeforeConfirmationWillNotBeDisplayed() - { - $this->markTestIncomplete('I don\'t understand the logic here.'); - Horde_LoginTasks_Stub_Task::$executed = array(); - $tasks = $this->_getLoginTasks( + $this->assertContains( + 'http:///services/logintasks.php?app=test', + (string) $tasks->runTasks(false, null, true) + ); + $this->assertEquals( array( - 'Horde_LoginTasks_Stub_Notice', - 'Horde_LoginTasks_Stub_Confirm', + 'Horde_LoginTasks_Stub_ConfirmNo', ), - true + Horde_LoginTasks_Stub_Task::$executed + ); + $tasklist = $tasks->displayTasks(); + $classes = array(); + foreach ($tasklist as $task) { + $classes[] = get_class($task); + } + asort($classes); + $this->assertEquals( + array( + 'Horde_LoginTasks_Stub_Confirm' + ), + $classes ); } diff --git a/framework/LoginTasks/test/Horde/LoginTasks/Stubs.php b/framework/LoginTasks/test/Horde/LoginTasks/Stubs.php index 13fa1501f..02f256e35 100644 --- a/framework/LoginTasks/test/Horde/LoginTasks/Stubs.php +++ b/framework/LoginTasks/test/Horde/LoginTasks/Stubs.php @@ -32,12 +32,35 @@ extends Horde_LoginTasks_Task } } +class Horde_LoginTasks_Stub_TaskTwo +extends Horde_LoginTasks_Stub_Task +{ +} + class Horde_LoginTasks_Stub_Confirm extends Horde_LoginTasks_Stub_Task { public $display = Horde_LoginTasks::DISPLAY_CONFIRM_YES; } +class Horde_LoginTasks_Stub_ConfirmTwo +extends Horde_LoginTasks_Stub_Task +{ + public $display = Horde_LoginTasks::DISPLAY_CONFIRM_YES; +} + +class Horde_LoginTasks_Stub_ConfirmThree +extends Horde_LoginTasks_Stub_Task +{ + public $display = Horde_LoginTasks::DISPLAY_CONFIRM_YES; +} + +class Horde_LoginTasks_Stub_ConfirmNo +extends Horde_LoginTasks_Stub_Task +{ + public $display = Horde_LoginTasks::DISPLAY_CONFIRM_NO; +} + class Horde_LoginTasks_Stub_Day extends Horde_LoginTasks_Stub_Task {