9 namespace Fossology\Lib\Dao;
29 protected function setUp() :
void
32 $this->testDb->createPlainTables(array(
'obligation_ref',
'obligation_map',
'obligation_candidate_map'));
33 $this->
dbManager = $this->testDb->getDbManager();
35 $this->assertCountBefore = \Hamcrest\MatcherAssert::getCount();
38 protected function tearDown() :
void
49 $this->testDb->createPlainTables(array(
'license_ref'));
50 $this->testDb->createSequences(array(
'license_ref_rf_pk_seq'));
51 $this->testDb->alterTables(array(
'license_ref'));
54 public function testGetFileLicenseMatches()
56 $this->testDb->createPlainTables(array(
'uploadtree',
'license_file',
'agent'));
58 $this->testDb->insertData_license_ref();
60 $lic0 = $this->
dbManager->getSingleRow(
"Select * from license_ref limit 1");
61 $licenseRefNumber = $lic0[
'rf_pk'];
72 $mydate =
"'2014-06-04 14:01:30.551093+02'";
73 $this->testDb->createViews(array(
'license_file_ref'));
74 $this->
dbManager->queryOnce(
"INSERT INTO license_file (fl_pk, rf_fk, agent_fk, rf_match_pct, rf_timestamp, pfile_fk)
75 VALUES ($licenseFileId, $licenseRefNumber, $agentId, $matchPercent, $mydate, $pfileId)");
76 $this->
dbManager->queryOnce(
"INSERT INTO uploadtree (uploadtree_pk, upload_fk, pfile_fk, lft, rgt)
77 VALUES ($uploadtreeId, $uploadID, $pfileId, $left, $right)");
78 $stmt = __METHOD__.
'.insert.agent';
79 $this->
dbManager->prepare($stmt,
"INSERT INTO agent (agent_pk, agent_name, agent_rev, agent_enabled) VALUES ($1,$2,$3,$4)");
80 $this->
dbManager->execute($stmt,array($agentId, $agentName, $agentRev,
'true'));
83 $itemTreeBounds =
new ItemTreeBounds($uploadtreeId,
"uploadtree",$uploadID,$left,$right);
84 $matches = $licDao->getAgentFileLicenseMatches($itemTreeBounds);
86 $licenseRef =
new LicenseRef($licenseRefNumber, $lic0[
'rf_shortname'], $lic0[
'rf_fullname'], $lic0[
'rf_spdx_id']);
87 $agentRef =
new AgentRef($agentId, $agentName, $agentRev);
88 $expected = array(
new LicenseMatch($pfileId, $licenseRef, $agentRef, $licenseFileId, $matchPercent) );
90 assertThat($matches, equalTo($expected));
91 assertThat($matches[0], is(anInstanceOf(LicenseMatch::class)) );
92 $this->addToAssertionCount(\Hamcrest\MatcherAssert::getCount()-$this->assertCountBefore);
95 public function testGetLicenseByShortName()
98 $this->testDb->insertData_license_ref($limit=3);
99 $licDao =
new LicenseDao($this->
dbManager);
100 $lic0 = $this->
dbManager->getSingleRow(
"Select rf_shortname from license_ref limit 1");
101 $sname = $lic0[
'rf_shortname'];
102 $lic = $licDao->getLicenseByShortName($sname);
103 $this->assertInstanceOf(
'Fossology\Lib\Data\License', $lic);
104 $this->assertEquals($sname, $lic->getShortName());
106 $sname =
"Self-destructing license";
107 $lic = $licDao->getLicenseByShortName($sname);
108 $this->assertNull($lic);
111 public function testGetLicenseId()
114 $this->testDb->insertData_license_ref($limit=3);
115 $licDao =
new LicenseDao($this->
dbManager);
116 $lic0 = $this->
dbManager->getSingleRow(
"Select rf_pk from license_ref limit 1");
117 $id = $lic0[
'rf_pk'];
118 $lic = $licDao->getLicenseById($id);
119 $this->assertInstanceOf(
'Fossology\Lib\Data\License', $lic);
120 $this->assertEquals($id, $lic->getId());
123 $lic = $licDao->getLicenseById($invalidId);
124 $this->assertNull($lic);
127 public function testGetLicenseRefs()
130 $this->testDb->insertData_license_ref();
131 $licDao =
new LicenseDao($this->
dbManager);
132 $licAll = $licDao->getLicenseRefs();
133 $cntA = $this->
dbManager->getSingleRow(
"Select count(*) cnt from license_ref limit 1");
134 $this->assertEquals($cntA[
'cnt'], count($licAll));
135 $this->assertInstanceOf(
'Fossology\Lib\Data\LicenseRef', $licAll[0]);
138 public function testGetLicenseShortnamesContained()
140 $this->testDb->createPlainTables(array(
'license_file',
'uploadtree'));
142 $this->
dbManager->queryOnce(
"CREATE TABLE \"uploadtree_a\" AS SELECT * FROM uploadtree");
143 $this->testDb->createViews(array(
'license_file_ref'));
144 $this->testDb->insertData(array(
'license_file',
'uploadtree_a'));
145 $this->testDb->insertData_license_ref($limit=3);
146 $stmt = __METHOD__.
'.select.license_ref';
147 $this->
dbManager->prepare($stmt,
"SELECT rf_pk,rf_shortname FROM license_ref");
148 $licRes = $this->
dbManager->execute($stmt);
150 while ($erg=$this->
dbManager->fetchArray($licRes)) {
151 $licAll[$erg[
'rf_pk']] = $erg[
'rf_shortname'];
161 $mydate =
"'2014-06-04 14:01:30.551093+02'";
162 foreach ($licAll as $licenseRefNumber=>$shortname) {
163 $this->
dbManager->queryOnce(
"INSERT INTO license_file (rf_fk, agent_fk, rf_match_pct, rf_timestamp, pfile_fk)
164 VALUES ($licenseRefNumber, $agentId, $matchPercent, $mydate, $pfileId)");
166 $this->
dbManager->queryOnce(
"INSERT INTO uploadtree (uploadtree_pk, upload_fk, pfile_fk, lft, rgt)
167 VALUES ($uploadtreeId, $uploadId, $pfileId, $left, $right)");
169 $licDao =
new LicenseDao($this->
dbManager);
170 $itemTreeBounds =
new ItemTreeBounds($uploadtreeId,
"uploadtree",$uploadId,$left,$right);
171 $licenses = $licDao->getLicenseShortnamesContained($itemTreeBounds);
173 assertThat($licenses, is(arrayContainingInAnyOrder(array_values($licAll))));
175 $licensesForBadAgent = $licDao->getLicenseShortnamesContained($itemTreeBounds,array(2*$agentId));
176 assertThat($licensesForBadAgent, is(emptyArray()));
178 $licensesForNoAgent = $licDao->getLicenseShortnamesContained($itemTreeBounds,array());
179 assertThat($licensesForNoAgent, is(emptyArray()));
181 $this->addToAssertionCount(\Hamcrest\MatcherAssert::getCount()-$this->assertCountBefore);
185 public function testGetLicenseIdPerPfileForAgentId()
187 $this->testDb->createPlainTables(array(
'license_file',
'uploadtree',
'agent'));
189 $this->testDb->insertData(array(
'agent'));
190 $this->testDb->createViews(array(
'license_file_ref'));
191 $this->testDb->insertData_license_ref($limit=3);
192 $licAll = $this->
dbManager->createMap(
'license_ref',
'rf_pk',
'rf_shortname');
193 $rf_pk_all = array_keys($licAll);
194 $rf_pk = $rf_pk_all[0];
195 $uploadtreetable_name =
'uploadtree';
196 $this->
dbManager->insertInto(
'license_file',
197 'fl_pk, rf_fk, agent_fk, rf_match_pct, rf_timestamp, pfile_fk, server_fk',
198 array(1, $rf_pk, $agentId = 5, $matchPercent = 50, $mydate =
"'2014-06-04 14:01:30.551093+02'", $pfileId=42, 1) );
202 $containerMode = 1<<29;
203 $nonArtifactChildId = $uploadtreeId+2;
204 $this->
dbManager->insertTableRow(
'uploadtree',
205 array(
'uploadtree_pk'=>$uploadtreeId,
'upload_fk'=>$uploadId,
'pfile_fk'=>0,
206 'lft'=>$left,
'rgt'=>$left+5,
'parent'=>NULL,
'ufile_mode'=>$containerMode));
207 $this->
dbManager->insertTableRow(
'uploadtree',
208 array(
'uploadtree_pk'=>$uploadtreeId+1,
'upload_fk'=>$uploadId,
'pfile_fk'=>0,
209 'lft'=>$left+1,
'rgt'=>$left+4,
'parent'=>$uploadtreeId,
'ufile_mode'=>$containerMode));
210 $this->
dbManager->insertTableRow(
'uploadtree',
211 array(
'uploadtree_pk'=>$uploadtreeId+2,
'upload_fk'=>$uploadId,
'pfile_fk'=>$pfileId,
212 'lft'=>$left+2,
'rgt'=>$left+3,
'parent'=>$uploadtreeId+1,
'ufile_mode'=>0));
214 $licDao =
new LicenseDao($this->
dbManager);
215 $itemTreeBounds =
new ItemTreeBounds($uploadtreeId,$uploadtreetable_name,$uploadId,$left,$left+5);
217 $row = array(
'pfile_id'=>$pfileId,
'license_id'=>$rf_pk,
'match_percentage'=>$matchPercent,
'agent_id'=>$agentId,
'uploadtree_pk'=>$nonArtifactChildId);
218 $expected = array($pfileId=>array($rf_pk=>$row));
219 $itemRestriction = array($nonArtifactChildId, $nonArtifactChildId+7);
221 $licensesForGoodAgent = $licDao->getLicenseIdPerPfileForAgentId($itemTreeBounds, $selectedAgentId = $agentId, $itemRestriction);
222 assertThat($licensesForGoodAgent, is(equalTo($expected)));
224 $licensesForBadAgent = $licDao->getLicenseIdPerPfileForAgentId($itemTreeBounds, $selectedAgentId = 1+$agentId, $itemRestriction);
225 assertThat($licensesForBadAgent, is(equalTo(array())));
227 $licensesOutside = $licDao->getLicenseIdPerPfileForAgentId($itemTreeBounds, $selectedAgentId = $agentId, array());
228 assertThat($licensesOutside, is(equalTo(array())));
230 $this->addToAssertionCount(\Hamcrest\MatcherAssert::getCount()-$this->assertCountBefore);
233 public function testGetLicensesPerFileNameForAgentId()
235 $this->testDb->createPlainTables(array(
'license_file',
'uploadtree',
'agent'));
237 $this->testDb->insertData(array(
'agent'));
238 $this->testDb->createViews(array(
'license_file_ref'));
239 $this->testDb->insertData_license_ref($limit=3);
240 $licAll = $this->
dbManager->createMap(
'license_ref',
'rf_pk',
'rf_shortname');
241 $rf_pk_all = array_keys($licAll);
243 $uploadtreetable_name =
'uploadtree';
264 $mainUploadtreeId = 80895;
265 $uploadtreeId = $mainUploadtreeId;
267 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'pfile_fk'=>70585,
'lft'=>1,
'rgt'=>36,
'ufile_mode'=>536904704,
'ufile_name'=>
'project.tar.gz'));
268 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'parent'=>80895,
'realparent'=>80895,
'pfile_fk'=>0,
'lft'=>2,
'rgt'=>35,
'ufile_mode'=>805323776,
'ufile_name'=>
'artifact.dir'));
269 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'parent'=>80896,
'realparent'=>80895,
'pfile_fk'=>70586,
'lft'=>3,
'rgt'=>34,
'ufile_mode'=>536903680,
'ufile_name'=>
'project.tar'));
270 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'parent'=>80897,
'realparent'=>80897,
'pfile_fk'=>0,
'lft'=>4,
'rgt'=>33,
'ufile_mode'=>805323776,
'ufile_name'=>
'artifact.dir'));
271 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'parent'=>80898,
'realparent'=>80897,
'pfile_fk'=>0,
'lft'=>5,
'rgt'=>32,
'ufile_mode'=>536888320,
'ufile_name'=>
'project'));
272 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'parent'=>80899,
'realparent'=>80899,
'pfile_fk'=>0,
'lft'=>6,
'rgt'=>7,
'ufile_mode'=>536888320,
'ufile_name'=>
'folderA'));
273 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'parent'=>80899,
'realparent'=>80899,
'pfile_fk'=>0,
'lft'=>24,
'rgt'=>31,
'ufile_mode'=>536888320,
'ufile_name'=>
'folderC'));
274 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'parent'=>80901,
'realparent'=>80901,
'pfile_fk'=>70587,
'lft'=>29,
'rgt'=>30,
'ufile_mode'=>33152,
'ufile_name'=>
'CfileC'));
275 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'parent'=>80901,
'realparent'=>80901,
'pfile_fk'=>70588,
'lft'=>25,
'rgt'=>26,
'ufile_mode'=>33152,
'ufile_name'=>
'CfileA'));
276 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'parent'=>80901,
'realparent'=>80901,
'pfile_fk'=>70589,
'lft'=>27,
'rgt'=>28,
'ufile_mode'=>33152,
'ufile_name'=>
'CfileB'));
277 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'parent'=>80899,
'realparent'=>80899,
'pfile_fk'=>0,
'lft'=>8,
'rgt'=>23,
'ufile_mode'=>536888320,
'ufile_name'=>
'folderB'));
278 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'parent'=>80905,
'realparent'=>80905,
'pfile_fk'=>0,
'lft'=>21,
'rgt'=>22,
'ufile_mode'=>536888320,
'ufile_name'=>
'subBfolderC'));
279 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'parent'=>80905,
'realparent'=>80905,
'pfile_fk'=>0,
'lft'=>9,
'rgt'=>10,
'ufile_mode'=>536888320,
'ufile_name'=>
'subBfolderA'));
280 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'parent'=>80905,
'realparent'=>80905,
'pfile_fk'=>0,
'lft'=>11,
'rgt'=>20,
'ufile_mode'=>536888320,
'ufile_name'=>
'subBfolderB'));
281 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'parent'=>80908,
'realparent'=>80908,
'pfile_fk'=>0,
'lft'=>12,
'rgt'=>19,
'ufile_mode'=>536888320,
'ufile_name'=>
'subBBsubBfolderA'));
282 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'parent'=>80909,
'realparent'=>80909,
'pfile_fk'=>70590,
'lft'=>17,
'rgt'=>18,
'ufile_mode'=>33152,
'ufile_name'=>
'BBBfileC'));
283 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'parent'=>80909,
'realparent'=>80909,
'pfile_fk'=>70591,
'lft'=>15,
'rgt'=>16,
'ufile_mode'=>33152,
'ufile_name'=>
'BBBfileB'));
284 $this->
dbManager->insertTableRow($uploadtreetable_name, array(
'uploadtree_pk'=>$uploadtreeId++,
'upload_fk'=>$uploadId,
'parent'=>80909,
'realparent'=>80909,
'pfile_fk'=>70592,
'lft'=>13,
'rgt'=>14,
'ufile_mode'=>33152,
'ufile_name'=>
'BBBfileA'));
293 $someDate =
"'2016-02-08 16:08:59.333096+00'";
294 $this->
dbManager->insertInto(
'license_file',
'fl_pk, rf_fk, agent_fk, rf_timestamp, pfile_fk, server_fk', array(1, $rf_pk_all[0], $agentId, $someDate, 70592, 1) );
295 $this->
dbManager->insertInto(
'license_file',
'fl_pk, rf_fk, agent_fk, rf_timestamp, pfile_fk, server_fk', array(2, $rf_pk_all[1], $agentId+1, $someDate, 70591, 1) );
296 $this->
dbManager->insertInto(
'license_file',
'fl_pk, rf_fk, agent_fk, rf_timestamp, pfile_fk, server_fk', array(3, $rf_pk_all[0], $agentId, $someDate, 70590, 1) );
297 $this->
dbManager->insertInto(
'license_file',
'fl_pk, rf_fk, agent_fk, rf_timestamp, pfile_fk, server_fk', array(4, $rf_pk_all[1], $agentId, $someDate, 70590, 1) );
299 $licDao =
new LicenseDao($this->
dbManager);
300 $itemTreeBounds =
new ItemTreeBounds($mainUploadtreeId,$uploadtreetable_name,$uploadId,1,36);
304 $result = $licDao->getLicensesPerFileNameForAgentId($itemTreeBounds);
306 $key =
"project.tar.gz/project.tar/project/folderB/subBfolderB/subBBsubBfolderA/BBBfileA";
307 $this->assertArrayHasKey($key, $result);
308 $expected = $licAll[$rf_pk_all[0]];
309 assertThat($result[$key][
'scanResults'][0], is(equalTo($expected)));
311 $key =
"project.tar.gz/project.tar/project/folderB/subBfolderB/subBBsubBfolderA/BBBfileB";
312 $this->assertArrayHasKey($key, $result);
314 $key =
"project.tar.gz/project.tar/project/folderB/subBfolderB/subBBsubBfolderA/BBBfileC";
315 $this->assertArrayHasKey($key, $result);
316 $this->assertContains($licAll[$rf_pk_all[0]],$result[$key][
'scanResults']);
317 $this->assertContains($licAll[$rf_pk_all[1]],$result[$key][
'scanResults']);
319 $key =
"project.tar.gz";
320 $this->assertArrayHasKey($key, $result);
324 $result = $licDao->getLicensesPerFileNameForAgentId($itemTreeBounds, array(),
true,
'',
true);
327 assertThat($result, is(equalTo($expected)));
331 $result = $licDao->getLicensesPerFileNameForAgentId($itemTreeBounds, array($agentId));
333 $key =
"project.tar.gz/project.tar/project/folderB/subBfolderB/subBBsubBfolderA/BBBfileA";
334 $this->assertArrayHasKey($key, $result);
336 $key =
"project.tar.gz/project.tar/project/folderB/subBfolderB/subBBsubBfolderA/BBBfileB";
337 $this->assertArrayNotHasKey($key, $result);
341 $result = $licDao->getLicensesPerFileNameForAgentId($itemTreeBounds, array($agentId),
true,
"fileC");
343 $key =
"project.tar.gz/project.tar/project/folderB/subBfolderB/subBBsubBfolderA/BBBfileA";
344 $this->assertArrayHasKey($key, $result);
346 $key =
"project.tar.gz/project.tar/project/folderB/subBfolderB/subBBsubBfolderA/BBBfileB";
347 $this->assertArrayNotHasKey($key, $result);
349 $key =
"project.tar.gz/project.tar/project/folderB/subBfolderB/subBBsubBfolderA/BBBfileC";
350 $this->assertArrayNotHasKey($key, $result);
354 $result = $licDao->getLicensesPerFileNameForAgentId($itemTreeBounds, array($agentId));
356 $key =
"project.tar.gz";
357 $this->assertArrayHasKey($key, $result);
359 $key =
"project.tar.gz/project.tar";
360 $this->assertArrayHasKey($key, $result);
362 $this->addToAssertionCount(\Hamcrest\MatcherAssert::getCount()-$this->assertCountBefore);
365 public function testIsNewLicense()
369 $this->testDb->insertData_license_ref();
370 $this->
dbManager->queryOnce(
"CREATE TABLE license_candidate AS SELECT *,$groupId group_fk FROM license_ref LIMIT 1");
371 $licCandi = $this->
dbManager->getSingleRow(
"SELECT * FROM license_candidate",array(),__METHOD__.
'.candi');
372 $this->
dbManager->queryOnce(
"DELETE FROM license_ref WHERE rf_pk=$licCandi[rf_pk]");
373 $licRef = $this->
dbManager->getSingleRow(
"SELECT * FROM license_ref LIMIT 1",array(),__METHOD__.
'.ref');
374 $licDao =
new LicenseDao($this->
dbManager);
376 assertThat($this->
dbManager->getSingleRow(
377 "SELECT count(*) cnt FROM license_ref WHERE rf_shortname=$1",array($licCandi[
'rf_shortname']),__METHOD__.
'.check'),
378 is(equalTo(array(
'cnt'=>0))));
379 $this->assertCountBefore++;
381 assertThat($licDao->isNewLicense($licRef[
'rf_shortname'],$groupId), equalTo(FALSE));
382 assertThat($licDao->isNewLicense($licRef[
'rf_shortname'],0), equalTo(FALSE));
384 assertThat($licDao->isNewLicense($licCandi[
'rf_shortname'],$groupId), equalTo(FALSE));
385 assertThat($licDao->isNewLicense($licCandi[
'rf_shortname'],$groupId+1), equalTo(TRUE));
386 assertThat($licDao->isNewLicense($licCandi[
'rf_shortname'],0), equalTo(TRUE));
388 assertThat($licDao->isNewLicense(
'(a new shortname)',$groupId), equalTo(TRUE));
389 assertThat($licDao->isNewLicense(
'(a new shortname)',0), equalTo(TRUE));
391 $this->addToAssertionCount(\Hamcrest\MatcherAssert::getCount()-$this->assertCountBefore);
394 public function testGetAgentFileLicenseMatchesWithLicenseMapping()
396 $this->testDb->createPlainTables(array(
'uploadtree',
'license_file',
'agent',
'license_map'));
398 $this->testDb->insertData_license_ref();
400 $lic0 = $this->
dbManager->getSingleRow(
"Select * from license_ref limit 1",array(),__METHOD__.
'.anyLicense');
401 $licRefId = $lic0[
'rf_pk'];
412 $lic1 = $this->
dbManager->getSingleRow(
"SELECT * FROM license_ref WHERE rf_pk!=$1 LIMIT 1",array($licRefId),__METHOD__.
'.anyOtherLicense');
413 $licVarId = $lic1[
'rf_pk'];
414 $mydate =
"'2014-06-04 14:01:30.551093+02'";
415 $this->
dbManager->insertTableRow(
'license_map', array(
'license_map_pk'=>0,
'rf_fk'=>$licVarId,
'rf_parent'=>$licRefId,
'usage'=>LicenseMap::CONCLUSION));
416 $this->
dbManager->queryOnce(
"INSERT INTO license_file (fl_pk, rf_fk, agent_fk, rf_match_pct, rf_timestamp, pfile_fk)
417 VALUES ($licenseFileId, $licVarId, $agentId, $matchPercent, $mydate, $pfileId)");
418 $this->
dbManager->queryOnce(
"INSERT INTO uploadtree (uploadtree_pk, upload_fk, pfile_fk, lft, rgt)
419 VALUES ($uploadtreeId, $uploadID, $pfileId, $left, $right)");
420 $stmt = __METHOD__.
'.insert.agent';
421 $this->
dbManager->prepare($stmt,
"INSERT INTO agent (agent_pk, agent_name, agent_rev, agent_enabled) VALUES ($1,$2,$3,$4)");
422 $this->
dbManager->execute($stmt,array($agentId, $agentName, $agentRev,
'true'));
424 $licDao =
new LicenseDao($this->
dbManager);
425 $itemTreeBounds =
new ItemTreeBounds($uploadtreeId,
"uploadtree",$uploadID,$left,$right);
426 $matches = $licDao->getAgentFileLicenseMatches($itemTreeBounds,LicenseMap::CONCLUSION);
428 $licenseRef =
new LicenseRef($licRefId, $lic0[
'rf_shortname'], $lic0[
'rf_fullname'], $lic0[
'rf_spdx_id']);
429 $agentRef =
new AgentRef($agentId, $agentName, $agentRev);
430 $expected = array(
new LicenseMatch($pfileId, $licenseRef, $agentRef, $licenseFileId, $matchPercent) );
432 assertThat($matches, equalTo($expected));
433 $this->addToAssertionCount(\Hamcrest\MatcherAssert::getCount()-$this->assertCountBefore);
Wrapper class for license map.
fo_dbManager * dbManager
fo_dbManager object