protected MrCMSTest() { Kernel.Load(new TestContextModule()); Kernel.Bind <IEventContext>().ToMethod(context => _eventContext); MrCMSKernel.OverrideKernel(Kernel); CurrentRequestData.SiteSettings = new SiteSettings(); }
public void ImportProductVariantPriceBreakService_ImportVariantPriceBreaks_ShouldCallProductVariantServiceAddPriceBreak() { var mockingKernel = new MockingKernel(); var session = A.Fake <ISession>(); mockingKernel.Bind <ISession>().ToMethod(context => session).InSingletonScope(); MrCMSKernel.OverrideKernel(mockingKernel); var productVariantDTO = new ProductVariantImportDataTransferObject { PriceBreaks = new Dictionary <int, decimal>() { { 10, 299 } } }; var productVariant = new ProductVariant(); var priceBreaks = _importProductUrlHistoryService.ImportVariantPriceBreaks(productVariantDTO, productVariant); priceBreaks.Should().HaveCount(1); var priceBreak = priceBreaks.ToList()[0]; priceBreak.Price.Should().Be(299); priceBreak.Quantity.Should().Be(10); priceBreak.ProductVariant.Should().Be(productVariant); }
public void PrepareForSyncAmazonListingService_UpdateAmazonListing_ShouldReturnAmazonListingType() { var mockingKernel = new MockingKernel(); MrCMSKernel.OverrideKernel(mockingKernel); mockingKernel.Bind <ISession>().ToMethod(context => A.Fake <ISession>()); var product = new Product(); var productVariant = new ProductVariant() { Product = product, SKU = "S1", Barcode = "" }; var model = new AmazonListing() { ProductVariant = productVariant, AmazonListingGroup = new AmazonListingGroup() { FulfillmentChannel = AmazonFulfillmentChannel.MFN } }; A.CallTo(() => _productVariantService.GetProductVariantBySKU(model.ProductVariant.SKU)).Returns(productVariant); var results = _prepareForSyncAmazonListingService.UpdateAmazonListing(model); results.Should().BeOfType <AmazonListing>(); }
public void PrepareForSyncAmazonListingService_InitAmazonListingFromProductVariant_ShouldCallSave() { var item = new Currency() { Code = "GBP", Id = 1 }; Session.Transact(session => session.Save(item)); var mockingKernel = new MockingKernel(); MrCMSKernel.OverrideKernel(mockingKernel); mockingKernel.Bind <ISession>().ToMethod(context => A.Fake <ISession>()); mockingKernel.Bind <EcommerceSettings>().ToMethod(context => new EcommerceSettings() { CurrencyId = 1 }); var product = new Product() { BrandPage = new Brand() { Name = "B" } }; var productVariant = new ProductVariant() { Product = product, SKU = "S1", BasePrice = 1, StockRemaining = 2, Name = "P", ManufacturerPartNumber = "MPN1", Barcode = "" }; var amazonListingGroup = new AmazonListingGroup() { Id = 1, FulfillmentChannel = AmazonFulfillmentChannel.MFN }; var model = new AmazonListing() { ProductVariant = productVariant, StandardProductId = "1P", StandardProductIDType = StandardProductIDType.EAN, AmazonListingGroup = amazonListingGroup }; A.CallTo(() => _amazonListingGroupService.Get(amazonListingGroup.Id)).Returns(amazonListingGroup); A.CallTo(() => _productVariantService.GetProductVariantBySKU(model.ProductVariant.SKU)).Returns(productVariant); var results = _prepareForSyncAmazonListingService.InitAmazonListingFromProductVariant(model, model.ProductVariant.SKU, amazonListingGroup.Id); A.CallTo(() => _amazonListingGroupService.Save(amazonListingGroup)).MustHaveHappened(); }
public void PrepareForSyncAmazonListingService_InitAmazonListingFromProductVariant_ShouldReturnAmazonListingType() { var mockingKernel = new MockingKernel(); MrCMSKernel.OverrideKernel(mockingKernel); mockingKernel.Bind <ISession>().ToMethod(context => A.Fake <ISession>()); var model = new AmazonListing(); var results = _prepareForSyncAmazonListingService.InitAmazonListingFromProductVariant(model, "S1", 1); results.Should().BeOfType <AmazonListing>(); }
public DefaultFormRendererTests() { _formCollection = new FormCollection(); var mockingKernel = new MockingKernel(); MrCMSKernel.OverrideKernel(mockingKernel); _elementRendererManager = A.Fake <IElementRendererManager>(); _labelRenderer = A.Fake <ILabelRenderer>(); _validationMessageRenderer = A.Fake <IValidationMessaageRenderer>(); _submittedMessageRenderer = A.Fake <ISubmittedMessageRenderer>(); _siteSettings = new SiteSettings(); _defaultFormRenderer = new DefaultFormRenderer(_elementRendererManager, _labelRenderer, _validationMessageRenderer, _submittedMessageRenderer, _siteSettings); }
public void AmazonGenerateFeedService_GetProductPrice_ShouldReturnPriceType() { var mockingKernel = new MockingKernel(); MrCMSKernel.OverrideKernel(mockingKernel); mockingKernel.Bind <ISession>().ToMethod(context => A.Fake <ISession>()); var model = new AmazonListing() { SellerSKU = "S1" }; var results = _amazonGenerateFeedService.GetProductPrice(model); results.Should().BeOfType <Price>(); }
public void BulkShippingUpdateValidationService_ValidateBusinessLogic_CallsAllIoCRegisteredRulesOnAllOrders() { var mockingKernel = new MockingKernel(); var validationRules = Enumerable.Range(1, 10).Select(i => A.Fake <IBulkShippingUpdateValidationRule>()).ToList(); validationRules.ForEach(rule => mockingKernel.Bind <IBulkShippingUpdateValidationRule>() .ToMethod(context => rule)); MrCMSKernel.OverrideKernel(mockingKernel); var items = Enumerable.Range(1, 10).Select(i => new BulkShippingUpdateDataTransferObject()).ToList(); _bulkShippingUpdateValidationService.ValidateBusinessLogic(items); validationRules.ForEach( rule => EnumerableHelper.ForEach(items, product => A.CallTo(() => rule.GetErrors(product)).MustHaveHappened())); }
public void AmazonGenerateFeedService_GetProductPrice_ShouldSetValues() { var mockingKernel = new MockingKernel(); MrCMSKernel.OverrideKernel(mockingKernel); mockingKernel.Bind <ISession>().ToMethod(context => A.Fake <ISession>()); var listing = new AmazonListing() { SellerSKU = "S1", Price = 1 }; var results = _amazonGenerateFeedService.GetProductPrice(listing); results.As <Price>().StandardPrice.Value.Should().Be(listing.Price); results.As <Price>().StandardPrice.Currency.Should().Be(BaseCurrencyCodeWithDefault.USD); results.As <Price>().SKU.Should().Be(listing.SellerSKU); }
public void ImportDocumentsValidationService_ValidateBusinessLogic_CallsAllIoCRegisteredRulesOnAllDocuments() { var mockingKernel = new MockingKernel(); List <IDocumentImportValidationRule> documentImportValidationRules = Enumerable.Range(1, 10).Select(i => A.Fake <IDocumentImportValidationRule>()).ToList(); documentImportValidationRules.ForEach(rule => mockingKernel.Bind <IDocumentImportValidationRule>() .ToMethod(context => rule)); MrCMSKernel.OverrideKernel(mockingKernel); List <DocumentImportDTO> documents = Enumerable.Range(1, 10).Select(i => new DocumentImportDTO()).ToList(); _importDocumentsValidationService.ValidateBusinessLogic(documents); documentImportValidationRules.ForEach( rule => EnumerableHelper.ForEach(documents, document => A.CallTo(() => rule.GetErrors(document, documents)).MustHaveHappened())); }
public void ImportProductsValidationService_ValidateBusinessLogic_CallsAllIoCRegisteredRulesOnAllProducts() { var mockingKernel = new MockingKernel(); var productImportValidationRules = Enumerable.Range(1, 10).Select(i => A.Fake <IProductImportValidationRule>()).ToList(); var productVariantImportValidationRule = A.Fake <IProductVariantImportValidationRule>(); productImportValidationRules.ForEach(rule => mockingKernel.Bind <IProductImportValidationRule>() .ToMethod(context => rule)); mockingKernel.Bind <IProductVariantImportValidationRule>() .ToMethod(context => productVariantImportValidationRule) .InSingletonScope(); MrCMSKernel.OverrideKernel(mockingKernel); var products = Enumerable.Range(1, 10).Select(i => new ProductImportDataTransferObject()).ToList(); _importProductsValidationService.ValidateBusinessLogic(products); productImportValidationRules.ForEach( rule => EnumerableHelper.ForEach(products, product => A.CallTo(() => rule.GetErrors(product)).MustHaveHappened())); }
public NinjectScopingTests() { _kernel = new StandardKernel(); MrCMSKernel.OverrideKernel(_kernel); _kernel.Bind <ITestInterface>().ToMethod(context => A.Fake <ITestInterface>()).InThreadScope(); }
public void PrepareForSyncAmazonListingService_UpdateAmazonListing_ShouldSetValues() { var item = new Currency() { Code = "GBP", Id = 1 }; Session.Transact(session => session.Save(item)); var mockingKernel = new MockingKernel(); MrCMSKernel.OverrideKernel(mockingKernel); mockingKernel.Bind <ISession>().ToMethod(context => A.Fake <ISession>()); mockingKernel.Bind <EcommerceSettings>().ToMethod(context => new EcommerceSettings() { CurrencyId = 1 }); var product = new Product() { BrandPage = new Brand() { Name = "B" } }; var productVariant = new ProductVariant() { Product = product, SKU = "S1", BasePrice = 1, StockRemaining = 2, Name = "P", ManufacturerPartNumber = "MPN1", Barcode = "" }; var model = new AmazonListing() { ProductVariant = productVariant, StandardProductId = "1P", StandardProductIDType = StandardProductIDType.EAN, AmazonListingGroup = new AmazonListingGroup() { FulfillmentChannel = AmazonFulfillmentChannel.MFN } }; A.CallTo(() => _productVariantService.GetProductVariantBySKU(model.ProductVariant.SKU)).Returns(productVariant); var results = _prepareForSyncAmazonListingService.UpdateAmazonListing(model); results.As <AmazonListing>().Condition.Should().Be(ConditionType.New); results.As <AmazonListing>().Currency.Should().Be("GBP"); results.As <AmazonListing>().Manafacturer.Should().Be("B"); results.As <AmazonListing>().Brand.Should().Be("B"); results.As <AmazonListing>().MfrPartNumber.Should().Be("MPN1"); results.As <AmazonListing>().Price.Should().Be(1); results.As <AmazonListing>().Quantity.Should().Be(2); results.As <AmazonListing>().Title.Should().Be("P"); results.As <AmazonListing>().StandardProductIDType.Should().Be(_amazonSellerSettings.BarcodeIsOfType); results.As <AmazonListing>().StandardProductId.Should().Be(model.StandardProductId); results.As <AmazonListing>().FulfillmentChannel.Should().Be(AmazonFulfillmentChannel.MFN); }