ILIAS  release_7 Revision v7.30-3-g800a261c036
All Data Structures Namespaces Files Functions Variables Modules Pages
ilSkinXMLTest Class Reference
+ Inheritance diagram for ilSkinXMLTest:
+ Collaboration diagram for ilSkinXMLTest:

Public Member Functions

 testSkinNameAndId ()
 
 testAddStyle ()
 
 testGetStyles ()
 
 testAddSubstyle ()
 
 testGetSubStyles ()
 
 testGetAllSubStyles ()
 
 testUpdateParentOfStyle ()
 
 testRemoveStyles ()
 
 testRemoveTestTwice ()
 
 testAsXML ()
 
 testWriteXML ()
 
 testReadXML ()
 

Protected Member Functions

 setUp ()
 
 tearDown ()
 

Protected Attributes

 $skin
 
 $style1 = null
 
 $style2 = null
 
 $substyle1 = null
 
 $substyle2 = null
 
 $system_style_config
 

Detailed Description

Author
Timon Amstutz timon.nosp@m..ams.nosp@m.tutz@.nosp@m.ilub.nosp@m..unib.nosp@m.e.ch
Version
$Id$*

Definition at line 16 of file ilSkinXMLTest.php.

Member Function Documentation

◆ setUp()

ilSkinXMLTest::setUp ( )
protected

Definition at line 50 of file ilSkinXMLTest.php.

References ilSystemStyleSkinContainer\xCopy().

50  : void
51  {
52  $this->skin = new ilSkinXML("skin1", "skin 1");
53 
54  $this->style1 = new ilSkinStyleXML("style1", "Style 1");
55  $this->style1->setCssFile("style1css");
56  $this->style1->setImageDirectory("style1image");
57  $this->style1->setSoundDirectory("style1sound");
58  $this->style1->setFontDirectory("style1font");
59 
60  $this->style2 = new ilSkinStyleXML("style2", "Style 2");
61  $this->style2->setCssFile("style2css");
62  $this->style2->setImageDirectory("style2image");
63  $this->style2->setSoundDirectory("style2sound");
64  $this->style2->setFontDirectory("style2font");
65 
66  $this->substyle1 = new ilSkinStyleXML("substyle1", "Substyle 1");
67  $this->substyle1->setSubstyleOf($this->style1->getId());
68 
69  $this->substyle2 = new ilSkinStyleXML("substyle2", "Substyle 2");
70  $this->substyle2->setSubstyleOf($this->style2->getId());
71 
72  $this->system_style_config = new ilSystemStyleConfigMock();
73 
74  mkdir($this->system_style_config->test_skin_temp_path);
75  ilSystemStyleSkinContainer::xCopy($this->system_style_config->test_skin_original_path, $this->system_style_config->test_skin_temp_path);
76  }
ilSkinXml holds an manages the basic data of a skin as provide by the template of the skin...
ilSystemStyleConfig wraps all 'constants' to ensure the testability of all classes using those 'const...
static xCopy($src, $dest)
Recursive copy of a folder.
+ Here is the call graph for this function:

◆ tearDown()

ilSkinXMLTest::tearDown ( )
protected

Definition at line 78 of file ilSkinXMLTest.php.

References ilSystemStyleSkinContainer\recursiveRemoveDir().

78  : void
79  {
80  ilSystemStyleSkinContainer::recursiveRemoveDir($this->system_style_config->test_skin_temp_path);
81  }
static recursiveRemoveDir($dir)
Recursive delete of a folder.
+ Here is the call graph for this function:

◆ testAddStyle()

ilSkinXMLTest::testAddStyle ( )

Definition at line 89 of file ilSkinXMLTest.php.

90  {
91  $this->assertEquals(count($this->skin), 0);
92  $this->assertEquals(count($this->skin->getStyles()), 0);
93  $this->skin->addStyle($this->style1);
94  $this->assertEquals(count($this->skin), 1);
95  $this->assertEquals(count($this->skin->getStyles()), 1);
96  $this->skin->addStyle($this->style1);
97  $this->assertEquals(count($this->skin), 2);
98  $this->assertEquals(count($this->skin->getStyles()), 2);
99  $this->skin->addStyle($this->style2);
100  $this->assertEquals(count($this->skin), 3);
101  $this->assertEquals(count($this->skin->getStyles()), 3);
102  }

◆ testAddSubstyle()

ilSkinXMLTest::testAddSubstyle ( )

Definition at line 113 of file ilSkinXMLTest.php.

114  {
115  $this->skin->addStyle($this->substyle1);
116  $this->assertEquals(count($this->skin->getStyles()), 1);
117  $this->skin->addStyle($this->substyle2);
118  $this->assertEquals(count($this->skin), 2);
119  }

◆ testAsXML()

ilSkinXMLTest::testAsXML ( )

Definition at line 183 of file ilSkinXMLTest.php.

184  {
185  $this->skin->addStyle($this->style1);
186  $this->skin->addStyle($this->style2);
187  $this->assertEquals($this->skin->asXML(), file_get_contents($this->system_style_config->getCustomizingSkinPath() . "skin1/template.xml"));
188  }

◆ testGetAllSubStyles()

ilSkinXMLTest::testGetAllSubStyles ( )

Definition at line 130 of file ilSkinXMLTest.php.

References $substyle1, and $substyle2.

131  {
132  $this->skin->addStyle($this->style1);
133  $this->skin->addStyle($this->style2);
134  $this->assertEquals($this->skin->getSubstylesOfStyle("style1"), []);
135  $this->skin->addStyle($this->substyle1);
136  $this->skin->addStyle($this->substyle2);
137  $this->assertEquals($this->skin->getSubstylesOfStyle("style1"), [$this->substyle1->getId() => $this->substyle1]);
138  $this->assertEquals($this->skin->getSubstylesOfStyle("style2"), [$this->substyle2->getId() => $this->substyle2]);
139  $this->substyle2->setSubstyleOf($this->style1->getId());
140  $this->assertEquals($this->skin->getSubstylesOfStyle("style1"), [$this->substyle1->getId() => $this->substyle1,$this->substyle2->getId() => $this->substyle2]);
141  }

◆ testGetStyles()

ilSkinXMLTest::testGetStyles ( )

Definition at line 104 of file ilSkinXMLTest.php.

References $style1, and $style2.

105  {
106  $this->skin->addStyle($this->style1);
107  $this->skin->addStyle($this->style2);
108 
109  $this->assertNotEquals($this->skin->getStyle("style2"), $this->style1);
110  $this->assertEquals($this->skin->getStyle("style2"), $this->style2);
111  }

◆ testGetSubStyles()

ilSkinXMLTest::testGetSubStyles ( )

Definition at line 121 of file ilSkinXMLTest.php.

References $substyle1, and $substyle2.

122  {
123  $this->skin->addStyle($this->substyle1);
124  $this->skin->addStyle($this->substyle2);
125 
126  $this->assertNotEquals($this->skin->getStyle("substyle2"), $this->substyle1);
127  $this->assertEquals($this->skin->getStyle("substyle2"), $this->substyle2);
128  }

◆ testReadXML()

ilSkinXMLTest::testReadXML ( )

Definition at line 199 of file ilSkinXMLTest.php.

References $skin.

200  {
201  $skin = ilSkinXML::parseFromXML($this->system_style_config->getCustomizingSkinPath() . "skin1/template.xml");
202  $this->assertEquals($skin->asXML(), file_get_contents($this->system_style_config->getCustomizingSkinPath() . "skin1/template.xml"));
203  }

◆ testRemoveStyles()

ilSkinXMLTest::testRemoveStyles ( )

Definition at line 155 of file ilSkinXMLTest.php.

156  {
157  $this->skin->addStyle($this->style1);
158  $this->skin->addStyle($this->style2);
159  $this->assertEquals(count($this->skin), 2);
160  $this->skin->removeStyle("style1");
161  $this->assertEquals(count($this->skin), 1);
162  $this->skin->removeStyle("style2");
163  $this->assertEquals(count($this->skin), 0);
164  }

◆ testRemoveTestTwice()

ilSkinXMLTest::testRemoveTestTwice ( )

Definition at line 166 of file ilSkinXMLTest.php.

References Vendor\Package\$e, and ilSystemStyleException\INVALID_ID.

167  {
168  $this->skin->addStyle($this->style1);
169  $this->skin->addStyle($this->style2);
170  $this->assertEquals(count($this->skin), 2);
171  $this->skin->removeStyle("style1");
172  $this->assertEquals(count($this->skin), 1);
173  $this->skin->removeStyle("style2");
174  $this->assertEquals(count($this->skin), 0);
175  try {
176  $this->skin->removeStyle("style2");
177  $this->assertTrue(false);
178  } catch (ilSystemStyleException $e) {
179  $this->assertEquals($e->getCode(), ilSystemStyleException::INVALID_ID);
180  }
181  }
Class for advanced editing exception handling in ILIAS.

◆ testSkinNameAndId()

ilSkinXMLTest::testSkinNameAndId ( )

Definition at line 83 of file ilSkinXMLTest.php.

84  {
85  $this->assertEquals("skin1", $this->skin->getId());
86  $this->assertEquals("skin 1", $this->skin->getName());
87  }

◆ testUpdateParentOfStyle()

ilSkinXMLTest::testUpdateParentOfStyle ( )

Definition at line 143 of file ilSkinXMLTest.php.

References $substyle1, and $substyle2.

144  {
145  $this->skin->addStyle($this->style1);
146  $this->skin->addStyle($this->style2);
147  $this->skin->addStyle($this->substyle1);
148  $this->skin->addStyle($this->substyle2);
149  $this->assertEquals($this->skin->getSubstylesOfStyle("style1"), [$this->substyle1->getId() => $this->substyle1]);
150  $this->assertEquals($this->skin->getSubstylesOfStyle("style2"), [$this->substyle2->getId() => $this->substyle2]);
151  $this->skin->updateParentStyleOfSubstyles($this->style2->getId(), $this->style1->getId());
152  $this->assertEquals($this->skin->getSubstylesOfStyle("style1"), [$this->substyle1->getId() => $this->substyle1,$this->substyle2->getId() => $this->substyle2]);
153  }

◆ testWriteXML()

ilSkinXMLTest::testWriteXML ( )

Definition at line 190 of file ilSkinXMLTest.php.

191  {
192  $this->skin->addStyle($this->style1);
193  $this->skin->addStyle($this->style2);
194  $this->skin->writeToXMLFile($this->system_style_config->getCustomizingSkinPath() . "skin1/template-copy.xml");
195  $this->assertEquals(file_get_contents($this->system_style_config->getCustomizingSkinPath() . "skin1/template-copy.xml"), file_get_contents($this->system_style_config->getCustomizingSkinPath() . "skin1/template.xml"));
196  unlink($this->system_style_config->getCustomizingSkinPath() . "skin1/template-copy.xml");
197  }

Field Documentation

◆ $skin

ilSkinXMLTest::$skin
protected

Definition at line 23 of file ilSkinXMLTest.php.

Referenced by testReadXML().

◆ $style1

ilSkinXMLTest::$style1 = null
protected

Definition at line 28 of file ilSkinXMLTest.php.

Referenced by testGetStyles().

◆ $style2

ilSkinXMLTest::$style2 = null
protected

Definition at line 33 of file ilSkinXMLTest.php.

Referenced by testGetStyles().

◆ $substyle1

ilSkinXMLTest::$substyle1 = null
protected

◆ $substyle2

ilSkinXMLTest::$substyle2 = null
protected

◆ $system_style_config

ilSkinXMLTest::$system_style_config
protected

Definition at line 48 of file ilSkinXMLTest.php.


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