HtmlWriterTest.php 1.3 KB

123456789101112131415161718192021222324252627282930313233
  1. <?php
  2. namespace Knuckles\Scribe\Tests\Unit;
  3. use Knuckles\Scribe\Tools\DocumentationConfig;
  4. use Knuckles\Scribe\Writing\HtmlWriter;
  5. use PHPUnit\Framework\TestCase;
  6. class HtmlWriterTest extends TestCase
  7. {
  8. /** @test */
  9. public function sets_last_updated_correctly()
  10. {
  11. $config = ["base_url" => "http://local.test", "title" => "API Docs"];
  12. $config["last_updated"] = '';
  13. $writer = new HtmlWriter(new DocumentationConfig($config));
  14. $lastUpdated = $writer->getMetadata()["last_updated"];
  15. $this->assertEquals('', $lastUpdated);
  16. $config["last_updated"] = "Last updated on {date:l}";
  17. $writer = new HtmlWriter(new DocumentationConfig($config));
  18. $lastUpdated = $writer->getMetadata()["last_updated"];
  19. $today = date("l");
  20. $this->assertEquals("Last updated on $today", $lastUpdated);
  21. $config["last_updated"] = "Last updated on {date:l, jS F} (Git commit {git:short})";
  22. $writer = new HtmlWriter(new DocumentationConfig($config));
  23. $lastUpdated = $writer->getMetadata()["last_updated"];
  24. $date = date("l, jS F");
  25. $commit = trim(shell_exec('git rev-parse --short HEAD'));
  26. $this->assertEquals("Last updated on $date (Git commit $commit)", $lastUpdated);
  27. }
  28. }