public function testEditDefinition()
 {
     $uuid = rand(0, count($this->_guids) - 1);
     $nsdrParams = array('uuid' => $uuid, 'namespace' => 'com.clearhealth.person.age', 'aliasFor' => 'com.clearhealth.person.dateOfBirth');
     $methodParams = array('aggregateDisplay' => 'return "aggregate display";', 'populate' => 'return "populate";', 'persist' => '');
     $objNSDR = new NSDRDefinition();
     $methods = array();
     // cannot add method if alias exists (alias must be canonical)
     if (strlen($nsdrParams['aliasFor']) == 0) {
         foreach ($methodParams as $index => $value) {
             $tmpArray = array();
             $tmpArray['uuid'] = $uuid;
             $tmpArray['methodName'] = $index;
             $tmpArray['method'] = $value;
             $methods[] = $tmpArray;
         }
     }
     // persist methods
     $objNSDR->persistMethods($methods);
     $objNSDR->populateWithArray($nsdrParams);
     // workaround for Unknown column 'methodName'/'method' in 'field list'
     $objNSDR->methodName = array();
     $objNSDR->method = array();
     $objNSDR->persist();
     $nsdrDefinition = new NSDRDefinition();
     $nsdrDefinition->uuid = $uuid;
     $nsdrDefinition->populate();
     $this->assertTrue(strlen($nsdrDefinition->namespace) > 0);
 }