AdjectivePluralizationTest.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. <?php
  2. namespace morphos\test\Russian;
  3. use morphos\Russian\AdjectivePluralization;
  4. use PHPUnit\Framework\TestCase;
  5. class AdjectivePluralizationTest extends TestCase
  6. {
  7. /**
  8. * @dataProvider wordsProvider
  9. *
  10. * @param string $word
  11. * @param $animateness
  12. * @param $inflected
  13. */
  14. public function testInflection($word, $animateness, $inflected)
  15. {
  16. $this->assertEquals($inflected, array_values(AdjectivePluralization::getCases($word, $animateness)));
  17. }
  18. /**
  19. * @return array
  20. */
  21. public function wordsProvider()
  22. {
  23. return [
  24. ['адресный', false, ['адресные', 'адресных', 'адресным', 'адресные', 'адресными', 'адресных']],
  25. ['выездной', false, ['выездные', 'выездных', 'выездным', 'выездные', 'выездными', 'выездных']],
  26. ['домашний', false, ['домашние', 'домашних', 'домашним', 'домашние', 'домашними', 'домашних']],
  27. ['дилерский', false, ['дилерские', 'дилерских', 'дилерским', 'дилерские', 'дилерскими', 'дилерских']],
  28. ['сухой', false, ['сухие', 'сухих', 'сухим', 'сухие', 'сухими', 'сухих']],
  29. ['большой', false, ['большие', 'больших', 'большим', 'большие', 'большими', 'больших']],
  30. ];
  31. }
  32. }