<?php namespace ActivityPhpTest\Server; use ActivityPhpTest\MyCustomOntology; use ActivityPhp\Server; use ActivityPhp\Type; use ActivityPhp\Type\Ontology; use Exception; use PHPUnit\Framework\TestCase; class ServerOntologyTest extends TestCase { /** * Check that an ontology can be define from server configuration */ public function testOntologyServerLoading() { $ontologies = [ 'peertube' ]; $server = new Server([ 'ontologies' => $ontologies, 'logger' => [ 'driver' => '\Psr\Log\NullLogger' ], 'cache' => [ 'enabled' => false, ] ]); $person = Type::create('Person', ['playlists' => 'bob']); $this->assertEquals( 'bob', $person->getPlaylists() ); Ontology::clear(); } /** * Add a new ontology */ public function testAddCustomOntology() { $ontologies = [ 'custom-ontology' => MyCustomOntology::class, ]; $server = new Server([ 'ontologies' => $ontologies, 'logger' => [ 'driver' => '\Psr\Log\NullLogger' ], 'cache' => [ 'enabled' => false, ] ]); $person = Type::create('Person', ['myOntologyField' => 'bob']); $this->assertEquals( 'bob', $person->myOntologyField ); Ontology::clear(); } /** * Check that an ontology can be define from server configuration */ public function testLoadAllOntologiesServerLoading() { $ontologies = [ '*' ]; $server = new Server([ 'ontologies' => $ontologies, 'logger' => [ 'driver' => '\Psr\Log\NullLogger' ], 'cache' => [ 'enabled' => false, ] ]); $person = Type::create('Person', ['playlists' => 'bob']); $this->assertEquals( 'bob', $person->getPlaylists() ); Ontology::clear(); } /** * Try to load an undefined ontology */ public function testLoadUndefinedOntologyLoading() { $this->expectException(Exception::class); $ontologies = [ 'undefined' ]; $server = new Server([ 'ontologies' => $ontologies, 'logger' => [ 'driver' => '\Psr\Log\NullLogger' ], 'cache' => [ 'enabled' => false, ] ]); } } __halt_compiler();----SIGNATURE:----I4Sv/apqpU7axWrs7ggXZYObUIdaYk48ZUfCKrWNo5UirUroOv03CsCjWXDupGWjkCTVetH8FSz+Yag3Q2uxzqQw1zEpgnwuCQGqTO98HH1IzUxTYqK7YuZSTjuWIztHKXpMlcZu3EHBfc4+7Lc+qqeaa8WBajm690gz0dBY6RTI/3SwLupnFCZBLuJ+57eX54qbyOvJZ0kw2zeius4l/G7PcRv4hcTUrgzRgvRUcpRjx1B+l3KPzRYt0t5qRuQdo7hp+ob73hJD/SaJjV28oIuPMZHVIaFSucFPC4Qh9GEzxa+p93l3UjfUSjfC/AQBG+5VzRQQCGyC25UqXMNx4uVkqbLyeWsRuCNOxhKRmyw4/SA3ZXho4PplMbN9ACtaXJiHLheFGgGN+6s5RC1/mxjZnYAyQGhA7aoTnkphP6zHNcJb7UmZTyMRHsw27JPhHYrVk7+kcKlRlXrLyHZnids6MKUNt4IIsIGwL19HCp78QKOuZGnWIQi6YgnvFhoABTEJKwn4gnr25EJiP1kydETus7LJG44NyZhaA84CGl33dXKA0NwXc1B8gFDxmIq3SeQSTndfZjeJi71m5f2g5W1Z00hcuZCKKkdkMSAC//NH01Gcr++cr5FZK+2vegfAfAcJqxO8n1qGdgSDZCAS2heb++TFtdESs80gyR6GN9M=----ATTACHMENT:----NTY1ODIzODE2ODI3OTU0NyA2MjU5NTM1Mjc0NzMzOTc3IDg2MTEzNDIxNzcwMzUwNTc=