test/test-expression-builder.rb in groonga-0.0.5 vs test/test-expression-builder.rb in groonga-0.0.6

- old
+ new

@@ -26,10 +26,14 @@ @hp = @users.define_column("hp", "<uint>") @terms = Groonga::PatriciaTrie.create(:name => "<terms>", :default_tokenizer => "TokenBigram") @terms.define_index_column("user-name", @users, :source => @name) + + @bookmarks = Groonga::Array.create(:name => "bookmarks") + @bookmarks.define_column("user", @users) + @bookmarks.define_column("uri", "ShortText") end def setup_data @morita = @users.add("morita", :name => "mori daijiro", @@ -38,10 +42,15 @@ :name => "Tasuku SUENAGA", :hp => 150) @yu = @users.add("yu", :name => "Yutaro Shimamura", :hp => 200) + + @groonga = @bookmarks.add(:user => @morita, :uri => "http://groonga.org/") + @ruby = @bookmarks.add(:user => @morita, :uri => "http://ruby-lang.org/") + @nico_dict = @bookmarks.add(:user => @gunyara_kun, + :uri => "http://dic.nicovideo.jp/") end def test_equal result = @users.select do |record| record["name"] == "mori daijiro" @@ -104,11 +113,26 @@ assert_equal(["morita", "yu"], result.collect {|record| record.key.key}) end def test_query_string - omit("not supported yet!!!") - result = @name.select("ro") + result = @users.select("name:%ro") assert_equal(["morita", "yu"], result.collect {|record| record.key.key}) + end + + def test_record + result = @bookmarks.select do |record| + record["user"] == @morita + end + assert_equal(["http://groonga.org/", "http://ruby-lang.org/"], + result.collect {|record| record.key["uri"]}) + end + + def test_record_id + result = @bookmarks.select do |record| + record["user"] == @morita.id + end + assert_equal(["http://groonga.org/", "http://ruby-lang.org/"], + result.collect {|record| record.key["uri"]}) end end