miniflux-legacy/tests/unit/HelperTest.php

60 lines
1.7 KiB
PHP

<?php
use Miniflux\Helper;
use Miniflux\Model;
use Miniflux\Session\SessionStorage;
require_once __DIR__.'/BaseTest.php';
class HelperTest extends BaseTest
{
public function testConfig()
{
SessionStorage::getInstance()->setUser(array('id' => 1, 'user_id' => 1, 'username' => 'admin', 'is_admin' => 1));
$this->assertNull(Helper\config('option'));
$this->assertSame('default', Helper\config('option', 'default'));
$this->assertTrue(Model\Config\save(1, array('option1' => '1', 'option2' => '0')));
$this->assertTrue(Helper\bool_config('option1'));
$this->assertFalse(Helper\bool_config('option2'));
$this->assertFalse(Helper\bool_config('option3'));
$this->assertTrue(Helper\bool_config('option4', true));
}
public function testGenerateToken()
{
$token1 = Helper\generate_token();
$token2 = Helper\generate_token();
$this->assertNotEquals($token1, $token2);
}
public function testGenerateCsrf()
{
$_SESSION = array();
$token1 = Helper\generate_csrf();
$token2 = Helper\generate_csrf();
$this->assertNotEquals($token1, $token2);
}
public function testCheckCsrf()
{
$token = Helper\generate_csrf();
$this->assertTrue(Helper\check_csrf($token));
$this->assertFalse(Helper\check_csrf('test'));
}
public function testCheckCsrfValues()
{
$values = array('field' => 'value');
Helper\check_csrf_values($values);
$this->assertEmpty($values);
$values = array('field' => 'value', 'csrf' => Helper\generate_csrf());
Helper\check_csrf_values($values);
$this->assertEquals(array('field' => 'value'), $values);
}
}