def collect(self, oid, name, schema_dir=None): metrics = {} for schema_name in self.locator.exists(): schema = Schema.load_schema(schema_name, schema_dir=schema_dir) if schema is None: continue logger.info('collecting data: %s', schema_name) collector = Collector(self.locator.endpoint(schema_name), schema) metrics.update(collector.collect(oid, name)) return metrics
def generate(self, oid, name): objects = collections.OrderedDict() for schemaname in Schema.get_available_schemas(): schema = Schema.load_schema(schemaname) objects.update(schema.scan(oid, name)) return objects
def test_load_schema_not_found(schema_dir): assert Schema.load_schema('unknown', schema_dir) is None
def test_load_schema(schema_dir): assert isinstance(Schema.load_schema('test', schema_dir), Schema)
def schema(schema_dir): return Schema.load_schema('test', schema_dir)