コード例 #1
0
ファイル: LocalMapperTest.php プロジェクト: shabbyrobe/amiss
 function testCustomFunction()
 {
     $c1 = ClassBuilder::i()->registerOne("\n            class Pants {\n                static function gimmeMeta() {\n                    return new \\Amiss\\Meta(__CLASS__, ['fields'=>['foo'=>true]]);\n                }\n            }\n        ");
     $lm = new \Amiss\Mapper\Local('gimmeMeta');
     $meta = $lm->getMeta($c1);
     $this->assertInstanceOf(\Amiss\Meta::class, $meta);
 }
コード例 #2
0
ファイル: Factory.php プロジェクト: shabbyrobe/amiss
 public static function managerNoteModelCustom($classes, $deps = null)
 {
     $deps = self::managerNoteDefault($deps);
     list($ns, $classNames, $deps->classes) = ClassBuilder::i()->register($classes);
     if ($ns) {
         $deps->ns = $ns;
     }
     TableBuilder::create($deps->connector, $deps->mapper, $classNames);
     return $deps;
 }
コード例 #3
0
ファイル: NoteMapperTest.php プロジェクト: shabbyrobe/amiss
 public function testCanMapUnmapped()
 {
     $mapper = new \Amiss\Mapper\Note();
     $name = ClassBuilder::i()->registerOne('
         class Test {}
     ');
     $this->assertFalse($mapper->canMap($name));
 }
コード例 #4
0
 public function testCanDeleteDisabled()
 {
     $c = ClassBuilder::i()->registerOne('
         /** :amiss = {"canDelete": false}; */
         class Artist {
             /** :amiss = {"field": { "primary": true, "type": "autoinc" }}; */
             public $artistId;
         }
     ');
     $a = new $c();
     $a->artistId = 1;
     $this->setExpectedExceptionRegexp(\Amiss\Exception::class, "/Meta .* prohibits delete/");
     $this->manager->delete($a);
 }