//1. Is Ok //2. throws exception //3. propertyName is not valid //4. Value is not convertable to propertyName //5. Operation is not valid. [Test] public void BuildExpression_WhenCalled_ShouldReturnOk() { //Arrange IEnumerable <FilterStatement <EventModel> > filterStatements = TestsFacade.FilterStatementFacade.BuildFilterStatementList <EventModel>(); FiltersService <EventModel> service = new FiltersService <EventModel>(filterStatements); //Act ResultService <Expression <Func <EventModel, bool> > > result = service.BuildExpression(); //Assert Assert.IsNotNull(result); Assert.IsInstanceOf <ResultService <Expression <Func <EventModel, bool> > > >(result); Assert.IsTrue(result.Success); }
[Test] public void BuildExpression_WhenPropertyNull_ShouldReturnFail() { //Arrange FilterStatement <EventModel> filterStatement = TestsFacade.FilterStatementFacade.BuildFilterStatement <EventModel>(); filterStatement.PropertyName = null; IEnumerable <FilterStatement <EventModel> > filterStatements = new List <FilterStatement <EventModel> >() { filterStatement }; FiltersService <EventModel> service = new FiltersService <EventModel>(filterStatements); //Act ResultService <Expression <Func <EventModel, bool> > > result = service.BuildExpression(); //Assert Assert.IsNotNull(result); Assert.IsFalse(result.Success); Assert.IsNull(result.Value); Assert.IsTrue(result.ErrorCode == ErrorCode.EntityNotValid); }