Open Data Catalog v2.0.0
DatabaseTableFactoryTest.php
Go to the documentation of this file.
1 <?php
2 
4 
5 use Dkan\Datastore\Resource;
6 use Drupal\Core\Database\Connection;
7 use MockChain\Chain;
10 use PHPUnit\Framework\TestCase;
11 
15 class DatabaseTableFactoryTest extends TestCase {
16 
20  public function test() {
21  $connection = (new Chain($this))
22  ->add(Connection::class, "destroy", NULL)
23  ->getMock();
24 
25  $databaseTable = (new Chain($this))
26  ->add(DatabaseTable::class, "retrieveAll", [])
27  ->getMock();
28 
29  $builder = $this->getMockBuilder(DatabaseTableFactory::class);
30  $factory = $builder->setConstructorArgs([$connection])
31  ->setMethods(["getDatabaseTable"])
32  ->getMock();
33 
34  $factory->method("getDatabaseTable")->willReturn($databaseTable);
35 
36  $resource = new Resource("blah", "", "text/csv");
37  $object = $factory->getInstance($resource->getId(), ['resource' => $resource]);
38  $this->assertTrue($object instanceof DatabaseTable);
39  }
40 
41 }
Drupal\dkan_datastore\Storage\DatabaseTable
Definition: DatabaseTable.php:16
Drupal\Tests\dkan_datastore\Unit\Storage\DatabaseTableFactoryTest\test
test()
Definition: DatabaseTableFactoryTest.php:20
Drupal\Tests\dkan_datastore\Unit\Storage
Definition: DatabaseTableFactoryTest.php:3
Drupal\dkan_datastore\Storage\DatabaseTableFactory
Definition: DatabaseTableFactory.php:11
Drupal\Tests\dkan_datastore\Unit\Storage\DatabaseTableFactoryTest
Definition: DatabaseTableFactoryTest.php:15