Skip to content

Commit

Permalink
Closed other extension points by adding final to all classes
Browse files Browse the repository at this point in the history
  • Loading branch information
norberttech committed Dec 13, 2015
1 parent a5aa961 commit f093f86
Show file tree
Hide file tree
Showing 30 changed files with 60 additions and 53 deletions.
20 changes: 12 additions & 8 deletions spec/Coduo/PHPHumanizer/DateTime/FormatterSpec.php
Expand Up @@ -30,19 +30,23 @@ function let(Translator $translator)
)->willReturn('10 minut temu');
}

function it_format_datetime_diff(Difference $diff)
function it_format_datetime_diff()
{
$diff->getUnit()->willReturn(new Minute());
$diff->getQuantity()->willReturn(10);
$diff->isPast()->willReturn(true);
$diff = new Difference(
new \DateTime("2015-01-01 00:10:00"),
new \DateTime("2015-01-01 00:00:00")
);

$this->formatDifference($diff)->shouldReturn('10 minutes ago');
}

function it_format_datetime_diff_for_specific_locale(Difference $diff)
function it_format_datetime_diff_for_specific_locale()
{
$diff->getUnit()->willReturn(new Minute());
$diff->getQuantity()->willReturn(10);
$diff->isPast()->willReturn(true);
$diff = new Difference(
new \DateTime("2015-01-01 00:10:00"),
new \DateTime("2015-01-01 00:00:00")
);

$this->formatDifference($diff, 'pl')->shouldReturn('10 minut temu');
}
}
28 changes: 11 additions & 17 deletions spec/Coduo/PHPHumanizer/DateTime/PreciseFormatterSpec.php
Expand Up @@ -62,29 +62,23 @@ function let(Translator $translator)
)->willReturn('через 10 дней, 5 часов');
}

function it_format_compound_datetime_diff(PreciseDifference $diff, CompoundResult $dayResult,
CompoundResult $hourResult)
function it_format_compound_datetime_diff()
{
$dayResult->getUnit()->willReturn(new Day());
$dayResult->getQuantity()->willReturn(10);
$hourResult->getUnit()->willReturn(new Hour());
$hourResult->getQuantity()->willReturn(5);
$diff = new PreciseDifference(
new \DateTime("2015-01-01 00:00:00"),
new \DateTime("2015-01-11 05:00:00")
);

$diff->getCompoundResults()->willReturn(array($dayResult, $hourResult));
$diff->isPast()->willReturn(false);
$this->formatDifference($diff)->shouldReturn('10 days, 5 hours from now');
}

function it_format_compound_datetime_diff_for_specific_locale(PreciseDifference $diff,
CompoundResult $dayResult, CompoundResult $hourResult)
function it_format_compound_datetime_diff_for_specific_locale()
{
$dayResult->getUnit()->willReturn(new Day());
$dayResult->getQuantity()->willReturn(10);
$hourResult->getUnit()->willReturn(new Hour());
$hourResult->getQuantity()->willReturn(5);

$diff->getCompoundResults()->willReturn(array($dayResult, $hourResult));
$diff->isPast()->willReturn(false);
$diff = new PreciseDifference(
new \DateTime("2015-01-01 00:00:00"),
new \DateTime("2015-01-11 05:00:00")
);

$this->formatDifference($diff, 'ru')->shouldReturn('через 10 дней, 5 часов');
}
}
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/Collection/Formatter.php
Expand Up @@ -4,7 +4,7 @@

use Symfony\Component\Translation\TranslatorInterface;

class Formatter
final class Formatter
{
/**
* @var \Symfony\Component\Translation\TranslatorInterface
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/Collection/Oxford.php
Expand Up @@ -2,7 +2,7 @@

namespace Coduo\PHPHumanizer\Collection;

class Oxford
final class Oxford
{
/**
* @var Formatter
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/DateTime/Difference.php
Expand Up @@ -11,7 +11,7 @@
use Coduo\PHPHumanizer\DateTime\Unit\Week;
use Coduo\PHPHumanizer\DateTime\Unit\Year;

class Difference
final class Difference
{
/**
* @var \DateTime
Expand Down
Expand Up @@ -4,7 +4,7 @@

use Coduo\PHPHumanizer\DateTime\Unit;

class CompoundResult
final class CompoundResult
{
/**
* @var \Coduo\PHPHumanizer\DateTime\Unit
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/DateTime/Formatter.php
Expand Up @@ -4,7 +4,7 @@

use Symfony\Component\Translation\TranslatorInterface;

class Formatter
final class Formatter
{
/**
* @var \Symfony\Component\Translation\TranslatorInterface
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/DateTime/PreciseDifference.php
Expand Up @@ -10,7 +10,7 @@
use Coduo\PHPHumanizer\DateTime\Unit\Year;
use Coduo\PHPHumanizer\DateTime\Difference\CompoundResult;

class PreciseDifference
final class PreciseDifference
{
/**
* @var \DateTime
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/DateTime/PreciseFormatter.php
Expand Up @@ -4,7 +4,7 @@

use Symfony\Component\Translation\TranslatorInterface;

class PreciseFormatter
final class PreciseFormatter
{
/**
* @var \Symfony\Component\Translation\TranslatorInterface
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/DateTime/Unit/Day.php
Expand Up @@ -4,7 +4,7 @@

use Coduo\PHPHumanizer\DateTime\Unit;

class Day implements Unit
final class Day implements Unit
{
/**
* @return string
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/DateTime/Unit/Hour.php
Expand Up @@ -4,7 +4,7 @@

use Coduo\PHPHumanizer\DateTime\Unit;

class Hour implements Unit
final class Hour implements Unit
{
/**
* @return string
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/DateTime/Unit/JustNow.php
Expand Up @@ -4,7 +4,7 @@

use Coduo\PHPHumanizer\DateTime\Unit;

class JustNow implements Unit
final class JustNow implements Unit
{
/**
* @return string
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/DateTime/Unit/Minute.php
Expand Up @@ -4,7 +4,7 @@

use Coduo\PHPHumanizer\DateTime\Unit;

class Minute implements Unit
final class Minute implements Unit
{
/**
* @return string
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/DateTime/Unit/Month.php
Expand Up @@ -4,7 +4,7 @@

use Coduo\PHPHumanizer\DateTime\Unit;

class Month implements Unit
final class Month implements Unit
{
/**
* @return string
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/DateTime/Unit/Second.php
Expand Up @@ -4,7 +4,7 @@

use Coduo\PHPHumanizer\DateTime\Unit;

class Second implements Unit
final class Second implements Unit
{
/**
* @return string
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/DateTime/Unit/Week.php
Expand Up @@ -4,7 +4,7 @@

use Coduo\PHPHumanizer\DateTime\Unit;

class Week implements Unit
final class Week implements Unit
{
/**
* @return string
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/DateTime/Unit/Year.php
Expand Up @@ -4,7 +4,7 @@

use Coduo\PHPHumanizer\DateTime\Unit;

class Year implements Unit
final class Year implements Unit
{
/**
* @return string
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/Number/Ordinal.php
Expand Up @@ -5,7 +5,7 @@
use Coduo\PHPHumanizer\Number\Ordinal\Builder;
use Coduo\PHPHumanizer\Number\Ordinal\StrategyInterface;

class Ordinal
final class Ordinal
{
/**
* @var int|float
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/Number/Ordinal/Builder.php
Expand Up @@ -5,7 +5,7 @@
/**
* Tries to find a proper strategy for ordinal numbers.
*/
class Builder
final class Builder
{
/**
* @param string $locale
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/Number/RomanNumeral.php
Expand Up @@ -2,7 +2,7 @@

namespace Coduo\PHPHumanizer\Number;

class RomanNumeral
final class RomanNumeral
{
const MIN_VALUE = 1;
const MAX_VALUE = 3999;
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/Resources/Ordinal/EnStrategy.php
Expand Up @@ -4,7 +4,7 @@

use Coduo\PHPHumanizer\Number\Ordinal\StrategyInterface;

class EnStrategy implements StrategyInterface
final class EnStrategy implements StrategyInterface
{
/** {@inheritdoc} */
public function ordinalSuffix($number)
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/Resources/Ordinal/NlStrategy.php
Expand Up @@ -4,7 +4,7 @@

use Coduo\PHPHumanizer\Number\Ordinal\StrategyInterface;

class NlStrategy implements StrategyInterface
final class NlStrategy implements StrategyInterface
{
/** {@inheritdoc} */
public function ordinalSuffix($number)
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/String/BinarySuffix.php
Expand Up @@ -2,7 +2,7 @@

namespace Coduo\PHPHumanizer\String;

class BinarySuffix
final class BinarySuffix
{
const CONVERT_THRESHOLD = 1024;

Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/String/HtmlTruncate.php
Expand Up @@ -2,7 +2,7 @@

namespace Coduo\PHPHumanizer\String;

class HtmlTruncate implements TruncateInterface
final class HtmlTruncate implements TruncateInterface
{
/**
* @var string
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/String/Humanize.php
Expand Up @@ -2,7 +2,7 @@

namespace Coduo\PHPHumanizer\String;

class Humanize
final class Humanize
{
/**
* @var string
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/String/MetricSuffix.php
Expand Up @@ -2,7 +2,7 @@

namespace Coduo\PHPHumanizer\String;

class MetricSuffix
final class MetricSuffix
{
const CONVERT_THRESHOLD = 1000;

Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/String/ShortcodeProcessor.php
Expand Up @@ -7,7 +7,7 @@
use Thunder\Shortcode\Processor\Processor;
use Thunder\Shortcode\Shortcode\ShortcodeInterface;

class ShortcodeProcessor
final class ShortcodeProcessor
{
/**
* Removes all shortcodes from given text.
Expand Down
2 changes: 1 addition & 1 deletion src/Coduo/PHPHumanizer/String/TextTruncate.php
Expand Up @@ -2,7 +2,7 @@

namespace Coduo\PHPHumanizer\String;

class TextTruncate implements TruncateInterface
final class TextTruncate implements TruncateInterface
{
/**
* @var string
Expand Down
7 changes: 6 additions & 1 deletion src/Coduo/PHPHumanizer/String/WordBreakpoint.php
Expand Up @@ -2,8 +2,13 @@

namespace Coduo\PHPHumanizer\String;

class WordBreakpoint implements Breakpoint
final class WordBreakpoint implements Breakpoint
{
/**
* @param string $text
* @param int $charactersCount
* @return bool|int
*/
public function calculatePosition($text, $charactersCount)
{
if ($charactersCount < 0) {
Expand Down
6 changes: 5 additions & 1 deletion src/Coduo/PHPHumanizer/Translator/Builder.php
Expand Up @@ -5,8 +5,12 @@
use Symfony\Component\Translation\Loader\YamlFileLoader;
use Symfony\Component\Translation\Translator;

class Builder
final class Builder
{
/**
* @param $locale
* @return Translator
*/
public static function build($locale)
{
$translator = new Translator($locale);
Expand Down

0 comments on commit f093f86

Please sign in to comment.