def test_missing_version(self): """Test that creating a namespace builder without a version raises an error.""" msg = "Namespace '%s' missing key 'version'. Please specify a version for the extension." % self.ns_name with self.assertRaisesWith(ValueError, msg): self.ns_builder = NamespaceBuilder(doc="mydoc", name=self.ns_name, full_name="My Laboratory", author="foo", contact="*****@*****.**", namespace_cls=SpecNamespace, date=self.date)
def setUp(self): # create a builder for the namespace self.ns_name = "mylab" self.date = datetime.datetime.now() self.ns_builder = NamespaceBuilder(doc="mydoc", name=self.ns_name, full_name="My Laboratory", version="0.0.1", author="foo", contact="*****@*****.**", namespace_cls=SpecNamespace, date=self.date) # create extensions ext1 = GroupSpec('A custom DataSeries interface', attributes=[], datasets=[], groups=[], data_type_inc=None, data_type_def='MyDataSeries') ext2 = GroupSpec('An extension of a DataSeries interface', attributes=[], datasets=[], groups=[], data_type_inc='MyDataSeries', data_type_def='MyExtendedMyDataSeries') ext2.add_dataset(doc='test', dtype='float', name='testdata') # add the extension self.ext_source_path = 'mylab.specs.yaml' self.ns_builder.add_spec(source=self.ext_source_path, spec=ext1) self.ns_builder.add_spec(source=self.ext_source_path, spec=ext2) self.ns_builder.add_source(source=self.ext_source_path, doc='Extensions for my lab', title='My lab extensions') self.namespace_path = 'mylab.namespace.yaml' self.ns_builder.export(self.namespace_path)