/**
  * Tests the writing mechanism. At first, no Response object is bound to the logger, so
  * it queues up the messages. When the Response object finally gets bound, it flushes the
  * needed headers and all messages at once. All messages coming after this point get added
  * to the header immediately.
  */
 public function testWrite()
 {
     $response = new Response();
     $result = Logger::write('debug', 'FirePhp to the rescue!', array('name' => 'firephp'));
     $this->assertTrue($result);
     $this->assertFalse($response->headers());
     $host = 'meta.firephp.org';
     $expected = array("X-Wf-Protocol-1: http://meta.wildfirehq.org/Protocol/JsonStream/0.2", "X-Wf-1-Plugin-1: http://{$host}/Wildfire/Plugin/FirePHP/Library-FirePHPCore/0.3", "X-Wf-1-Structure-1: http://{$host}/Wildfire/Structure/FirePHP/FirebugConsole/0.1", "X-Wf-1-1-1-1: 41|[{\"Type\":\"LOG\"},\"FirePhp to the rescue!\"]|");
     Logger::adapter('firephp')->bind($response);
     $this->assertEqual($expected, $response->headers());
     $result = Logger::write('debug', 'Add this immediately.', array('name' => 'firephp'));
     $this->assertTrue($result);
     $expected[] = 'X-Wf-1-1-1-2: 40|[{"Type":"LOG"},"Add this immediately."]|';
     $this->assertEqual($expected, $response->headers());
 }