35 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| namespace nur\b\date;
 | |
| 
 | |
| use nur\t\TestCase;
 | |
| 
 | |
| class HourTest extends TestCase {
 | |
|   function test__toString() {
 | |
|     self::assertSame("0h00", strval(new Hour(0)));
 | |
|     self::assertSame("0h56", strval(new Hour(56)));
 | |
|     self::assertSame("2h00", strval(new Hour(120)));
 | |
|     self::assertSame("23h59", strval(new Hour(1439)));
 | |
|     self::assertSame("24h00", strval(new Hour(1440)));
 | |
|     self::assertSame("0h01", strval(new Hour(1441)));
 | |
|   }
 | |
| 
 | |
|   function testFormat() {
 | |
|     self::assertSame("0h00", (new Hour(0))->format());
 | |
|     self::assertSame("0h56", (new Hour(56))->format());
 | |
|     self::assertSame("2h00", (new Hour(120))->format());
 | |
|     self::assertSame("23h59", (new Hour(1439))->format());
 | |
|     self::assertSame("24h00", (new Hour(1440))->format());
 | |
|     self::assertSame("0h01", (new Hour(1441))->format());
 | |
|   }
 | |
| 
 | |
|   function testStep() {
 | |
|     $h = new class extends Hour {
 | |
|       const STEP = 5;
 | |
|     };
 | |
|     $h = $h->newu(10); self::assertSame("0h10", strval($h));
 | |
|     $h = $h->newu(12); self::assertSame("0h10", strval($h));
 | |
|     $h = $h->newu(15); self::assertSame("0h15", strval($h));
 | |
|     $h = $h->newu(17); self::assertSame("0h15", strval($h));
 | |
|   }
 | |
| }
 |