mirror of
https://github.com/Combodo/iTop.git
synced 2026-03-06 17:44:12 +01:00
Unit tests based on PHPUnit
These tests run with the sample datamodel and they don't commit any data (only some indexes are incremented). To launch the test suite, run the following command from the test repository: php.exe <PATH_TO>/phpunit.phar --configuration <PATH_TO>/test/PHPunit.xml SVN:trunk[5164]
This commit is contained in:
83
test/core/DBObjectTest.php
Normal file
83
test/core/DBObjectTest.php
Normal file
@@ -0,0 +1,83 @@
|
||||
<?php
|
||||
// Copyright (c) 2010-2017 Combodo SARL
|
||||
//
|
||||
// This file is part of iTop.
|
||||
//
|
||||
// iTop is free software; you can redistribute it and/or modify
|
||||
// it under the terms of the GNU Affero General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// iTop is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU Affero General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Affero General Public License
|
||||
// along with iTop. If not, see <http://www.gnu.org/licenses/>
|
||||
//
|
||||
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: Eric
|
||||
* Date: 02/10/2017
|
||||
* Time: 13:58
|
||||
*/
|
||||
|
||||
namespace Combodo\iTop\Test\UnitTest\Core;
|
||||
|
||||
use Combodo\iTop\Test\UnitTest\ItopTestCase;
|
||||
use DBObject;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
|
||||
/**
|
||||
* @runTestsInSeparateProcesses
|
||||
* @preserveGlobalState disabled
|
||||
* @backupGlobals disabled
|
||||
*/
|
||||
class DBObjectTest extends ItopTestCase
|
||||
{
|
||||
protected function setUp()
|
||||
{
|
||||
parent::setUp();
|
||||
require_once(APPROOT.'core/coreexception.class.inc.php');
|
||||
require_once(APPROOT.'core/dbobject.class.php');
|
||||
}
|
||||
|
||||
/**
|
||||
* Test default page name
|
||||
*/
|
||||
public function testGetUIPage()
|
||||
{
|
||||
$this->assertEquals('UI.php', DBObject::GetUIPage());
|
||||
}
|
||||
|
||||
/**
|
||||
* Test PKey validation
|
||||
* @dataProvider keyProviderOK
|
||||
* @param $key
|
||||
* @param $res
|
||||
*/
|
||||
public function testIsValidPKeyOK($key, $res)
|
||||
{
|
||||
$this->assertEquals(DBObject::IsValidPKey($key), $res);
|
||||
}
|
||||
|
||||
public function keyProviderOK()
|
||||
{
|
||||
return array(
|
||||
array(1, true),
|
||||
array('255', true),
|
||||
array(-24576, true),
|
||||
array(0123, true),
|
||||
array(0xCAFE, true),
|
||||
array(PHP_INT_MIN, true),
|
||||
array(PHP_INT_MAX, true),
|
||||
array('test', false),
|
||||
array('', false),
|
||||
array('a255', false),
|
||||
array('PHP_INT_MIN', false));
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user