コード例 #1
0
ファイル: UIExtensionTest.php プロジェクト: mattcrowe/ginny
 /**
  * covers \Foote\Ginny\Twig\UIExtension::getName
  * covers \Foote\Ginny\Twig\UIExtension::getFilters
  * covers \Foote\Ginny\Twig\UIExtension::getFunctions
  */
 public function testui()
 {
     $extension = new UIExtension();
     $this->assertEquals($extension->getName(), 'ui_extension');
     /**
      * @var $filter \Twig_SimpleFilter
      */
     foreach ($extension->getFilters() as $filter) {
         $callable = $filter->getCallable();
         if ($filter->getName() == 'blade') {
             $user = \Foote\Ginny\Map\BaseModel::create('User');
             $this->assertEquals($callable($user), '{{ $user }}');
         }
     }
     /**
      * @var $filter \Twig_SimpleFunction
      */
     foreach ($extension->getFunctions() as $filter) {
         $callable = $filter->getCallable();
         if ($filter->getName() == 'blade_url') {
             $user = \Foote\Ginny\Map\BaseModel::create('User');
             $user->route = 'admin.system.users';
             $this->assertEquals($callable($user), "{{ URL::route('admin.system.users.index') }}");
         }
         if ($filter->getName() == 'i') {
             $this->assertEquals($callable('create'), '<i class="fa fa-plus"></i>');
         }
     }
 }
コード例 #2
0
ファイル: BaseModelTest.php プロジェクト: mattcrowe/ginny
 /**
  * @covers Foote\Ginny\Map\BaseModel::update
  * @covers Foote\Ginny\Map\BaseModel::validate
  * @covers Foote\Ginny\Map\BaseModel::dump
  */
 public function testupdate()
 {
     $bundle = new BaseBundle('Bundle');
     $site = BaseModel::create('Site');
     $site->bundle = $bundle;
     $site->addField(BaseField::create('id', ['type' => 'integer']));
     $user = BaseModel::create('User');
     $user->bundle = $bundle;
     $user->addField(BaseField::create('id', ['type' => 'integer']));
     $user->addField(BaseField::create('site_id', ['type' => 'integer']));
     BaseAssociation::create('Site', ['owner' => $user, 'ownerKey' => 'site_id', 'type' => 'belongsTo', 'target' => $site, 'targetKey' => 'id']);
     $user->update();
     $user->validate();
     //all is good, no exceptions
     $this->assertTrue(true);
     $this->assertNotEmpty($user->dump());
 }
コード例 #3
0
 /**
  * @covers Foote\Ginny\Map\BaseAssociation::update
  */
 public function testupdate()
 {
     $bundle = new BaseBundle('Bundle');
     $site = BaseModel::create('Site');
     $site->bundle = $bundle;
     $site->addField(BaseField::create('id', ['type' => 'integer']));
     // Site hasOne Profile
     $profile = BaseModel::create('Profile');
     $profile->bundle = $bundle;
     $profile->addField(BaseField::create('id', ['type' => 'integer']));
     //add unique field to Profile
     $field = BaseField::create('site_id', ['type' => 'integer']);
     $field->unique = true;
     $profile->addField($field);
     $association = BaseAssociation::create('SiteProfile', ['owner' => $site, 'ownerKey' => 'id', 'type' => 'hasMany', 'target' => $profile, 'targetKey' => 'site_id']);
     //hasMany should be converted to hasOne since Profile.site_id is unique
     $association->update();
     $this->assertEquals('hasOne', $association->type);
 }