public void SomeTests() { Tag t1 = new Tag(null, 1, "tag1"); Tag t2 = new Tag(null, 2, "tag2"); Tag t3 = new Tag(null, 3, "tag3"); Tag t4 = new Tag(null, 4, "tag4"); Tag t5 = new Tag(null, 5, "tag5"); TagTerm tt1 = new TagTerm(t1); TagTerm tt2 = new TagTerm(t2); TagTerm tt3 = new TagTerm(t3); TagTerm tt4 = new TagTerm(t4); TagTerm tt5 = new TagTerm(t5); object [] tests = { " (photos.id IN (SELECT photo_id FROM photo_tags WHERE tag_id = 1)) ", tt1, " (photos.id IN (SELECT photo_id FROM photo_tags WHERE tag_id IN (2, 3))) ", new OrTerm(tt2,tt3), " (photos.id IN (SELECT photo_id FROM photo_tags WHERE tag_id IN (3, 4, 5))) ", new OrTerm(tt3,tt4, tt5), }; for (int i = 0; i < tests.Length; i += 2) { //System.Console.WriteLine ((tests[i+1] as LogicalTerm).SqlClause ()); //System.Console.WriteLine (tests[i]); Assert.AreEqual(tests[i] as string, (tests[i + 1] as LogicalTerm).SqlClause()); } }
public void SomeTests() { Tag t1 = new Tag (null, 1, "tag1"); Tag t2 = new Tag (null, 2, "tag2"); Tag t3 = new Tag (null, 3, "tag3"); Tag t4 = new Tag (null, 4, "tag4"); Tag t5 = new Tag (null, 5, "tag5"); TagTerm tt1 = new TagTerm (t1); TagTerm tt2 = new TagTerm (t2); TagTerm tt3 = new TagTerm (t3); TagTerm tt4 = new TagTerm (t4); TagTerm tt5 = new TagTerm (t5); object [] tests = { " (photos.id IN (SELECT photo_id FROM photo_tags WHERE tag_id = 1)) ", tt1, " (photos.id IN (SELECT photo_id FROM photo_tags WHERE tag_id IN (2, 3))) ", new OrTerm (tt2, tt3), " (photos.id IN (SELECT photo_id FROM photo_tags WHERE tag_id IN (3, 4, 5))) ", new OrTerm (tt3, tt4, tt5), }; for (int i=0; i < tests.Length; i+=2) { //System.Console.WriteLine ((tests[i+1] as LogicalTerm).SqlClause ()); //System.Console.WriteLine (tests[i]); Assert.AreEqual (tests[i] as string, (tests[i+1] as LogicalTerm).SqlClause ()); } }
public void SomeTests() { var c10 = new Category(null, 10, "tag10"); var c11 = new Category(null, 11, "tag11"); var c12 = new Category(c11, 12, "tag12"); var t1 = new Tag(null, 1, "tag1"); var t2 = new Tag(null, 2, "tag2"); var t3 = new Tag(c10, 3, "tag3"); var t4 = new Tag(c11, 4, "tag4"); var t5 = new Tag(c12, 5, "tag5"); var tt10 = new TagTerm(c10); var tt11 = new TagTerm(c11); var tt12 = new TagTerm(c12); var tt1 = new TagTerm(t1); var tt2 = new TagTerm(t2); var tt3 = new TagTerm(t3); var tt4 = new TagTerm(t4); var tt5 = new TagTerm(t5); object [] tests = { " (photos.id IN (SELECT photo_id FROM photo_tags WHERE tag_id = 1)) ", tt1, " (photos.id IN (SELECT photo_id FROM photo_tags WHERE tag_id IN (2, 3))) ", new OrOperator(tt2, tt3), " (photos.id IN (SELECT photo_id FROM photo_tags WHERE tag_id IN (3, 4, 5))) ", new OrOperator(tt3, tt4, tt5), " (photos.id IN (SELECT photo_id FROM photo_tags WHERE tag_id IN (10, 3))) ", new OrOperator(tt10), " (photos.id IN (SELECT photo_id FROM photo_tags WHERE tag_id IN (10, 3, 3))) ", new OrOperator(tt10, tt3), " (photos.id IN (SELECT photo_id FROM photo_tags WHERE tag_id IN (11, 12, 5, 4))) ", new OrOperator(tt11), }; for (int i = 0; i < tests.Length; i += 2) { //System.Console.WriteLine ((tests[i+1] as LogicalTerm).SqlClause ()); //System.Console.WriteLine (tests[i]); Assert.AreEqual(tests[i] as string, (tests[i + 1] as LogicalTerm).SqlClause()); } }