Sha256: f5e21268d392f78404736fd689fa75b6d7b030a3e594100a6b48d5f1c776950b

Contents?: true

Size: 1.35 KB

Versions: 4

Compression:

Stored size: 1.35 KB

Contents

require 'test_helper'

class CassandraObject::Scope::QueryMethodsTest < CassandraObject::TestCase
  test 'select' do
    original_issue = Issue.create title: 'foo', description: 'bar'
    found_issue =  Issue.select(:title).find(original_issue.id)

    assert_equal 'foo', found_issue.title
    assert_equal original_issue.id, found_issue.id
    assert_nil found_issue.description
  end

  test 'multi select' do
    original_issue = Issue.create title: 'foo', description: 'bar'
    found_issue =  Issue.select(:title, :description).find(original_issue.id)

    assert_equal 'foo', found_issue.title
    assert_equal 'bar', found_issue.description
    assert_equal original_issue.id, found_issue.id
  end

  test 'select with block' do
    foo_issue = Issue.create title: 'foo'
    Issue.create title: 'bar'
    assert_equal [foo_issue], Issue.find_all_in_batches[:results].select { |issue| issue.title == 'foo' }
  end

  test 'chaining where with scope' do
    issue = Issue.create title: 'abc', description: 'def'
    query = Issue.select(:title).for_key(issue.id)

    assert_equal [:title], query.select_values
  end

  test 'only column names' do
    Issue.create title: 'foo', description: 'bar'
    foo_issue_columns =  Issue.columns.first
    assert_equal ['created_at', 'description', 'title', 'updated_at'], foo_issue_columns[foo_issue_columns.keys.first]
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
extendi-cassandra_object-1.1.1 test/unit/scope/query_methods_test.rb
extendi-cassandra_object-1.1.0 test/unit/scope/query_methods_test.rb
extendi-cassandra_object-1.0.20 test/unit/scope/query_methods_test.rb
extendi-cassandra_object-1.0.19 test/unit/scope/query_methods_test.rb