public void GetBodyTypeIdsByModelIdAndMakeId_ShouldReturnNeededItems_WhenModelIdIsNull() { int id = 2; var items = new List <Vehicle>() { new Vehicle() { MakeId = id, ModelId = null, BodyTypeId = 1 }, new Vehicle() { MakeId = id, ModelId = null, BodyTypeId = 2 }, new Vehicle() { MakeId = id, ModelId = null, BodyTypeId = 2 }, new Vehicle() { MakeId = id, ModelId = null, BodyTypeId = null }, new Vehicle() { MakeId = id, ModelId = null, BodyTypeId = null }, new Vehicle() { MakeId = id, ModelId = null, BodyTypeId = 2, Id = 1 }, new Vehicle() { MakeId = id, ModelId = 10, BodyTypeId = id, Id = 2 }, new Vehicle() { MakeId = 3, ModelId = id, BodyTypeId = id }, }.AsQueryable(); var repositoryMock = new Mock <IInternalDbRepository <Vehicle> >(); repositoryMock.Setup(x => x.All()).Returns(() => items); var service = new VehiclesService(repositoryMock.Object); var response = service.GetBodyTypeIdsByModelIdAndMakeId(id, null); Assert.AreEqual(response.Count, 3); Assert.AreEqual(response[0], 1); Assert.AreEqual(response[1], 2); Assert.AreEqual(response[2], null); repositoryMock.VerifyAll(); }