84 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			84 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| namespace nur\b\params;
 | |
| 
 | |
| use nur\b\params\impl\BPB2;
 | |
| use nur\b\params\impl\BPC1;
 | |
| use nur\b\params\impl\BPC2;
 | |
| use nur\b\params\impl\BPD1;
 | |
| use nur\b\params\impl\BPD2;
 | |
| use nur\b\params\impl\MyParametrable;
 | |
| use nur\t\TestCase;
 | |
| 
 | |
| class ParametrableTest extends TestCase {
 | |
|   function testDefaults() {
 | |
|     $top = new BPC1();
 | |
|     self::assertSame([null, null, null, null], $top->getTopData());
 | |
|     $top->setParametrableParams(null);
 | |
|     self::assertSame([null, null, null, null], $top->getTopData());
 | |
|     $top->setParametrableParams([null, null, null, null]);
 | |
|     self::assertSame(["", null, false, null], $top->getTopData());
 | |
| 
 | |
|     $sub = new BPC2();
 | |
|     self::assertSame([null, null, null, null, null, null, null, null], $sub->getSubData());
 | |
|     $sub->setParametrableParams(null);
 | |
|     self::assertSame([null, null, null, null, null, null, null, null], $sub->getSubData());
 | |
|     $sub->setParametrableParams([null, null, null, null, null, null, null, null]);
 | |
|     self::assertSame(["", null, false, null, "", null, false, null], $sub->getSubData());
 | |
|   }
 | |
| 
 | |
|   function testDefaults2() {
 | |
|     Txx("od11");
 | |
|     $od11 = new BPD1();
 | |
|     self::assertSame([null, "boum", null, 18], $od11->od1Values());
 | |
|     Txx("od12");
 | |
|     $od12 = new BPD1([
 | |
|       "string" => "hello",
 | |
|       "nstring" => "world",
 | |
|       "int" => 15,
 | |
|       "nint" => 39,
 | |
|     ]);
 | |
|     self::assertSame(["hello", "world", 15, 39], $od12->od1Values());
 | |
| 
 | |
|     Txx("od21");
 | |
|     $od21 = new BPD2();
 | |
|     self::assertSame([42, 18, null, null], $od21->od2Values());
 | |
|     Txx("od22");
 | |
|     $od22 = new BPD2([
 | |
|       "int" => 15,
 | |
|       "nint" => 39,
 | |
|       "bool" => true,
 | |
|       "nbool" => false,
 | |
|     ]);
 | |
|     self::assertSame([15, 39, true, false], $od22->od2Values());
 | |
|   }
 | |
| 
 | |
|   function testProps() {
 | |
|     $second = new BPB2();
 | |
|     $second->setParametrableParams([
 | |
|       "first" => "premier",
 | |
|       "second" => "20",
 | |
|     ]);
 | |
|     self::assertSame(["premier", 20], $second->getData());
 | |
|   }
 | |
| 
 | |
|   function testMyParametrable() {
 | |
|     $p = new MyParametrable([
 | |
|       "name" => "plouf",
 | |
|     ]);
 | |
|     self::assertSame("plouf", $p->getName());
 | |
|     self::assertNull($p->isActive());
 | |
|     self::assertNull($p->getNumber());
 | |
|     self::assertNull($p->whatIsMasked());
 | |
| 
 | |
|     $p->setName("pouet");
 | |
|     self::assertSame("pouet", $p->getName());
 | |
| 
 | |
|     $p->setNumber(2);
 | |
|     self::assertSame(12, $p->getNumber());
 | |
| 
 | |
|     $p->setMasked("hidden");
 | |
|     self::assertNull($p->getMasked());
 | |
|     self::assertSame("hidden", $p->whatIsMasked());
 | |
|   }
 | |
| }
 |