ILIAS  release_5-0 Revision 5.0.0-1144-gc4397b1f870
All Data Structures Namespaces Files Functions Variables Modules Pages
ilTermsOfServiceAgreementsByLanguageTableDataProviderTest Class Reference
+ Inheritance diagram for ilTermsOfServiceAgreementsByLanguageTableDataProviderTest:
+ Collaboration diagram for ilTermsOfServiceAgreementsByLanguageTableDataProviderTest:

Public Member Functions

 setUp ()
 
 testAgreementByLanguageProviderCanBeCreatedByFactory ()
 
 testProviderReturnsAResultForEveryInstalledLanguage (ilTermsOfServiceAgreementByLanguageProvider $provider)
 
 testProviderShouldReturnLanguageAdapterWhenLanguageAdapterIsSet (ilTermsOfServiceAgreementByLanguageProvider $provider)
 
 testProviderShouldReturnSourceDirectoriesWhenSourceDirectoriesAreSet (ilTermsOfServiceAgreementByLanguageProvider $provider)
 

Protected Attributes

 $backupGlobals = false
 

Private Member Functions

 isVsfStreamInstalled ()
 
 skipIfvfsStreamNotSupported ()
 

Detailed Description

Member Function Documentation

◆ isVsfStreamInstalled()

ilTermsOfServiceAgreementsByLanguageTableDataProviderTest::isVsfStreamInstalled ( )
private
Returns
bool

Definition at line 18 of file ilTermsOfServiceAgreementsByLanguageTableDataProviderTest.php.

Referenced by setUp(), and skipIfvfsStreamNotSupported().

19  {
20  return @include_once('vfsStream.php');
21  }
+ Here is the caller graph for this function:

◆ setUp()

ilTermsOfServiceAgreementsByLanguageTableDataProviderTest::setUp ( )

Definition at line 37 of file ilTermsOfServiceAgreementsByLanguageTableDataProviderTest.php.

References isVsfStreamInstalled().

38  {
39  if($this->isVsfStreamInstalled())
40  {
41  vfsStreamWrapper::register();
42  }
43  }
+ Here is the call graph for this function:

◆ skipIfvfsStreamNotSupported()

ilTermsOfServiceAgreementsByLanguageTableDataProviderTest::skipIfvfsStreamNotSupported ( )
private

Definition at line 26 of file ilTermsOfServiceAgreementsByLanguageTableDataProviderTest.php.

References isVsfStreamInstalled().

Referenced by testProviderReturnsAResultForEveryInstalledLanguage().

27  {
28  if(!$this->isVsfStreamInstalled())
29  {
30  $this->markTestSkipped('Requires vfsStream (http://vfs.bovigo.org)');
31  }
32  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ testAgreementByLanguageProviderCanBeCreatedByFactory()

ilTermsOfServiceAgreementsByLanguageTableDataProviderTest::testAgreementByLanguageProviderCanBeCreatedByFactory ( )
Returns
ilTermsOfServiceAgreementByLanguageProvider

Definition at line 48 of file ilTermsOfServiceAgreementsByLanguageTableDataProviderTest.php.

References ilTermsOfServiceTableDataProviderFactory\CONTEXT_AGRREMENT_BY_LANGUAGE.

49  {
50  require_once 'Services/TermsOfService/classes/class.ilTermsOfServiceTableDataProviderFactory.php';
52  $factory->setLanguageAdapter($this->getMockBuilder('ilLanguage')->disableOriginalConstructor()->getMock());
54 
55  $this->assertInstanceOf('ilTermsOfServiceAgreementByLanguageProvider', $provider);
56  $this->assertInstanceOf('ilTermsOfServiceTableDataProvider', $provider);
57 
58  return $provider;
59  }

◆ testProviderReturnsAResultForEveryInstalledLanguage()

ilTermsOfServiceAgreementsByLanguageTableDataProviderTest::testProviderReturnsAResultForEveryInstalledLanguage ( ilTermsOfServiceAgreementByLanguageProvider  $provider)
Parameters
ilTermsOfServiceAgreementByLanguageProvider$providertestAgreementByLanguageProviderCanBeCreatedByFactory

Definition at line 65 of file ilTermsOfServiceAgreementsByLanguageTableDataProviderTest.php.

References $data, $lng, ilTermsOfServiceAgreementByLanguageProvider\getList(), ilTermsOfServiceAgreementByLanguageProvider\setLanguageAdapter(), ilTermsOfServiceAgreementByLanguageProvider\setSourceDirectories(), and skipIfvfsStreamNotSupported().

66  {
68 
69  $client_rel_path = implode('/', array('clients', 'default', 'agreement'));
70  $global_rel_path = implode('/', array('global', 'agreement'));
71 
72  $root = vfsStreamWrapper::setRoot(new vfsStreamDirectory('root'));
73  $customizing_dir = vfsStream::newDirectory('Customizing')->at($root);
74 
75  $client_dir = vfsStream::newDirectory($client_rel_path)->at($customizing_dir);
76  vfsStream::newFile('agreement_de.html', 0777)->at($client_dir);
77  file_put_contents(vfsStream::url('root/Customizing/' . $client_rel_path . '/agreement_de.html'), 'phpunit');
78 
79  $global_dir = vfsStream::newDirectory($global_rel_path)->at($customizing_dir);
80  vfsStream::newFile('agreement_en.html', 0777)->at($global_dir);
81  file_put_contents(vfsStream::url('root/Customizing/' . $global_rel_path . '/agreement_en.html'), 'phpunit');
82 
83  $provider->setSourceDirectories(array(
84  vfsStream::url('root/Customizing/' . $client_rel_path),
85  vfsStream::url('root/Customizing/' . $global_rel_path)
86  ));
87 
88  $lng = $this->getMockBuilder('ilLanguage')->disableOriginalConstructor()->getMock();
89  $installed_languages = array('en', 'de', 'fr');
90  $lng->expects($this->once())->method('getInstalledLanguages')->will($this->onConsecutiveCalls($installed_languages));
91  $provider->setLanguageAdapter($lng);
92 
93  $data = $provider->getList(array(), array());
94  $this->assertArrayHasKey('items', $data);
95  $this->assertArrayHasKey('cnt', $data);
96  $this->assertCount(count($installed_languages), $data['items']);
97  $this->assertEquals(count($installed_languages), $data['cnt']);
98 
99  for($i = 0; $i < count($installed_languages); $i++)
100  {
101  $this->assertArrayHasKey('language', $data['items'][$i]);
102  $this->assertArrayHasKey('agreement', $data['items'][$i]);
103  $this->assertArrayHasKey('agreement_document', $data['items'][$i]);
104  $this->assertArrayHasKey('agreement_document_modification_ts', $data['items'][$i]);
105 
106  if($installed_languages[$i] == 'fr')
107  {
108  $this->assertFalse(file_exists($data['items'][$i]['agreement_document']));
109  }
110  else
111  {
112  $this->assertTrue(file_exists($data['items'][$i]['agreement_document']));
113  }
114  }
115  }
getList(array $params, array $filter)
{Table paramaters like limit or order Filter settings array}
global $lng
Definition: privfeed.php:40
+ Here is the call graph for this function:

◆ testProviderShouldReturnLanguageAdapterWhenLanguageAdapterIsSet()

ilTermsOfServiceAgreementsByLanguageTableDataProviderTest::testProviderShouldReturnLanguageAdapterWhenLanguageAdapterIsSet ( ilTermsOfServiceAgreementByLanguageProvider  $provider)
Parameters
ilTermsOfServiceAgreementByLanguageProvider$providertestAgreementByLanguageProviderCanBeCreatedByFactory

Definition at line 121 of file ilTermsOfServiceAgreementsByLanguageTableDataProviderTest.php.

References ilTermsOfServiceAgreementByLanguageProvider\getLanguageAdapter(), and ilTermsOfServiceAgreementByLanguageProvider\setLanguageAdapter().

122  {
123  $expected = $this->getMockBuilder('ilLanguage')->disableOriginalConstructor()->getMock();
124 
125  $provider->setLanguageAdapter($expected);
126  $this->assertEquals($expected, $provider->getLanguageAdapter());
127  }
+ Here is the call graph for this function:

◆ testProviderShouldReturnSourceDirectoriesWhenSourceDirectoriesAreSet()

ilTermsOfServiceAgreementsByLanguageTableDataProviderTest::testProviderShouldReturnSourceDirectoriesWhenSourceDirectoriesAreSet ( ilTermsOfServiceAgreementByLanguageProvider  $provider)
Parameters
ilTermsOfServiceAgreementByLanguageProvider$providertestAgreementByLanguageProviderCanBeCreatedByFactory

Definition at line 133 of file ilTermsOfServiceAgreementsByLanguageTableDataProviderTest.php.

References ilTermsOfServiceAgreementByLanguageProvider\getSourceDirectories(), and ilTermsOfServiceAgreementByLanguageProvider\setSourceDirectories().

134  {
135  $expected = array('/phpunit', '/ilias');
136 
137  $provider->setSourceDirectories($expected);
138  $this->assertEquals($expected, $provider->getSourceDirectories());
139  }
+ Here is the call graph for this function:

Field Documentation

◆ $backupGlobals

ilTermsOfServiceAgreementsByLanguageTableDataProviderTest::$backupGlobals = false
protected

The documentation for this class was generated from the following file: