From c8d1f67e4d75256a5d1f6c84283be0226f358abb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jos=C3=A9=20Carlos=20Nieto?= <jose.carlos@menteslibres.net>
Date: Tue, 10 Jun 2014 18:25:07 -0500
Subject: [PATCH] Raw where.

---
 util/sqlgen/main_test.go | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/util/sqlgen/main_test.go b/util/sqlgen/main_test.go
index 835d2006..2752ab70 100644
--- a/util/sqlgen/main_test.go
+++ b/util/sqlgen/main_test.go
@@ -144,6 +144,42 @@ func TestSelectStarFromAlias(t *testing.T) {
 	}
 }
 
+func TestSelectStarFromRawWhere(t *testing.T) {
+	var s, e string
+	var stmt Statement
+
+	stmt = Statement{
+		Type:  SqlSelect,
+		Table: Table{"table.name AS foo"},
+		Where: Where{
+			Raw{"foo.id = bar.foo_id"},
+		},
+	}
+
+	s = trim(stmt.Compile())
+	e = `SELECT * FROM "table"."name" AS "foo" WHERE (foo.id = bar.foo_id)`
+
+	if s != e {
+		t.Fatalf("Got: %s, Expecting: %s", s, e)
+	}
+
+	stmt = Statement{
+		Type:  SqlSelect,
+		Table: Table{"table.name AS foo"},
+		Where: Where{
+			Raw{"foo.id = bar.foo_id"},
+			Raw{"baz.id = exp.baz_id"},
+		},
+	}
+
+	s = trim(stmt.Compile())
+	e = `SELECT * FROM "table"."name" AS "foo" WHERE (foo.id = bar.foo_id AND baz.id = exp.baz_id)`
+
+	if s != e {
+		t.Fatalf("Got: %s, Expecting: %s", s, e)
+	}
+}
+
 func TestSelectStarFromMany(t *testing.T) {
 	var s, e string
 	var stmt Statement
-- 
GitLab