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