/**
  * Checks if the references of the source object is correctly set after validation
  */
 public function testObjectValidator()
 {
     $objModule = class_module_system_module::getModuleByName("news");
     if ($objModule == null) {
         return;
     }
     $objNews = new class_module_news_news();
     $objForm = new class_admin_formgenerator("news", $objNews);
     $objForm->generateFieldsFromObject();
     $objSourceObjectBefore = $objForm->getObjSourceobject();
     $arrFieldsBefore = $objForm->getArrFields();
     $objForm->validateForm();
     $objSourceObjectAfter = $objForm->getObjSourceobject();
     $arrFieldsAfter = $objForm->getArrFields();
     //Now check if the reference to the source object before validation is the same as after
     foreach ($objForm->getArrFields() as $intIndex => $objField) {
         if ($arrFieldsAfter != null) {
             $this->assertTrue($arrFieldsBefore[$intIndex]->getObjSourceObject() === $arrFieldsAfter[$intIndex]->getObjSourceObject());
             if ($arrFieldsBefore[$intIndex]->getObjSourceObject() != null) {
                 $this->assertTrue($arrFieldsBefore[$intIndex]->getObjSourceObject() === $objSourceObjectBefore);
                 $this->assertTrue($arrFieldsBefore[$intIndex]->getObjSourceObject() === $objSourceObjectAfter);
             }
             if ($arrFieldsAfter[$intIndex]->getObjSourceObject() != null) {
                 $this->assertTrue($arrFieldsAfter[$intIndex]->getObjSourceObject() === $objSourceObjectBefore);
                 $this->assertTrue($arrFieldsAfter[$intIndex]->getObjSourceObject() === $objSourceObjectAfter);
             }
         }
     }
     $this->assertTrue($objSourceObjectAfter === $objSourceObjectBefore);
 }
Exemplo n.º 2
0
 public function testFormManager()
 {
     $objFormManager = new class_admin_formgenerator("test", new AdminFormB());
     $objFormManager->generateFieldsFromObject();
     $this->assertNotNull($objFormManager->getField("fielda1"));
     $this->assertNotNull($objFormManager->getField("fielda2"));
     $this->assertNotNull($objFormManager->getField("fieldb1"));
     $this->assertNotNull($objFormManager->getField("fieldb2"));
     $arrFields = $objFormManager->getArrFields();
     $arrKey = array_keys($arrFields);
     $this->assertEquals($arrKey[0], "fielda1");
     $this->assertEquals($arrKey[1], "fielda2");
     $this->assertEquals($arrKey[2], "fieldb1");
     $this->assertEquals($arrKey[3], "fieldb2");
     $objFormManager->setFieldToPosition("fielda2", 1);
     $objFormManager->setFieldToPosition("fieldb2", 4);
     $arrFields = $objFormManager->getArrFields();
     $arrKey = array_keys($arrFields);
     $this->assertEquals($arrKey[0], "fielda2");
     $this->assertEquals($arrKey[1], "fielda1");
     $this->assertEquals($arrKey[2], "fieldb1");
     $this->assertEquals($arrKey[3], "fieldb2");
 }