public void test_THAT_2_joins_ARE_translated_correctly() { string xml = "<Joins>" + "<Join Type=\"LEFT\" ListAlias=\"Customers\">" + "<Eq>" + "<FieldRef Name=\"CustomerName\" RefType=\"Id\" />" + "<FieldRef List=\"Customers\" Name=\"Id\" />" + "</Eq>" + "</Join>" + "<Join Type=\"LEFT\" ListAlias=\"CustomerCities\">" + "<Eq>" + "<FieldRef List=\"Customers\" Name=\"CityName\" RefType=\"Id\" />" + "<FieldRef List=\"CustomerCities\" Name=\"Id\" />" + "</Eq>" + "</Join>" + "</Joins>"; var b = new ReOperandBuilderFromCaml(); var t = new ReTranslatorFromCaml(null, null, null, null, new ReJoinAnalyzer(XmlHelper.Get(xml), b), null); var expr = t.TranslateJoins(); Assert.That(expr.Count, Is.EqualTo(2)); Assert.That(expr[0].Key.ToString(), Is.EqualTo("x => x.get_Item(\"CustomerName\").ForeignList(\"Customers\")")); Assert.That(expr[0].Value, Is.EqualTo(JoinType.Left)); Assert.That(expr[1].Key.ToString(), Is.EqualTo("x => x.get_Item(\"CityName\").PrimaryList(\"Customers\").ForeignList(\"CustomerCities\")")); Assert.That(expr[1].Value, Is.EqualTo(JoinType.Left)); }
public void test_THAT_view_fields_ARE_translated_correctly() { string xml = "<ViewFields>" + "<FieldRef Name=\"Title\" />" + "</ViewFields>"; var b = new ReOperandBuilderFromCaml(); var t = new ReTranslatorFromCaml(null, null, null, new ReArrayAnalyzer(XmlHelper.Get(xml), b), null, null); var expr = t.TranslateViewFields(); Assert.That(expr.ToString(), Is.EqualTo("x => x.get_Item(\"Title\")")); }
public void test_THAT_order_by_IS_translated_correctly() { string xml = " <OrderBy>" + " <FieldRef Name=\"Modified\" Ascending=\"False\" />" + " </OrderBy>"; var b = new ReOperandBuilderFromCaml(); var t = new ReTranslatorFromCaml(null, new ReArrayAnalyzer(XmlHelper.Get(xml), b), null, null, null, null); var expr = t.TranslateOrderBy(); Assert.That(expr.ToString(), Is.EqualTo("x => (x.get_Item(\"Modified\") As Desc)")); }
public void test_THAT_where_IS_translated_correctly() { string xml = " <Eq>" + " <FieldRef Name=\"Title\" />" + " <Value Type=\"Text\">testValue</Value>" + " </Eq>"; var b = new ReOperandBuilderFromCaml(); var t = new ReTranslatorFromCaml(new ReEqAnalyzer(XmlHelper.Get(xml), b), null, null, null, null, null); var expr = t.TranslateWhere(); Assert.That(expr.ToString(), Is.EqualTo("x => (Convert(x.get_Item(\"Title\")) = \"testValue\")")); }
public void test_THAT_group_by_IS_translated_correctly() { string xml = " <GroupBy>" + " <FieldRef Name=\"field1\" />" + " </GroupBy>"; var b = new ReOperandBuilderFromCaml(); var t = new ReTranslatorFromCaml(null, null, new ReArrayAnalyzer(XmlHelper.Get(xml), b), null, null, null); var g = new GroupByParams(); var expr = t.TranslateGroupBy(out g); Assert.That(expr.ToString(), Is.EqualTo("x => x.get_Item(\"field1\")")); Assert.IsFalse(g.HasCollapse); Assert.IsFalse(g.HasGroupLimit); }