options = array( 'name' => 'queue1', 'params' => array(), ); $this->queue = new Zend_Queue('array', $this->options); $this->data = array( 'id' => 123, 'handle' => 567, 'body' => 'Hello world' // This is my 2524'th time writing that. ); $this->options = array( 'queue' => $this->queue, 'data' => $this->data, ); $this->message = new Zend_Queue_Message($this->options); } protected function tearDown() { } public function testConstruct() { try { $message = new Zend_Queue_Message($this->options); $this->assertTrue(true); } catch (Exception $e) { $this->fail('should have gotten a valid object'); } // parameter verification try { $config2 = $this->options; $config2['queue'] = 'weee'; $message = new Zend_Queue_Message($config2); $this->fail('should have thrown an exception bad queue var'); } catch (Exception $e) { $this->assertTrue(true); } try { $config2 = $this->options; $config2['data'] = 'weee'; $message = new Zend_Queue_Message($config2); $this->fail('should have thrown an exception bad queue var'); } catch (Exception $e) { $this->assertTrue(true); } } public function testMagic() { $this->assertEquals(123, $this->message->__get('id')); $this->assertEquals(123, $this->message->id); $this->assertEquals('Hello world', $this->message->body); $this->message->__set('id', 'abc'); $this->assertEquals('abc', $this->message->__get('id')); $this->assertTrue($this->message->__isset('id')); try { $this->message->__get('hello world'); $this->fail('key is NOT in variable, should have thrown an exception'); } catch (Exception $e) { $this->assertTrue(true); } try { $this->message->__set('hello world', 'good bye'); $this->fail('key is NOT in variable, should have thrown an exception'); } catch (Exception $e) { $this->assertTrue(true); } try { $message = new Zend_Queue_Message($this->options); $this->assertTrue(true); } catch (Exception $e) { $this->fail('should have gotten a valid object'); } // parameter verification try { $config2 = $this->options; $config2['queue'] = 'weee'; $message = new Zend_Queue_Message($config2); $this->fail('should have thrown an exception bad queue var'); } catch (Exception $e) { $this->assertTrue(true); } try { $config2 = $this->options; $config2['data'] = 'weee'; $message = new Zend_Queue_Message($config2); $this->fail('should have thrown an exception bad queue var'); } catch (Exception $e) { $this->assertTrue(true); } } public function test_set_getQueue() { $this->assertTrue($this->message->getQueue() instanceof Zend_Queue); $class = $this->message->getQueueClass(); $this->assertEquals('Zend_Queue', $class); $this->assertTrue($this->message->setQueue($this->message->getQueue())); // parameter verification try { $null = new Zend_Queue('Null', array()); $this->message->setQueue($null); $this->fail('invalid class passed to setQueue()'); } catch (Exception $e) { $this->assertTrue(true); } } public function test_array() { $array = $this->message->toArray(); $this->assertTrue(is_array($array)); $array['id'] = 'hello'; $this->message->setFromArray($array); $this->assertEquals('hello', $this->message->id); } public function test_magic() { $this->assertTrue(is_array($this->message->__sleep())); $message = serialize($this->message); $woken = unserialize($message); $this->assertEquals($this->message->body, $woken->body); } }