public void CreateRootContainer() { EAV.Store.Clients.IContainerStoreClient client = factory.Create <EAV.Store.Clients.IContainerStoreClient>(); int contextID = SelectRandomItem(this.DbContext.Contexts).Context_ID; string containerName = Guid.NewGuid().ToString(); EAV.Store.IStoreContainer container = client.CreateRootContainer(new EAVStoreLibrary.StoreContainer() { Name = containerName, DataName = containerName.ToUpper(), DisplayText = containerName + ":", Sequence = rng.Next(), }, contextID); Assert.IsNotNull(container, "Failed to create container with name '{0}' for context ID {1}.", containerName, contextID); ResetDatabaseContext(); var dbContainer = this.DbContext.Containers.SingleOrDefault(it => it.Container_ID == container.ContainerID); Assert.IsNotNull(dbContainer, String.Format("Failed to retrieve container ID {0} from the database.", container.ContainerID)); Assert.IsNull(dbContainer.Parent_Container_ID, "Container has parent reference defined when it should not."); Assert.AreEqual(container.Name, dbContainer.Name, "Property 'Name' was not created correctly."); Assert.AreEqual(container.DataName, dbContainer.Data_Name, "Property 'DataName' was not created correctly."); Assert.AreEqual(container.DisplayText, dbContainer.Display_Text, "Property 'DisplayText' was not created correctly."); Assert.AreEqual(container.IsRepeating, dbContainer.Is_Repeating, "Property 'IsRepeating' was not created correctly."); Assert.AreEqual(container.Sequence, dbContainer.Sequence, "Property 'Sequence' was not created correctly."); }
public void CreateDuplicateRootContainer_Data_Name() { EAV.Store.Clients.IContainerStoreClient client = factory.Create <EAV.Store.Clients.IContainerStoreClient>(); int contextID = SelectRandomItem(this.DbContext.Contexts).Context_ID; string containerName = Guid.NewGuid().ToString(); EAV.Store.IStoreContainer container = client.CreateRootContainer(new EAVStoreLibrary.StoreContainer() { Name = containerName, DataName = containerName.ToUpper(), DisplayText = containerName + ":", Sequence = rng.Next(), }, contextID); Assert.IsNotNull(container, "Failed to create container with name '{0}' for context ID {1}.", containerName, contextID); client.CreateRootContainer(new EAVStoreLibrary.StoreContainer() { Name = containerName + "1", DataName = containerName.ToUpper(), DisplayText = containerName + ":", Sequence = rng.Next(), }, contextID); Assert.Fail("Failed to throw exception creating root container with duplicate data name."); }
public void CreateDuplicateChildContainer_Data_Name() { EAV.Store.Clients.IContainerStoreClient client = factory.Create <EAV.Store.Clients.IContainerStoreClient>(); int parentContainerID = SelectRandomItem(this.DbContext.Containers.Where(it => it.Parent_Container_ID == null)).Container_ID; string containerName = Guid.NewGuid().ToString(); EAV.Store.IStoreContainer container = client.CreateChildContainer(new EAVStoreLibrary.StoreContainer() { Name = containerName, DataName = containerName.ToUpper(), DisplayText = containerName + ":", IsRepeating = true, Sequence = rng.Next(), }, parentContainerID); Assert.IsNotNull(container, "Failed to create container with name '{0}' for parent container ID {1}.", containerName, parentContainerID); client.CreateChildContainer(new EAVStoreLibrary.StoreContainer() { Name = containerName + "1", DataName = containerName.ToUpper(), DisplayText = containerName + ":", IsRepeating = true, Sequence = rng.Next(), }, parentContainerID); Assert.Fail("Failed to throw exception creating child container with duplicate name."); }
public EAV.Store.IStoreContainer CreateChildContainer(EAV.Store.IStoreContainer container, int parentContainerID) { if (container == null) { return(null); } using (EAVStoreClient.MicroEAVContext ctx = new MicroEAVContext()) { Container dbContainer = new Container(container); Container dbParentContainer = ctx.Containers.SingleOrDefault(it => it.Container_ID == parentContainerID); if (dbContainer == null) { throw (new InvalidOperationException("Unable to locate parent container.")); } dbContainer.Context_ID = dbParentContainer.Context_ID; dbContainer.Parent_Container_ID = parentContainerID; ctx.Containers.Add(dbContainer); ctx.SaveChanges(); return((EAVStoreLibrary.StoreContainer)dbContainer); } }
public StoreContainer(EAV.Store.IStoreContainer container) { this.ContainerID = container.ContainerID; this.ParentContainerID = container.ParentContainerID; this.ContextID = container.ContextID; this.Name = container.Name; this.DataName = container.DataName; this.DisplayText = container.DisplayText; this.IsRepeating = container.IsRepeating; }
public IHttpActionResult CreateRootContainer(int id, EAV.Store.IStoreContainer container) { try { return(Ok <EAV.Store.IStoreContainer>(containerClient.CreateRootContainer(container, id))); } catch (Exception ex) { return(InternalServerError(ex)); } }
public Container(EAV.Store.IStoreContainer container) { Container_ID = container.ContainerID.GetValueOrDefault(); Context_ID = container.ContextID.GetValueOrDefault(); Data_Name = container.DataName; Display_Text = container.DisplayText; Is_Repeating = container.IsRepeating; Parent_Container_ID = container.ParentContainerID; Name = container.Name; Sequence = container.Sequence; }
public IHttpActionResult UpdateContainer(EAV.Store.IStoreContainer container) { try { containerClient.UpdateContainer(container); return(Ok()); } catch (Exception ex) { return(InternalServerError(ex)); } }
public EAV.Store.IStoreContainer CreateRootContainer(EAV.Store.IStoreContainer container, int contextID) { if (container == null) { return(null); } using (EAVStoreClient.MicroEAVContext ctx = new MicroEAVContext()) { Container dbContainer = new Container(container); dbContainer.Context_ID = contextID; ctx.Containers.Add(dbContainer); ctx.SaveChanges(); return((EAVStoreLibrary.StoreContainer)dbContainer); } }
public void UpdateContainer(EAV.Store.IStoreContainer container) { using (EAVStoreClient.MicroEAVContext ctx = new MicroEAVContext()) { EAVStoreClient.Container dbContainer = ctx.Containers.SingleOrDefault(it => it.Container_ID == container.ContainerID); if (dbContainer != null) { if (dbContainer.Name != container.Name) { dbContainer.Name = container.Name; } if (dbContainer.Data_Name != container.DataName) { dbContainer.Data_Name = container.DataName; } if (dbContainer.Display_Text != container.DisplayText) { dbContainer.Display_Text = container.DisplayText; } if (dbContainer.Is_Repeating != container.IsRepeating) { dbContainer.Is_Repeating = container.IsRepeating; } if (dbContainer.Sequence != container.Sequence) { dbContainer.Sequence = container.Sequence; } ctx.SaveChanges(); } else { throw (new Exception(String.Format("Unable to retrieve container ID {0}.", container.ContainerID))); } } }