/**
  * @depends testExecArgTypes
  * 
  * @return void
  */
 public function testExecArgValues()
 {
     $printRequest = new Request('/queue/simple/print', Query::where('name', TEST_QUEUE_NAME));
     $this->util->setMenu('/queue/simple');
     $this->util->exec('add name=$name target=0.0.0.0/0 comment=$comment', array('name' => TEST_QUEUE_NAME, 'comment' => 2));
     $results = $this->client->sendSync($printRequest)->getAllOfType(Response::TYPE_DATA);
     $this->util->remove(TEST_QUEUE_NAME);
     $this->assertCount(1, $results);
     $this->assertSame('2', $results->getProperty('comment'));
     $this->util->exec('add name=$name target=0.0.0.0/0 comment=$comment', array('name' => TEST_QUEUE_NAME, 'comment' => 'test'));
     $results = $this->client->sendSync($printRequest)->getAllOfType(Response::TYPE_DATA);
     $this->util->remove(TEST_QUEUE_NAME);
     $this->assertCount(1, $results);
     $this->assertSame('test', $results->getProperty('comment'));
     $this->util->exec('add name=$name target=0.0.0.0/0 comment=$comment', array('name' => TEST_QUEUE_NAME, 'comment' => true));
     $results = $this->client->sendSync($printRequest)->getAllOfType(Response::TYPE_DATA);
     $this->util->remove(TEST_QUEUE_NAME);
     $this->assertCount(1, $results);
     $this->assertSame('true', $results->getProperty('comment'));
     $this->util->exec('add name=$name target=0.0.0.0/0 comment=[:pick $comment 0]', array('name' => TEST_QUEUE_NAME, 'comment' => array('hello', 'world')));
     $results = $this->client->sendSync($printRequest)->getAllOfType(Response::TYPE_DATA);
     $this->util->remove(TEST_QUEUE_NAME);
     $this->assertCount(1, $results);
     $this->assertSame('hello', $results->getProperty('comment'));
     $this->util->exec('add name=$name target=0.0.0.0/0 comment=$comment', array('name' => TEST_QUEUE_NAME, 'comment' => array()));
     $results = $this->client->sendSync($printRequest)->getAllOfType(Response::TYPE_DATA);
     $this->util->remove(TEST_QUEUE_NAME);
     $this->assertCount(1, $results);
     $this->assertSame(null, $results->getProperty('comment'));
     $this->util->exec('add name=$name target=0.0.0.0/0 comment=$comment', array('name' => TEST_QUEUE_NAME, 'comment' => null));
     $results = $this->client->sendSync($printRequest)->getAllOfType(Response::TYPE_DATA);
     $this->util->remove(TEST_QUEUE_NAME);
     $this->assertCount(1, $results);
     $this->assertSame(null, $results->getProperty('comment'));
     $this->util->exec('add name=$name target=0.0.0.0/0 comment=$comment', array('name' => TEST_QUEUE_NAME, 'comment' => new DateTime('1970-01-01 00:00:00.000001', new DateTimezone('UTC'))));
     $results = $this->client->sendSync($printRequest)->getAllOfType(Response::TYPE_DATA);
     $this->util->remove(TEST_QUEUE_NAME);
     $this->assertCount(1, $results);
     $this->assertSame('00:00:00.000001', $results->getProperty('comment'));
     $this->util->exec('add name=$name target=0.0.0.0/0 comment=$comment', array('name' => TEST_QUEUE_NAME, 'comment' => new DateTime('1970-01-02 00:00:01', new DateTimezone('UTC'))));
     $results = $this->client->sendSync($printRequest)->getAllOfType(Response::TYPE_DATA);
     $this->util->remove(TEST_QUEUE_NAME);
     $this->assertCount(1, $results);
     $this->assertSame('1d00:00:01', $results->getProperty('comment'));
     $this->util->exec('add name=$name target=0.0.0.0/0 comment=$comment', array('name' => TEST_QUEUE_NAME, 'comment' => new DateTime('1970-01-10 01:02:03', new DateTimezone('UTC'))));
     $results = $this->client->sendSync($printRequest)->getAllOfType(Response::TYPE_DATA);
     $this->util->remove(TEST_QUEUE_NAME);
     $this->assertCount(1, $results);
     $this->assertSame('1w2d01:02:03', $results->getProperty('comment'));
     $this->util->exec('add name=$name target=0.0.0.0/0 comment=$comment', array('name' => TEST_QUEUE_NAME, 'comment' => new DateInterval('P8D')));
     $results = $this->client->sendSync($printRequest)->getAllOfType(Response::TYPE_DATA);
     $this->util->remove(TEST_QUEUE_NAME);
     $this->assertCount(1, $results);
     $this->assertSame('1w1d00:00:00', $results->getProperty('comment'));
 }