tao-test/app/vendor/fluent/logger/tests/Fluent/Logger/JsonPackerTest.php

60 lines
1.3 KiB
PHP

<?php
namespace FluentTests\Logger;
use Fluent\Logger\Entity;
use Fluent\Logger\JsonPacker;
class JsonPackerTest extends \PHPUnit_Framework_TestCase
{
const TAG = "debug.test";
const EXPECTED_TIME = 123456789;
protected $time;
protected $expected_data = array();
public function setUp()
{
$this->expected_data = array("abc" => "def");
}
public function testPack()
{
$entity = new Entity(self::TAG, $this->expected_data, self::EXPECTED_TIME);
$packer = new JsonPacker();
$result = $packer->pack($entity);
/*
* expected format.
* ["<Tag>", <Unixtime>, {object}]
*/
$this->assertStringMatchesFormat('["%s",%d,{"%s":"%s"}]', $result, "unexpected format returns");
return json_decode($result, true);
}
/**
* @depends testPack
*/
public function testPackReturnTag($result)
{
$this->assertEquals($result['0'], self::TAG);
}
/**
* @depends testPack
*/
public function testPackReturnTime($result)
{
$this->assertEquals($result['1'], self::EXPECTED_TIME);
}
/**
* @depends testPack
*/
public function testPackReturnData($result)
{
$this->assertEquals($result['2'], $this->expected_data);
}
}