255 lines
7.4 KiB
PHP
255 lines
7.4 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Generated by PHPUnit_SkeletonGenerator 1.2.1 on 2014-03-13 at 15:55:58.
|
|
*/
|
|
class m_actionTest extends AlterncTest {
|
|
|
|
/**
|
|
* @var m_action
|
|
*/
|
|
protected $object;
|
|
|
|
const TEST_FILE = "/tmp/phpunit-actionTest-file";
|
|
const TEST_DIR = "/tmp/phpunit-actionTest-dir";
|
|
const TEST_UID = 999;
|
|
|
|
/**
|
|
* @return PHPUnit_Extensions_Database_DataSet_IDataSet
|
|
*/
|
|
public function getDataSet() {
|
|
|
|
$list = array(
|
|
"testPurge" => "actions-purgeable.yml",
|
|
"testGet_action" => "actions-purgeable.yml",
|
|
"testGet_old" => "actions-purgeable.yml",
|
|
"testFinish" => "actions-purgeable.yml",
|
|
"testReset_job" => "actions-began.yml",
|
|
"testGet_job" => "actions-ready.yml",
|
|
"testCancel" => "actions-purgeable.yml",
|
|
"default" => "actions-purgeable.yml"
|
|
);
|
|
if (isset($list[$this->getName()])) {
|
|
$dataset_file = $list[$this->getName()];
|
|
} else {
|
|
$dataset_file = "actions-empty.yml";
|
|
}
|
|
return parent::loadDataSet($dataset_file);
|
|
}
|
|
|
|
/**
|
|
* Sets up the fixture, for example, opens a network connection.
|
|
* This method is called before a test is executed.
|
|
*/
|
|
protected function setUp() {
|
|
parent::setUp();
|
|
$this->object = new m_action;
|
|
}
|
|
|
|
/**
|
|
* Tears down the fixture, for example, closes a network connection.
|
|
* This method is called after a test is executed.
|
|
*/
|
|
protected function tearDown() {
|
|
global $L_INOTIFY_DO_ACTION;
|
|
parent::tearDown();
|
|
// Removes flag file eventually created
|
|
if (is_file($L_INOTIFY_DO_ACTION)) {
|
|
unlink($L_INOTIFY_DO_ACTION);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::do_action
|
|
*/
|
|
public function testDo_action() {
|
|
global $L_INOTIFY_DO_ACTION;
|
|
file_put_contents("/tmp/log_fser", "hello world from fser");
|
|
$result = $this->object->do_action();
|
|
$this->assertTrue($result);
|
|
$this->assertFileExists($L_INOTIFY_DO_ACTION);
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::chmod
|
|
*/
|
|
public function testChmod() {
|
|
$result = $this->object->chmod(self::TEST_FILE, 0777,"phpunit");
|
|
$this->assertEquals(1, $this->getConnection()->getRowCount('actions'));
|
|
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::create_file
|
|
*/
|
|
public function testCreate_file() {
|
|
$result = $this->object->create_file(self::TEST_FILE, "phpunit");
|
|
$this->assertTrue($result);
|
|
$this->assertEquals(1, $this->getConnection()->getRowCount('actions'));
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::create_dir
|
|
*/
|
|
public function testCreate_dir() {
|
|
$result = $this->object->create_dir(self::TEST_FILE);
|
|
$this->assertTrue($result);
|
|
$this->assertEquals(1, $this->getConnection()->getRowCount('actions'));
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::fix_user
|
|
*/
|
|
public function testFix_user() {
|
|
$result = $this->object->fix_user(self::TEST_UID);
|
|
$this->assertTrue($result);
|
|
$this->assertEquals(1, $this->getConnection()->getRowCount('actions'));
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::fix_dir
|
|
*/
|
|
public function testFix_dir() {
|
|
$result = $this->object->fix_dir(self::TEST_DIR);
|
|
$this->assertTrue($result);
|
|
$this->assertEquals(1, $this->getConnection()->getRowCount('actions'));
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::fix_file
|
|
*/
|
|
public function testFix_file() {
|
|
$result = $this->object->fix_file(self::TEST_FILE);
|
|
$this->assertTrue($result);
|
|
$this->assertEquals(1, $this->getConnection()->getRowCount('actions'));
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::del
|
|
*/
|
|
public function testDel() {
|
|
$result = $this->object->del(self::TEST_DIR);
|
|
$this->assertTrue($result);
|
|
$this->assertEquals(1, $this->getConnection()->getRowCount('actions'));
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::move
|
|
*/
|
|
public function testMove() {
|
|
$result = $this->object->move(self::TEST_FILE, self::TEST_DIR);
|
|
$this->assertTrue($result);
|
|
$this->assertEquals(1, $this->getConnection()->getRowCount('actions'));
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::archive
|
|
*/
|
|
public function testArchive() {
|
|
$result = $this->object->archive(self::TEST_DIR);
|
|
$this->assertTrue($result);
|
|
$this->assertEquals(1, $this->getConnection()->getRowCount('actions'));
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::set
|
|
*/
|
|
public function testSet() {
|
|
// We test only failure, other methods cover success
|
|
$result = $this->object->set(null, null, null);
|
|
$this->assertFalse($result);
|
|
$this->assertEquals(0, $this->getConnection()->getRowCount('actions'));
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::get_old
|
|
*/
|
|
public function testGet_old() {
|
|
$result = $this->object->get_old();
|
|
$this->assertEquals(1, $result);
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::purge
|
|
*/
|
|
public function testPurge() {
|
|
$result = $this->object->purge();
|
|
$this->assertEquals(1, $result);
|
|
$expectedTable = $this->loadDataSet("actions-empty.yml")->getTable("actions");
|
|
$currentTable = $this->getConnection()->createQueryTable('actions', 'SELECT * FROM actions');
|
|
$this->assertTablesEqual($expectedTable, $currentTable);
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::get_action
|
|
*/
|
|
public function testGet_action() {
|
|
$result = $this->object->get_action();
|
|
$this->assertTrue(is_array($result));
|
|
$this->assertCount(1, $result);
|
|
return current($result);
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::begin
|
|
* @depends testGet_action
|
|
*/
|
|
public function testBegin($action) {
|
|
$result = $this->object->begin($action["id"]);
|
|
$this->assertTrue($result);
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::finish
|
|
* @depends testGet_action
|
|
*/
|
|
public function testFinish($action) {
|
|
$result = $this->object->finish($action["id"]);
|
|
$this->assertTrue($result);
|
|
$queryTable = $this->getConnection()->createQueryTable(
|
|
'actions', 'SELECT * FROM actions WHERE DAY(end) = DAY(NOW())'
|
|
);
|
|
$row_count = $queryTable->getRowCount();
|
|
$this->assertEquals(1, $row_count);
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::reset_job
|
|
* @depends testGet_action
|
|
*/
|
|
public function testReset_job($action) {
|
|
$result = $this->object->reset_job($action["id"]);
|
|
$this->assertTrue($result);
|
|
$queryTable = $this->getConnection()->createQueryTable(
|
|
'actions', 'SELECT * FROM actions WHERE end = 0 AND begin = 0 AND status = 0'
|
|
);
|
|
$this->assertEquals(1, $queryTable->getRowCount());
|
|
}
|
|
|
|
/**
|
|
*
|
|
*
|
|
* @covers m_action::get_job
|
|
*/
|
|
public function testGet_job() {
|
|
$result = $this->object->get_job();
|
|
$this->assertTrue(is_array($result));
|
|
$this->assertCount(1, $result);
|
|
}
|
|
|
|
/**
|
|
* @covers m_action::cancel
|
|
* @depends testGet_action
|
|
*/
|
|
public function testCancel($variable) {
|
|
$result = $this->object->cancel($variable["id"]);
|
|
$this->assertTrue($result);
|
|
$queryTable = $this->getConnection()->createQueryTable(
|
|
'actions', 'SELECT * FROM actions WHERE DAY(end) = DAY(NOW())'
|
|
);
|
|
$row_count = $queryTable->getRowCount();
|
|
$this->assertEquals(1, $row_count);
|
|
}
|
|
|
|
}
|