public void RemovePackage_ShouldRemovePackage()
        {
            var package = new Package
            {
                Id     = 1,
                Status = PackageStatus.InDelivery
            };
            var packages = new List <Package> {
                package
            };
            var packagesMockSet = MockDbSetHelper.CreateMockSet(packages.AsQueryable());

            var employee = new Employee {
                Id = 1, FirstName = "A", LastName = "B"
            };

            var mockContext = new Mock <InstantDeliveryContext>();

            mockContext.Setup(c => c.Packages).Returns(packagesMockSet.Object);
            mockContext.Setup(c => c.Employees).ReturnsDbSet(employee);

            var controller = new PackagesController(mockContext.Object, null);

            controller.Delete(package.Id);

            packagesMockSet.Verify(m => m.Remove(It.Is((Package p) => p.Id == package.Id)), Times.Once());
            mockContext.Verify(m => m.SaveChanges(), Times.Once());
        }