4 require_once
'Services/TermsOfService/test/ilTermsOfServiceBaseTest.php';
26 define(
'CLIENT_ID',
'phpunit');
29 vfs\vfsStreamWrapper::register();
39 require_once
'Services/TermsOfService/classes/class.ilTermsOfServiceTableDataProviderFactory.php';
41 $factory->setLanguageAdapter($this->getMockBuilder(
'ilLanguage')->setMethods(
array(
'toJSON',
'getInstalledLanguages'))->disableOriginalConstructor()->getMock());
44 $this->assertInstanceOf(
'ilTermsOfServiceAgreementByLanguageProvider',
$provider);
45 $this->assertInstanceOf(
'ilTermsOfServiceTableDataProvider',
$provider);
56 $client_rel_path = implode(
'/',
array(
'clients',
'default',
'agreement'));
57 $global_rel_path = implode(
'/',
array(
'global',
'agreement'));
59 $root = vfs\vfsStreamWrapper::setRoot(
new vfs\vfsStreamDirectory(
'root'));
60 $customizing_dir = vfs\vfsStream::newDirectory(
'Customizing')->at($root);
62 $client_dir = vfs\vfsStream::newDirectory($client_rel_path)->at($customizing_dir);
63 vfs\vfsStream::newFile(
'agreement_de.html', 0777)->at($client_dir);
64 file_put_contents(vfs\vfsStream::url(
'root/Customizing/' . $client_rel_path .
'/agreement_de.html'),
'phpunit');
66 $global_dir = vfs\vfsStream::newDirectory($global_rel_path)->at($customizing_dir);
67 vfs\vfsStream::newFile(
'agreement_en.html', 0777)->at($global_dir);
68 file_put_contents(vfs\vfsStream::url(
'root/Customizing/' . $global_rel_path .
'/agreement_en.html'),
'phpunit');
71 vfs\vfsStream::url(
'root/Customizing/' . $client_rel_path),
72 vfs\vfsStream::url(
'root/Customizing/' . $global_rel_path)
75 $lng = $this->getMockBuilder(
'ilLanguage')->setMethods(
array(
'toJSON',
'getInstalledLanguages'))->disableOriginalConstructor()->getMock();
76 $installed_languages =
array(
'en',
'de',
'fr');
77 $lng->expects($this->once())->method(
'getInstalledLanguages')->will($this->onConsecutiveCalls($installed_languages));
81 $this->assertArrayHasKey(
'items',
$data);
82 $this->assertArrayHasKey(
'cnt',
$data);
83 $this->assertCount(count($installed_languages),
$data[
'items']);
84 $this->assertEquals(count($installed_languages),
$data[
'cnt']);
86 for($i = 0; $i < count($installed_languages); $i++)
88 $this->assertArrayHasKey(
'language',
$data[
'items'][$i]);
89 $this->assertArrayHasKey(
'agreement',
$data[
'items'][$i]);
90 $this->assertArrayHasKey(
'agreement_document',
$data[
'items'][$i]);
91 $this->assertArrayHasKey(
'agreement_document_modification_ts',
$data[
'items'][$i]);
93 if($installed_languages[$i] ==
'fr')
95 $this->assertFalse(file_exists(
$data[
'items'][$i][
'agreement_document']));
99 $this->assertTrue(file_exists(
$data[
'items'][$i][
'agreement_document']));
110 $expected = $this->getMockBuilder(
'ilLanguage')->setMethods(
array(
'toJSON',
'getInstalledLanguages'))->disableOriginalConstructor()->getMock();
122 $expected =
array(
'/phpunit',
'/ilias');
getList(array $params, array $filter)
{Table paramaters like limit or order Filter settings array}
const CONTEXT_AGRREMENT_BY_LANGUAGE
testProviderShouldReturnSourceDirectoriesWhenSourceDirectoriesAreSet(ilTermsOfServiceAgreementByLanguageProvider $provider)
testProviderShouldReturnLanguageAdapterWhenLanguageAdapterIsSet(ilTermsOfServiceAgreementByLanguageProvider $provider)
testProviderReturnsAResultForEveryInstalledLanguage(ilTermsOfServiceAgreementByLanguageProvider $provider)
setSourceDirectories($terms_of_service_source_directories)
testAgreementByLanguageProviderCanBeCreatedByFactory()
Create styles array
The data for the language used.
defined( 'APPLICATION_ENV')||define( 'APPLICATION_ENV'