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