48 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| namespace nulib\php\time;
 | |
| 
 | |
| use nulib\tests\TestCase;
 | |
| 
 | |
| class TimeTest extends TestCase {
 | |
|   function testGetc() {
 | |
|     self::assertSame(0, (new Time(0))->getu());
 | |
|     self::assertSame(86399, (new Time(-1))->getu());
 | |
|     self::assertSame(1, (new Time(1))->getu());
 | |
|     self::assertSame(120, (new Time(120))->getu());
 | |
|     self::assertSame(86400, (new Time(86400))->getu());
 | |
|     self::assertSame(0, (new Time(-86400))->getu());
 | |
|   }
 | |
| 
 | |
|   function testAddc() {
 | |
|     $t = new Time(0);
 | |
|     $t->addu(0); self::assertSame(0, $t->getu());
 | |
|     $t->addu(10); self::assertSame(10, $t->getu());
 | |
|     $t->addu(10); self::assertSame(20, $t->getu());
 | |
|     $t->addu(100); self::assertSame(120, $t->getu());
 | |
|     $t->addu(86280); self::assertSame(86400, $t->getu());
 | |
|     $t->addu(86400); self::assertSame(0, $t->getu());
 | |
|     $t->addu(-86400); self::assertSame(0, $t->getu());
 | |
|   }
 | |
| 
 | |
|   function testSubc() {
 | |
|     $t = new Time(0);
 | |
|     $t->subu(-86400); self::assertSame(86400, $t->getu());
 | |
|     $t->subu(86400); self::assertSame(0, $t->getu());
 | |
|     
 | |
|     $t = new Time(120);
 | |
|     $t->subu(100); self::assertSame(20, $t->getu());
 | |
|     $t->subu(10); self::assertSame(10, $t->getu());
 | |
|     $t->subu(10); self::assertSame(0, $t->getu());
 | |
|     $t->subu(0); self::assertSame(0, $t->getu());
 | |
|   }
 | |
| 
 | |
|   function testFormat() {
 | |
|     self::assertSame("00:00:00", (new Time(0))->format());
 | |
|     self::assertSame("00:00:56", (new Time(56))->format());
 | |
|     self::assertSame("00:02:00", (new Time(120))->format());
 | |
|     self::assertSame("23:59:59", (new Time(86399))->format());
 | |
|     self::assertSame("24:00:00", (new Time(86400))->format());
 | |
|     self::assertSame("00:00:01", (new Time(86401))->format());
 | |
|   }
 | |
| }
 |