const Metadata = Fractale.create("Metadata", {
metadata: {
key: String,
data: {
key: String,
value: undefined
}
}
});
const { Metadata } = module.exports.get();
const instance = new Metadata({
metadata: { key: 'Foo', data: { key: 'Bar', value: 12 } }
});
_.test(instance.metadata.key, 'Foo', 'Error on metadata accessor');
const metadata = instance.metadata;
metadata.key = 'decomposition';
_.test(instance.metadata.key, 'decomposition', 'Error on metadata accessor with decomposition');
instance.metadata.key = 'dot';
_.test(instance.metadata.key, 'dot', 'Error on metadata accessor with dot');
instance.metadata = { key: 'assign' };
_.test(instance.metadata.key, 'assign', 'Error on metadata accessor with assign');
_.test(instance.metadata.data.key, 'Bar', 'Error on metadata accessor with assign');
instance.metadata = { data: { key: 'after', value: 13 } };
_.test(instance.metadata.key, 'assign', 'Error on metadata accessor with bracket');
_.test(instance.metadata.data.key, 'after', 'Error on metadata accessor with bracket');
_.test(instance.metadata.data.value, 13, 'Error on metadata accessor with bracket');
resolve(instance);
{
"uuid": "6c63fcf6-323a-4cb7-8bd1-afdb4d73c086",
"metadata": {
"uuid": "daf1d856-b57c-41a7-9a5e-407188f5f24f",
"key": "assign",
"data": {
"uuid": "c22f5b47-3434-45cb-86e7-fba5134347d5",
"key": "after",
"value": 13
}
}
}