Author: Derick Rethans
Date: 2007-01-19 12:58:17 +0100 (Fri, 19 Jan 2007)
New Revision: 4532

Log:
- Implemented issue #9965: Support for delayed initialization through
  ezcBaseInit.

Modified:
   trunk/SignalSlot/ChangeLog
   trunk/SignalSlot/src/static_connections.php
   trunk/SignalSlot/tests/static_connections_test.php
   trunk/SignalSlot/tests/suite.php
   trunk/SignalSlot/tests/test_classes.php

Modified: trunk/SignalSlot/ChangeLog
===================================================================
--- trunk/SignalSlot/ChangeLog  2007-01-19 11:56:59 UTC (rev 4531)
+++ trunk/SignalSlot/ChangeLog  2007-01-19 11:58:17 UTC (rev 4532)
@@ -1,3 +1,10 @@
+1.1beta1 - [RELEASEDATE]
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+- Implemented issue #9965: Support for delayed initialization through
+  ezcBaseInit.
+
+
 1.0 - Monday 18 December 2006
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 

Modified: trunk/SignalSlot/src/static_connections.php
===================================================================
--- trunk/SignalSlot/src/static_connections.php 2007-01-19 11:56:59 UTC (rev 
4531)
+++ trunk/SignalSlot/src/static_connections.php 2007-01-19 11:58:17 UTC (rev 
4532)
@@ -55,6 +55,7 @@
         if ( self::$instance === null )
         {
             self::$instance = new ezcSignalStaticConnections();
+            ezcBaseInit::fetchConfig( 'ezcInitSignalStaticConnections', 
self::$instance );
         }
         return self::$instance;
     }

Modified: trunk/SignalSlot/tests/static_connections_test.php
===================================================================
--- trunk/SignalSlot/tests/static_connections_test.php  2007-01-19 11:56:59 UTC 
(rev 4531)
+++ trunk/SignalSlot/tests/static_connections_test.php  2007-01-19 11:58:17 UTC 
(rev 4532)
@@ -11,7 +11,7 @@
 require_once( "test_classes.php" );
 
 /**
- * @package PhpGenerator
+ * @package SignalSlot
  * @subpackage Tests
  */
 class ezcSignalStaticConnectionsTest extends ezcTestCase
@@ -25,9 +25,23 @@
         $this->receiver = new TheReceiver();
         TheReceiver::$globalFunctionRun = false;
         TheReceiver::$staticFunctionRun = false;
+    }
+
+    function tearDown()
+    {
         ezcSignalStaticConnections::getInstance()->connections = array();
     }
 
+    public function testDelayedInitialization()
+    {
+        ezcBaseInit::setCallback( 'ezcInitSignalStaticConnections', 
'testDelayedInitSignalStaticConnections' );
+        ezcSignalStaticConnections::getInstance()->connect( 'TheDelayed', 
'signal', 'two' );
+        $this->assertEquals(
+            array( 1000 => array( 'two', 'one' ) ),
+            ezcSignalStaticConnections::getInstance()->getConnections( 
'TheDelayed', 'signal' )
+        );
+    }
+
     public function testSingleConnectionGlobalFunction()
     {
         ezcSignalStaticConnections::getInstance()->connect( 'TheGiver', 
'signal', 'slotFunction' );

Modified: trunk/SignalSlot/tests/suite.php
===================================================================
--- trunk/SignalSlot/tests/suite.php    2007-01-19 11:56:59 UTC (rev 4531)
+++ trunk/SignalSlot/tests/suite.php    2007-01-19 11:58:17 UTC (rev 4532)
@@ -26,9 +26,9 @@
         parent::__construct();
         $this->setName("SignalSlot");
 
-        $this->addTest( ezcSignalCollectionTest::suite() );
         $this->addTest( ezcSignalStaticConnectionsTest::suite() );
         $this->addTest( ezcSignalStaticConnectionsBaseTest::suite() );
+        $this->addTest( ezcSignalCollectionTest::suite() );
     }
 
     public static function suite()

Modified: trunk/SignalSlot/tests/test_classes.php
===================================================================
--- trunk/SignalSlot/tests/test_classes.php     2007-01-19 11:56:59 UTC (rev 
4531)
+++ trunk/SignalSlot/tests/test_classes.php     2007-01-19 11:58:17 UTC (rev 
4532)
@@ -85,5 +85,11 @@
     TheReceiver::$globalFunctionRun = "brain damage";
 }
 
+class testDelayedInitSignalStaticConnections {
+    static function configureObject( $object )
+    {
+        $object->connect( 'TheDelayed', 'signal', 'one' );
+    }
+}
 
 ?>

-- 
svn-components mailing list
svn-components@lists.ez.no
http://lists.ez.no/mailman/listinfo/svn-components

Reply via email to