| Conditions | 1 |
| Paths | 1 |
| Total Lines | 82 |
| Code Lines | 59 |
| Lines | 0 |
| Ratio | 0 % |
| Changes | 7 | ||
| Bugs | 1 | Features | 2 |
Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.
For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.
Commonly applied refactorings include:
If many parameters/temporary variables are present:
| 1 | <?php |
||
| 95 | public function testSettingProperties() |
||
| 96 | { |
||
| 97 | $definition = new CsvFormat(); |
||
| 98 | |||
| 99 | static::assertSame($definition, $definition->setDelimiter("\t"), "SetDelimiter should be fluent"); |
||
| 100 | static::assertEquals("\t", $definition->getDelimiter(), "Delimiter should be set to '\\t' (tab)"); |
||
| 101 | |||
| 102 | static::assertSame($definition, $definition->setQuote(''), "setQuoteCharacter should be fluent"); |
||
| 103 | static::assertEquals('', $definition->getQuote(), "Quote character should be blank"); |
||
| 104 | static::assertFalse($definition->hasQuote(), "Quoting should be off"); |
||
| 105 | |||
| 106 | static::assertSame($definition, $definition->setNullValue(''), "setNullOutput should be fluent"); |
||
| 107 | static::assertEquals('', $definition->getNullValue(), "Null character should be '' (blank)'"); |
||
| 108 | |||
| 109 | static::assertSame($definition, $definition->setHeaderRow(1), "setHeaders should be fluent"); |
||
| 110 | static::assertTrue($definition->hasHeaderRow(), "Headers should be on"); |
||
| 111 | static::assertEquals(1, $definition->getHeaderRow(), "Headers should be set to 1"); |
||
| 112 | |||
| 113 | static::assertSame($definition, $definition->setDataStart(2), "setDataStart should be fluent"); |
||
| 114 | static::assertEquals(2, $definition->getDataStart(), "Data Start should be 2"); |
||
| 115 | |||
| 116 | static::assertSame($definition, $definition->setNewLine('----'), "setLineTerminator should be fluent"); |
||
| 117 | static::assertEquals("----", $definition->getNewLine(), "Line terminator should be '----'"); |
||
| 118 | static::assertEquals(["----"], $definition->getNewLines(), "Line terminator should be '----'"); |
||
| 119 | |||
| 120 | static::assertSame($definition, $definition->setNewLine(['----', '+++']), "setLineTerminator should be fluent"); |
||
| 121 | static::assertEquals("----", $definition->getNewLine(), "Line terminator should be '----'"); |
||
| 122 | static::assertEquals(["----", "+++"], $definition->getNewLines(), "Line terminator should be ['----','+++']"); |
||
| 123 | |||
| 124 | static::assertSame($definition, $definition->setEscape('"'), "Set escape character should be fluent"); |
||
| 125 | static::assertEquals('"', $definition->getEscape(), "Escape character should be modified"); |
||
| 126 | static::assertTrue($definition->hasEscape(), "Format should have an escape character"); |
||
| 127 | |||
| 128 | static::assertSame($definition, $definition->setEscape(''), "Set escape character should be fluent"); |
||
| 129 | static::assertEquals('', $definition->getEscape(), "Escape character should be modified"); |
||
| 130 | static::assertFalse($definition->hasEscape(), "Format should not have an escape character"); |
||
| 131 | |||
| 132 | static::assertSame($definition, $definition->setLimit(3), "setLimit should be fluent"); |
||
| 133 | static::assertEquals(3, $definition->getLimit(), "Limit should be modified"); |
||
| 134 | |||
| 135 | static::assertSame($definition, $definition->setDoubleQuote(true), 'setDoubleQuote should be fluent'); |
||
| 136 | static::assertTrue($definition->useDoubleQuotes(), 'isDoubleQuote should be true'); |
||
| 137 | |||
| 138 | static::assertSame($definition, $definition->setBom(Bom::BOM_UTF32_BE), 'setBom should be fluent'); |
||
| 139 | static::assertEquals(Bom::BOM_UTF32_BE, $definition->getBom(), 'Bom should be set to the UTF32BE BOM'); |
||
| 140 | static::assertEquals([Bom::BOM_UTF32_BE], $definition->getBoms(), 'Bom should be set to the UTF32BE BOM'); |
||
| 141 | static::assertEquals( |
||
| 142 | 'UTF-32BE', |
||
| 143 | $definition->getEncoding(), |
||
| 144 | 'getEncoding should be modified after setting the BOM' |
||
| 145 | ); |
||
| 146 | |||
| 147 | static::assertSame($definition, $definition->setBom([Bom::BOM_UTF16_BE, Bom::BOM_UTF16_LE])); |
||
| 148 | static::assertEquals(Bom::BOM_UTF16_BE, $definition->getBom(), 'Bom should be set to UTF16BE for writing'); |
||
| 149 | static::assertEquals( |
||
| 150 | [Bom::BOM_UTF16_BE, Bom::BOM_UTF16_LE], |
||
| 151 | $definition->getBoms(), |
||
| 152 | 'Boms should be set to both UTF16 BOMs' |
||
| 153 | ); |
||
| 154 | static::assertEquals( |
||
| 155 | 'UTF-16BE', |
||
| 156 | $definition->getEncoding(), |
||
| 157 | 'getEncoding should be modified after setting the BOM as an array' |
||
| 158 | ); |
||
| 159 | |||
| 160 | // reset |
||
| 161 | $definition->setBom(null); |
||
| 162 | static::assertEquals(null, $definition->getBom(), 'Bom should be reset to null'); |
||
| 163 | static::assertEquals( |
||
| 164 | [Bom::BOM_UTF8, Bom::BOM_UTF16_BE, Bom::BOM_UTF16_LE, Bom::BOM_UTF32_BE, Bom::BOM_UTF32_LE], |
||
| 165 | $definition->getBoms(), |
||
| 166 | 'Bom should be reset to null' |
||
| 167 | ); |
||
| 168 | static::assertEquals( |
||
| 169 | 'UTF-8', |
||
| 170 | $definition->getEncoding(), |
||
| 171 | 'The encoding should be reset when no BOM is present' |
||
| 172 | ); |
||
| 173 | |||
| 174 | static::assertSame($definition, $definition->setEncoding('UTF-16'), 'setEncoding should be fluent'); |
||
| 175 | static::assertEquals('UTF-16', $definition->getEncoding(), 'The encoding should be set to UTF-16'); |
||
| 176 | } |
||
| 177 | |||
| 210 |