/** @test **/ public function it_gets_system_data_for_1_5() { $config = new \PHRETS\Configuration(); $config->setLoginUrl('http://retsgw.flexmls.com/rets2_1/Login')->setUsername(getenv('PHRETS_TESTING_USERNAME'))->setPassword(getenv('PHRETS_TESTING_PASSWORD'))->setRetsVersion('1.5'); $session = new \PHRETS\Session($config); $session->Login(); $system = $session->GetSystemMetadata(); $this->assertTrue($system instanceof \PHRETS\Models\Metadata\System); $this->assertSame('demomls', $system->getSystemId()); }
// using a really old date so we can get everything $previous_start_time = "1980-01-01T00:00:00"; $config = new \PHRETS\Configuration(); $rets_config = $ini['rets_config']; $config->setLoginUrl($rets_config['loginurl']); $config->setUsername($rets_config['username']); $config->setPassword($rets_config['password']); $config->setRetsVersion($rets_config['rets-version']); $config->setHttpAuthenticationMethod('digest'); $config->setOption('disable_follow_location', false); $config->setOption('use_post_method', true); $rets = new \PHRETS\Session($config); $rets->setLogger($log); $log->addInfo('Connecting...'); $connect = $rets->Login(); $system = $rets->GetSystemMetadata(); $resources = $system->getResources(); $file_name_class = "output/mls_classes.csv"; $fh_class = fopen($file_name_class, "w"); $class_header = array("Resource", "Class", "ClassName", "VisibleName", "StandardName", "Description", "TableVersion", "TableDate", "UpdateVersion", "UpdateDate", "ClassTimeStamp", "DeletedFlagField", "DeletedFlagValue", "HasKeyIndex", "Version", "Date", "Resource"); $class_fields_header = array("SystemName", "StandardName", "LongName", "DBName", "ShortName", "MaximumLength", "DataType", "Precision", "Searchable", "Interpretation", "Alignment", "UseSeparator", "EditMaskID", "LookupName", "MaxSelect", "Units", "Index", "Minimum", "Maximum", "Default", "Required", "SearchHelpID", "Unique", "MetadataEntryID", "ModTimeStamp", "ForeignKeyName", "ForeignField", "InKeyIndex", "Version", "Date", "Resource", "Class"); fputcsv($fh_class, $class_header); foreach ($resources as $resource) { $resourceID = $resource->getResourceID(); echo "Resource: " . $resourceID . "\n"; $classes = $resource->getClasses(); foreach ($classes as $class) { $class_data = array($resourceID, $class->getClass(), $class->getClassName(), $class->getVisibleName(), $class->getStandardName(), $class->getDescription(), $class->getTableVersion(), $class->getTableDate(), $class->getUpdateVersion(), $class->getUpdateDate(), $class->getClassTimeStamp(), $class->getDeletedFlagField(), $class->getDeletedFlagValue(), $class->getHasKeyIndex(), $class->getVersion(), $class->getDate(), $class->getResource()); fputcsv($fh_class, $class_data); $file_name_class_fields = "output/{$resourceID}-{$class->getClassName()}-fields.csv"; $fh_class_fields = fopen($file_name_class_fields, "w");
/** @test **/ public function it_doesnt_allow_requests_to_unsupported_capabilities() { $config = new \PHRETS\Configuration(); // fake, mocked endpoint $config->setLoginUrl('http://retsgwlimited.flexmls.com/rets2_1/Login')->setUsername(getenv('PHRETS_TESTING_USERNAME'))->setPassword(getenv('PHRETS_TESTING_PASSWORD'))->setRetsVersion('1.7.2'); $session = new \PHRETS\Session($config); $session->Login(); $this->setExpectedException('\\PHRETS\\Exceptions\\CapabilityUnavailable'); // make a request for metadata to a server that doesn't support metadata $session->GetSystemMetadata(); }