FOSSology  3.2.0rc1
Open Source License Compliance by Open Source Software
TestLiteDbTest.php
1 <?php
2 /*
3 Copyright (C) 2014-2015, Siemens AG
4 
5 This program is free software; you can redistribute it and/or
6 modify it under the terms of the GNU General Public License
7 version 2 as published by the Free Software Foundation.
8 
9 This program is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
13 
14 You should have received a copy of the GNU General Public License along
15 with this program; if not, write to the Free Software Foundation, Inc.,
16 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
17 */
18 
19 namespace Fossology\Lib\Test;
20 
21 class TestLiteDbTest extends \PHPUnit\Framework\TestCase
22 {
23 
24  public function testGetDbManager()
25  {
26  $testDb = new TestLiteDb();
27  $this->assertInstanceOf('Fossology\Lib\Db\DbManager', $testDb->getDbManager());
28  }
29 
30  public function testCreatePlainTables()
31  {
32  $testDb = new TestLiteDb();
33  $testDb->createPlainTables(array('tag'));
34  $dbManager = $testDb->getDbManager();
35 
36  $dbManager->queryOnce("insert into tag (tag_pk,tag,tag_desc) values (1,'hello','world')");
37  $tag1 = $dbManager->getSingleRow('select * from tag where tag_pk=1');
38  assertThat($tag1,hasKey('tag_desc'));
39  assertThat($tag1['tag_desc'],is('world'));
40  }
41 
42  public function testInsertData()
43  {
44  $testDb = new TestLiteDb();
45  $testDb->createPlainTables(array('perm_upload'));
46  $testDb->insertData(array('perm_upload'));
47  $tag1 = $testDb->getDbManager()->getSingleRow('select perm from perm_upload where perm_upload_pk=1');
48  assertThat($tag1,hasKey('perm'));
49  assertThat($tag1['perm'],is(10));
50  }
51 }