public void CreateScopes_NullManifest_ArgumentNullException() { // Arrange var factory = new ScopeFactory(new Mock <ILogger <Scope> >().Object, CreateCollectionFactoryMock()); // Act/Assert Assert.Throws <ArgumentNullException>(() => factory.CreateScopes(CreateBucketMock(factory), null).ToList()); }
public void CreateDefaultScopes_WithManifest_ReturnsScopesAndCollections() { // Arrange var factory = new ScopeFactory(new Mock <ILogger <Scope> >().Object, CreateCollectionFactoryMock()); var manifest = new Manifest { scopes = new List <ScopeDef> { new ScopeDef { name = "scope1", uid = "100", collections = new List <CollectionDef> { new CollectionDef { name = "collection1", uid = "1" }, new CollectionDef { name = "collection2", uid = "2" } } }, new ScopeDef { name = "scope2", uid = "200", collections = new List <CollectionDef> { new CollectionDef { name = "collection3", uid = "fe" }, new CollectionDef { name = "collection4", uid = "ff" } } } } }; // Act var result = factory.CreateScopes(CreateBucketMock(factory), manifest).ToList(); // Assert var scope1 = result.First(p => p.Name == "scope1"); Assert.Equal("100", scope1.Id); var collection1 = scope1["collection1"]; Assert.Equal("collection1", collection1.Name); Assert.Equal((uint?)1, collection1.Cid); var collection2 = scope1["collection2"]; Assert.Equal("collection2", collection2.Name); Assert.Equal((uint?)2, collection2.Cid); var scope2 = result.First(p => p.Name == "scope2"); Assert.Equal("100", scope1.Id); var collection3 = scope2["collection3"]; Assert.Equal("collection3", collection3.Name); Assert.Equal((uint?)0xfe, collection3.Cid); var collection4 = scope2["collection4"]; Assert.Equal("collection4", collection4.Name); Assert.Equal((uint?)0xff, collection4.Cid); }