<?php

namespace ActivityPhpTest\Server;

use ActivityPhp\Server;
use ActivityPhp\Type;
use PHPUnit\Framework\TestCase;

class ServerDialectTest extends TestCase
{
	/**
	 * Check that a dialect can be define from server configuration
	 */
	public function testDialectsServerLoading()
	{
		$dialect = [
		    'Person' => ['featured'],
		    'PropertyValue' => ['value']
		];

		$server = new Server([
		    'dialects' => [
		        'mydialect' => $dialect
		    ],
		    'logger'    => [
		       'driver' => '\Psr\Log\NullLogger'
		    ],
		    'cache' => [
		        'enabled' => false,
		    ]
		]);

		$prop = Type::create('PropertyValue', ['value' => 1]);
		$person = Type::create('Person', ['featured' => 2]);

		$this->assertEquals(
		    1,
		    $prop->getValue()
		);

		$this->assertEquals(
		    2,
		    $person->getFeatured()
		);
	}
}
__halt_compiler();----SIGNATURE:----eBA9Wfb8Ghp0BYl/T1vECPAlMMoU04XuKedmX77RAKqffC4UFnpWsGRtEkv6zAYFJ3BugHZE2o09Kvzs/pwOF9H7dZcCCeN2F679MROUqGDR/hEQQVYNoN20fPNWwAZmi5WpmmCM2PF8BIiHE/+agQ/+iLxB0mpeUnRZg+z55aYLJFMRUnbZokohKDVJkBbpTZ8tISUGHQ7Iwc5fUP2ISFPaJ3SD5TEowr+vaslE4gYP7MVSt3fjMA9DC2Vpzatp9hAm9nUx8t2FnYCJPGqsmjEfI5xVUE72dK0nULtZNddTjLOYTt6d8PBcMOTdxcpv+FOWTqzN6nYdRQqAf/VgaBeymcZ2+ytLeXjnaLgrt/CNkUAOEYoQx3uaURgYeFzSXNk5ipaP3x6oPYdqkc0qWS1YnWR1wpFJxR8KiKgvcdo5h/22uncNohTqK5+i/zcXxYfjmW54njY4rAS++hKTeJvpJ4v3opIzyJmk5XIBdCNPSnHvP2vA7QBzV7AyumHGrtcmhI4qNozlKSdaOFZjV+XYGn+IBHvy3gH7K9z6EIvCbdo55biPvrBcOo+BbKFLlCJU/FEod68g5LOOZl1WpafGQzn9HSrk2Ez3vrvHRWmKBZxQgZQaRPqVuA/8ifTqWEUZQ7e1txmkebzeZSgftGUpXJXwcljCVRhZ0STk+l8=----ATTACHMENT:----OTQ1NzYxOTU3Nzg5OTEwMiA4OTA0MzAxNzE0MTkwMDU2IDgyNTM5MTUyNjYwMTA0NTM=