ProgressHelperTest.php 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <?php
  2. namespace Tools\Test\TestCase\View\Helper;
  3. use Cake\View\View;
  4. use Tools\TestSuite\TestCase;
  5. use Tools\View\Helper\ProgressHelper;
  6. class ProgressHelperTest extends TestCase {
  7. /**
  8. * @var \Cake\View\View
  9. */
  10. protected $View;
  11. /**
  12. * @var \Tools\View\Helper\ProgressHelper
  13. */
  14. protected $progressHelper;
  15. /**
  16. * @return void
  17. */
  18. public function setUp() {
  19. parent::setUp();
  20. $this->View = new View(null);
  21. $this->progressHelper = new ProgressHelper($this->View);
  22. }
  23. /**
  24. * @return void
  25. */
  26. public function testDraw() {
  27. $result = $this->progressHelper->draw(0.00, 3);
  28. $this->assertSame('⬜⬜⬜', $result);
  29. $result = $this->progressHelper->draw(1.00, 3);
  30. $this->assertSame('⬛⬛⬛', $result);
  31. $result = $this->progressHelper->draw(0.50, 3);
  32. $this->assertSame('⬛⬛⬜', $result);
  33. $result = $this->progressHelper->draw(0.30, 5);
  34. $this->assertSame('⬛⬛⬜⬜⬜', $result);
  35. $result = $this->progressHelper->draw(0.01, 3);
  36. $this->assertSame('⬛⬜⬜', $result);
  37. $result = $this->progressHelper->draw(0.99, 3);
  38. $this->assertSame('⬛⬛⬜', $result);
  39. }
  40. /**
  41. * @return void
  42. */
  43. public function testProgressBar() {
  44. $result = $this->progressHelper->progressBar(0.001, 3);
  45. $this->assertSame('<span title="1%">⬛⬜⬜</span>', $result);
  46. $result = $this->progressHelper->progressBar(0.999, 3);
  47. $this->assertSame('<span title="99%">⬛⬛⬜</span>', $result);
  48. $result = $this->progressHelper->progressBar(0.000, 3);
  49. $this->assertSame('<span title="0%">⬜⬜⬜</span>', $result);
  50. $result = $this->progressHelper->progressBar(1.000, 3);
  51. $this->assertSame('<span title="100%">⬛⬛⬛</span>', $result);
  52. }
  53. /**
  54. * @return void
  55. */
  56. public function testCalculatePercentage() {
  57. $result = $this->progressHelper->calculatePercentage(0.001);
  58. $this->assertSame(0.01, $result);
  59. $result = $this->progressHelper->calculatePercentage(0.999);
  60. $this->assertSame(0.99, $result);
  61. }
  62. }