public void CharacterCommons_CharacterObtainsItem_ValidCall() { //Arrange List <Character_Item> heldItems = new List <Character_Item>(); var mockSet = new Mock <DbSet <Character_Item> >() .SetupData(heldItems, o => { return(heldItems.Single(x => x.Character_id.CompareTo(o.First()) == 0)); }); Character_Item expected = new Character_Item { Character_id = CreateTestData.getSampleCharacter().Character_id, Item_id = CreateTestData.GetSampleItem().Item_id, count = 1 }; using (var mockContext = AutoMock.GetLoose()) { mockContext.Mock <ItemsContext>() .Setup(x => x.HeldItems).Returns(mockSet.Object); mockContext.Mock <ItemsContext>() .Setup(x => x.Set <Character_Item>()).Returns(mockSet.Object); IUnitOfWork uow = UoW_Factory.getUnitofWork(mockContext); IBaseUserAccess access = UserAccessFactory.getBaseUserAccess(uow); //act ICharacterCommonFunctions toTest = ProcessorFactory.GetCharacterCommonFunctions(access); toTest.addHeldItemToDb(expected.Character_id, expected.Item_id); //Assert heldItems.Should().ContainEquivalentOf(expected); } }