public void Validate_Result_True()
        {
            // arrange
            var context = new CategoryChangeBulkActionContext {
                CatalogId = "catalog"
            };
            var catalogService  = new Mock <ICatalogService>();
            var serviceProvider = new Mock <ILazyServiceProvider>();

            catalogService.Setup(t => t.GetById("catalog"))
            .Returns(Mock.Of <Catalog>(catalog => catalog.IsVirtual == false));
            serviceProvider.Setup(t => t.Resolve <ICatalogService>()).Returns(catalogService.Object);

            var bulkAction = new CategoryChangeBulkAction(serviceProvider.Object, context);

            // act
            var result = bulkAction.Validate();

            // assert
            result.Succeeded.Should().Be(true);
        }
        public void Validate_Result_HaveErrorCount(int errorCount)
        {
            // arrange
            var context = new CategoryChangeBulkActionContext {
                CatalogId = "catalog"
            };
            var catalogService  = new Mock <ICatalogService>();
            var serviceProvider = new Mock <ILazyServiceProvider>();

            catalogService.Setup(t => t.GetById("catalog"))
            .Returns(Mock.Of <Catalog>(catalog => catalog.IsVirtual == true));
            serviceProvider.Setup(t => t.Resolve <ICatalogService>()).Returns(catalogService.Object);

            var bulkAction = new CategoryChangeBulkAction(serviceProvider.Object, context);

            // act
            var result = bulkAction.Validate();

            // assert
            result.Errors.Should().HaveCount(errorCount, "Because we can't move in virtual catalog'");
        }