public void GetSingle_PassCorrectParams_ReturnsNotNullEntity() { // Arrange const string whereParam = "where"; const string token = "accessToken"; const string leadId = "Id"; var expected = new SF_Lead() { Id = leadId }; var sfUtilities = new Mock <ECN_Framework_Entities.Salesforce.Interfaces.ISFUtilities>(); sfUtilities.Setup(x => x.GetSingle <SF_Lead>(token, whereParam, It.IsAny <LeadConverter>())).Returns(expected); ECN_Framework_Entities.Salesforce.SalesForceBase.InitializeSFUtilities(sfUtilities.Object); // Act var result = SF_Lead.GetSingle(token, whereParam); // Assert result.ShouldBe(expected); sfUtilities.Verify( x => x.GetSingle <SF_Lead>( It.Is <string>(t => t == token), It.Is <string>(id => id == whereParam), It.IsAny <LeadConverter>()), Times.Once); }
public void GetAll_ExceptionWhenGetResponseStream_ReturnsEmptyList() { // Arrange var webException = new WebException(); var webResponse = CreateWebResponse(webException); var webRequest = CreateWebRequest(webResponse); var queryParameter = string.Empty; var sfUtilities = CreateSFUtilities(EmailBouncedDateProperty); sfUtilities.Setup(x => x.CreateQueryRequest( It.IsAny <string>(), It.IsAny <string>(), It.IsAny <Method>(), It.IsAny <ResponseType>())) .Returns(webRequest.Object) .Callback <string, string, Method, ResponseType>((token, query, method, response) => { queryParameter = query; }); sfUtilities.Setup(x => x.LogWebException(It.IsAny <WebException>(), It.IsAny <string>())); ECN_Framework_Entities.Salesforce.SalesForceBase.InitializeSFUtilities(sfUtilities.Object); // Act var contactsList = SF_Lead.GetAll(string.Empty); // Assert contactsList.ShouldBeEmpty(); sfUtilities.Verify(x => x.LogWebException(webException, queryParameter), Times.Once()); }
public void Update_PassCorrectPameters_ReturnTrue() { // Arrange var token = "accessToken"; var leadId = "Id"; var lead = new SF_Lead() { Id = leadId }; var sfUtilities = new Mock <ISFUtilities>(); sfUtilities.Setup(x => x.Update(It.IsAny <string>(), It.IsAny <ECN_Framework_Entities.Salesforce.SalesForceBase>(), It.IsAny <SFObject>(), It.IsAny <string>())).Returns(true); ECN_Framework_Entities.Salesforce.SalesForceBase.InitializeSFUtilities(sfUtilities.Object); // Act var result = SF_Lead.Update(token, lead); // Assert result.ShouldBeTrue(); sfUtilities.Verify( x => x.Update( It.Is <string>(t => t == token), It.Is <ECN_Framework_Entities.Salesforce.SalesForceBase>(sf => sf == lead), It.Is <SFObject>(sf => sf == SFObject.Lead), It.Is <string>(id => id == leadId)), Times.Once); }
public void Sort_SortByPropertyInDescendingOrder_ReturnSortedList( [ValueSource(nameof(SortProperties))] string sortBy) { // Arrange leads.ForEach(x => x.SetProperty(sortBy, leads.IndexOf(x))); var expected = leads.OrderByDescending(x => x.GetPropertyValue(sortBy)).ToList(); // Act var result = SF_Lead.Sort(leads, sortBy, System.Web.UI.WebControls.SortDirection.Descending); // Assert CollectionAssert.AreEqual(expected, result); }
public void GetAll_TwoResponsesOneWithFalseDoneAndOneWithTrueDoneBothHasEmailBouncedDate_ReturnsListWithTwoItems() { // Arrange var webResponse = CreateWebResponse(EmailBouncedDateProperty); var webRequest = CreateWebRequest(webResponse); var sfUtilities = CreateSFUtilities(EmailBouncedDateProperty); sfUtilities.Setup(x => x.CreateQueryRequest( It.IsAny <string>(), It.IsAny <string>(), It.IsAny <Method>(), It.IsAny <ResponseType>())).Returns(webRequest.Object); ECN_Framework_Entities.Salesforce.SalesForceBase.InitializeSFUtilities(sfUtilities.Object); // Act var contactsList = SF_Lead.GetAll(string.Empty); // Assert contactsList.ShouldNotBeNull(); contactsList.Count.ShouldBe(2); sfUtilities.VerifyAll(); }