public void FilterBy_ShouldReturnMotorsFilteredByAllParameters() { var motorFamilies = new List <MotorFamily>() { MotorFamily.VOLVO, MotorFamily.Ford }; var features = new List <string>() { "F", "", "H", "EMD" }; var displacements = new List <uint?>() { 120, 200, 250 }; var expectedMotors = new List <Motor>() { motorsExamples1[0], motorsExamples1[3], motorsExamples1[7] }; var motorService = new MotorService(new DataAccessByMemoryCache()); var result = motorService.MotorsFilterBy(motorsExamples1, motorFamilies, GetAllDisplacements(), GetAllFeatures()); Assert.Equal(expectedMotors.OrderBy(m => m.MotorNumber), result.OrderBy(m => m.MotorNumber)); }
public void FilterBy_ShouldThrowExceptionIfParametersAreNulls() { IEnumerable <MotorFamily> families = null; IEnumerable <uint?> displacements = null; IEnumerable <string> features = null; var motorService = new MotorService(new DataAccessByMemoryCache()); Assert.Throws <ArgumentNullException>(() => motorService.MotorsFilterBy(motorsExamples1, families, displacements, features)); }
public void FilterBy_ShouldReturnEmptyCollectionIfParametersAreEmptyCollections() { List <MotorFamily> families = new List <MotorFamily>(); List <uint?> displacements = new List <uint?>(); List <string> features = new List <string>(); var motorService = new MotorService(new DataAccessByMemoryCache()); var result = motorService.MotorsFilterBy(motorsExamples1, families, displacements, features); Assert.Empty(result); }
public void FilterBy_ShouldReturnMotorsFilteredByFeatures() { var features = new List <string>() { "F", "" }; var expectedMotors = new List <Motor>() { motorsExamples1[1], motorsExamples1[2] }; var motorService = new MotorService(new DataAccessByMemoryCache()); var result = motorService.MotorsFilterBy(motorsExamples1, GetAllFamilies(), GetAllDisplacements(), features); Assert.Equal(expectedMotors.OrderBy(m => m.MotorNumber), result.OrderBy(m => m.MotorNumber)); }
public void FilterBy_ShouldReturnMotorsFilteredByDisplacements() { var displacements = new List <uint?>() { 200, 250 }; var expectedMotors = new List <Motor>() { motorsExamples1[0], motorsExamples1[1], motorsExamples1[4], motorsExamples1[6], motorsExamples1[7] }; var motorService = new MotorService(new DataAccessByMemoryCache()); var result = motorService.MotorsFilterBy(motorsExamples1, GetAllFamilies(), displacements, GetAllFeatures()); Assert.Equal(expectedMotors.OrderBy(m => m.MotorNumber), result.OrderBy(m => m.MotorNumber)); }
public void FilterBy_ShouldReturnMotorsFilteredByFamilies() { var motorFamilies = new List <MotorFamily>() { MotorFamily.Toyota }; var expectedMotors = new List <Motor>() { motorsExamples1[4] }; var motorService = new MotorService(new DataAccessByMemoryCache()); var result = motorService.MotorsFilterBy(motorsExamples1, motorFamilies, GetAllDisplacements(), GetAllFeatures()); Assert.Equal(expectedMotors.OrderBy(m => m.MotorNumber), result.OrderBy(m => m.MotorNumber)); }
public void FilterBy_ShouldReturnEmptyCollectionIfNothingFound() { var features = new List <string>() { "Not existing feature" }; var displacements = new List <uint?>() { 404 }; var families = new List <MotorFamily>() { MotorFamily.VOLVO }; var motorService = new MotorService(new DataAccessByMemoryCache()); var result = motorService.MotorsFilterBy(motorsExamples1, families, displacements, features); Assert.Empty(result); Assert.NotNull(result); }