public void test_WHEN_different_types_are_provided_THEN_exception_is_thrown() { var fieldRef = new FieldRefOperand("test"); var values = new List <IOperand>(); values.Add(new IntegerValueOperand(1)); values.Add(new TextValueOperand("2")); var valuesOperand = new ValuesValueOperand(values); var operation = new InOperation(null, fieldRef, valuesOperand); var expr = operation.ToExpression(); }
public void test_THAT_in_operation_IS_transformed_to_expression_properly() { var fieldRef = new FieldRefOperand("test"); var values = new List <IOperand>(); values.Add(new IntegerValueOperand(1)); values.Add(new IntegerValueOperand(2)); values.Add(new IntegerValueOperand(3)); var valuesOperand = new ValuesValueOperand(values); var operation = new InOperation(null, fieldRef, valuesOperand); var expr = operation.ToExpression(); Assert.That(expr.ToString(), Is.EqualTo("new [] {1, 2, 3}.Contains(Convert(x.get_Item(\"test\")))")); }
public void test_THAT_in_operation_IS_rendered_to_caml_properly() { var f = MockRepository.GenerateStub <FieldRefOperand>(""); var v = MockRepository.GenerateStub <IntegerValueOperand>(1); f.Stub(o => o.ToCaml()).Return(new XElement("fieldRefOperandStub")); v.Stub(o => o.ToCaml()).Return(new XElement("valueOperandStub")); var op = new InOperation(new OperationResultBuilder(), f, v); string caml = op.ToResult().ToString(); string expected = @"<In> <fieldRefOperandStub /> <valueOperandStub /> </In>"; Assert.That(caml, Is.EqualTo(expected).Using(new CamlComparer())); }
public string Visit(InOperation operation) { Contract.RequiresNotNull(operation, "operation != null"); return($"{Visit(operation.LeftSide)} in ({Visit(operation.RightSide)})"); }