This class checks only the translate_sql_to_code method
Methods
- test_and_or
- test_basic
- test_comparison_operators
- test_id_to_recno
- test_in
- test_is
- test_null
- test_preserve_rec
Public Instance methods
[ show source ]
# File test/kb_sql_to_code_test.rb, line 40
40: def test_and_or
41: assert_equal "rec.book_id == ? and rec.content == ?", Book.translate_sql_to_code("book_id = ? AND content = ?")
42: assert_equal "rec.name == 'Dave' and rec.num_books == 1", Book.translate_sql_to_code("name = 'Dave' AND num_books = 1")
43:
44: assert_equal "rec.book_id == ? or rec.content == ?", Book.translate_sql_to_code("book_id = ? OR content = ?")
45: assert_equal "rec.name == 'Dave' or rec.num_books == 1", Book.translate_sql_to_code("name = 'Dave' OR num_books = 1")
46:
47: assert_equal "rec.book_id == ? and (rec.name == ? or rec.content == ?)", Book.translate_sql_to_code("book_id = ? AND (name = ? OR content = ?)")
48: assert_equal "rec.recno > ? or (rec.name == ? and rec.content == ?)", Book.translate_sql_to_code("id > ? OR (name = ? AND content = ?)")
49:
50: assert_equal "rec.recno == ? and rec.name == ?", Book.translate_sql_to_code("id=:id and name=:name")
51: end
[ show source ]
# File test/kb_sql_to_code_test.rb, line 6
6: def test_basic
7: assert_equal "rec.name == ?", Book.translate_sql_to_code("name = ?")
8: assert_equal "rec.name == 'Andy Hunt'", Book.translate_sql_to_code("name = 'Andy Hunt'")
9: assert_equal "rec.parent_id == 1", Book.translate_sql_to_code("parent_id = 1")
10: assert_equal "rec.name == ?", Book.translate_sql_to_code("name = ?")
11: assert_equal "rec.name == ?", Book.translate_sql_to_code("name = :name")
12: assert_equal "rec.name == ?", Book.translate_sql_to_code("name = '%s'")
13: assert_equal "true", Book.translate_sql_to_code("1 = 1")
14: assert_equal "rec.type == 'Client'", Book.translate_sql_to_code("type = 'Client'")
15: end
[ show source ]
# File test/kb_sql_to_code_test.rb, line 17
17: def test_comparison_operators
18: assert_equal "rec.salary > 90000", Book.translate_sql_to_code("salary > 90000")
19: assert_equal "rec.salary < 90000", Book.translate_sql_to_code("salary < 90000")
20: assert_equal "rec.salary >= 90000", Book.translate_sql_to_code("salary >= 90000")
21: assert_equal "rec.salary <= 90000", Book.translate_sql_to_code("salary <= 90000")
22: assert_equal "rec.salary != 90000", Book.translate_sql_to_code("salary <> 90000")
23: assert_equal "rec.recno > 5", Book.translate_sql_to_code("id > 5")
24: assert_equal "rec.recno < 5", Book.translate_sql_to_code("id < 5")
25: assert_equal "rec.recno >= 5", Book.translate_sql_to_code("id >= 5")
26: assert_equal "rec.recno <= 5", Book.translate_sql_to_code("id <= 5")
27: assert_equal "rec.recno != 5", Book.translate_sql_to_code("id <> 5")
28: end
[ show source ]
# File test/kb_sql_to_code_test.rb, line 30
30: def test_id_to_recno
31: assert_equal "rec.recno == ?", Book.translate_sql_to_code("id = ?")
32: assert_equal "rec.recno == ? and rec.name == ?", Book.translate_sql_to_code("id=? AND name = ?")
33: assert_equal "rec.recno == ?", Book.translate_sql_to_code("id=?")
34: assert_equal "rec.recno == ?", Book.translate_sql_to_code("id = %d")
35: assert_equal "rec.recno > 3", Book.translate_sql_to_code("id > 3")
36: assert_equal "rec.recno > 3", Book.translate_sql_to_code("rec.recno > 3")
37: assert_equal "rec.recno > ?", Book.translate_sql_to_code("id > ?")
38: end
[ show source ]
# File test/kb_sql_to_code_test.rb, line 63
63: def test_in
64: assert_equal "rec.title.in(?)", Book.translate_sql_to_code("title IN (?)")
65: assert_equal "rec.recno.in(1, 2, 3)", Book.translate_sql_to_code("id IN (1, 2, 3)")
66: assert_equal "rec.recno.in(1,2, 3 )", Book.translate_sql_to_code("id IN (1,2, 3 )")
67: assert_equal "rec.name.in('me', 'you')", Book.translate_sql_to_code("name IN ('me', 'you')")
68: end
[ show source ]
# File test/kb_sql_to_code_test.rb, line 53
53: def test_is
54: assert_equal "rec.last_read == ?", Book.translate_sql_to_code("last_read IS ?")
55: assert_equal "rec.last_read == ? and rec.author_name == ?", Book.translate_sql_to_code("last_read IS ? and author_name = ?")
56: end
[ show source ]
# File test/kb_sql_to_code_test.rb, line 58
58: def test_null
59: assert_equal "rec.last_read == nil", Book.translate_sql_to_code("last_read IS NULL")
60: assert_equal "rec.last_read != nil", Book.translate_sql_to_code("last_read IS NOT NULL")
61: end
[ show source ]
# File test/kb_sql_to_code_test.rb, line 70
70: def test_preserve_rec
71: assert_equal "rec.name == ?", Book.translate_sql_to_code("rec.name == ?")
72: assert_equal "rec.name == 'John'", Book.translate_sql_to_code("rec.name == 'John'")
73: assert_equal "rec.recno > 3", Book.translate_sql_to_code("rec.recno > 3")
74: assert_equal "rec.recno < 3", Book.translate_sql_to_code("rec.recno < 3")
75: assert_equal "rec.recno >= 3", Book.translate_sql_to_code("rec.recno >= 3")
76: assert_equal "rec.recno <= 3", Book.translate_sql_to_code("rec.recno <= 3")
77: end