public void Generate_docs_with_contact_info() { //Arrange var module = new FakeDocsModule(new DefaultRouteCacheProvider(() => new FakeRouteCache())); var contact = new FakeContact(); //Act module.FillContact(contact.Name, contact.Email, contact.Url); var response = module.GetDocumentation(); string body; using (var memoryStream = new MemoryStream()) { response.Contents.Invoke(memoryStream); body = Encoding.UTF8.GetString(memoryStream.GetBuffer()); } var spec = JsonConvert.DeserializeObject <OpenApiSpecification>(body); //Assert Assert.Equal(contact.Name, spec.Info.Contact.Name); Assert.Equal(contact.Email, spec.Info.Contact.Email); Assert.Equal(contact.Url, spec.Info.Contact.Url); }
public void TestFromFakeContactReturnsNewContactWithPopulatedValues() { var fakeContact = new FakeContact { Address = "123 main st.", Email = "*****@*****.**", Alias = "some_login", Company = "Legal", Location = "New York", Name = "Melissa Doe", Avatar = "https://thisiswheremyavataris.com/myavatar.jpg", Phone = "123-4567" }; var contact = Mappings.FromFakeContact(fakeContact); Assert.IsNotNull(contact); Assert.AreEqual(fakeContact.Email, contact.EmailAddress); Assert.AreEqual(fakeContact.Address, contact.Address); Assert.AreEqual(fakeContact.Alias, contact.Alias); Assert.AreEqual(fakeContact.Company, contact.Company); Assert.AreEqual(fakeContact.Location, contact.Location); Assert.AreEqual(fakeContact.Name, contact.Name); Assert.AreEqual(fakeContact.Phone, contact.Phone); Assert.AreEqual(fakeContact.Avatar, contact.Thumbnail); }
public void ShouldMergeCartsOnLogIn(bool persistent) { // Arrange var contactModel = new FakeContact(); var contact = new ContactContext(contactModel); var tracker = Substitute.For <ITracker>(); var testCart = new Sitecore.Commerce.Entities.Carts.Cart(); tracker.Contact.Returns(contact); var cartService = Substitute.For <ICartService>(); cartService.GetCart().Returns(testCart); var customerProvider = Substitute.For <CustomerServiceProvider>(); var accountService = new AccountService(cartService, customerProvider); // Act using (new Switcher <ITracker, TrackerSwitcher>(tracker)) { accountService.Login("user", "password", persistent); } // Assert cartService.Received().MergeCarts(testCart); }
public static IContact FromFakeContact(FakeContact fakeContact) { return(new Contact { EmailAddress = fakeContact.Email, Address = fakeContact.Address, Alias = fakeContact.Alias, Company = fakeContact.Company, Location = fakeContact.Location, Name = fakeContact.Name, Phone = fakeContact.Phone, Thumbnail = fakeContact.Avatar }); }
public void ShouldNotSaveMergedCartUsingPublicApiIfAnonymousCartHasNoCartLines() { // Arrange var currentCart = new Cart { ShopName = "My", ExternalId = "GUID", Lines = new ReadOnlyCollectionAdapter <CartLine> { new CartLine { ExternalCartLineId = "1", Product = new CartProduct { ProductId = "Audi" } } } }; var cartAnonymous = new Cart { ShopName = "My" }; this.cartServiceProvider.CreateOrResumeCart(Arg.Is <CreateOrResumeCartRequest>(r => r.UserId == "John Carter")).Returns(new CartResult { Cart = currentCart }); this.cartServiceProvider.CreateOrResumeCart(Arg.Is <CreateOrResumeCartRequest>(r => r.UserId == ID.Parse(this.contactId).ToString())).Returns(new CartResult { Cart = cartAnonymous }); var contactModel = new FakeContact(); contactModel.Id = new ID(this.contactId); contactModel.Identifiers.Identifier = string.Empty; var contact = new ContactContext(contactModel); var tracker = Substitute.For <ITracker>(); tracker.Contact.Returns(contact); var testCart = new Cart(); // Act using (new Switcher <ITracker, TrackerSwitcher>(tracker)) { this.service.MergeCarts(testCart); } // Assert this.cartServiceProvider.DidNotReceive().SaveCart(Arg.Is <SaveCartRequest>(r => r.Cart == currentCart)); }