public void AddItemsTest()
        {
            // Arrange: set up a context mock with an empty collection of root items, exposed through a provider mock.
            Mock <IMyContext> myContextMock = new Mock <IMyContext>();
            var myRootItems = new DbSetMock <MyRootItem>();

            myContextMock.Setup(m => m.MyRootItems).Returns(myRootItems);
            Mock <IMyContextProvider> myContextProvider = new Mock <IMyContextProvider>();

            myContextProvider.Setup(m => m.CreateContext()).Returns(myContextMock.Object);

            // Act: create the service instance and call AddItems operation.
            var service = new MyService(myContextProvider.Object);

            service.AddItems();

            // Assert: verify that the context is created, and that the side effects are as expected.
            myContextProvider.Verify(m => m.CreateContext());
            Assert.AreEqual(2, myRootItems.Count());
        }