gotime-cassandra_object 2.7.1 → 2.7.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = 'gotime-cassandra_object'
5
- s.version = '2.7.1'
5
+ s.version = '2.7.2'
6
6
  s.description = 'Cassandra ActiveModel'
7
7
  s.summary = 'Cassandra ActiveModel'
8
8
 
@@ -15,7 +15,7 @@ Gem::Specification.new do |s|
15
15
 
16
16
  s.extra_rdoc_files = ["README.rdoc"]
17
17
  s.files = `git ls-files`.split("\n")
18
- s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
18
+ s.test_files = `git ls-files -- {test}/*`.split("\n")
19
19
  s.require_paths = ['lib']
20
20
 
21
21
  s.add_runtime_dependency('activemodel', "~> 3.0")
@@ -33,7 +33,7 @@ module CassandraObject
33
33
  coder = options.delete :coder
34
34
 
35
35
  if expected_type.is_a?(Symbol)
36
- type_mapping = CassandraObject::Type.get_mapping(expected_type) || (raise "Unknown type #{type}")
36
+ type_mapping = CassandraObject::Type.get_mapping(expected_type) || (raise "Unknown type #{expected_type}")
37
37
  elsif coder.nil?
38
38
  raise "Must supply a :coder for #{name}"
39
39
  else
@@ -54,14 +54,9 @@ module CassandraObject
54
54
  connection.multi_get(column_family, keys.map(&:to_s), consistency: thrift_read_consistency)
55
55
  end
56
56
 
57
- attribute_results.inject({}) do |memo, (key, attributes)|
58
- if attributes.empty?
59
- memo[key] = nil
60
- else
61
- memo[parse_key(key)] = instantiate(key, attributes)
62
- end
63
- memo
64
- end
57
+ Hash[attribute_results.map do |key, attributes|
58
+ [parse_key(key), attributes.present? ? instantiate(key, attributes) : nil]
59
+ end]
65
60
  end
66
61
  end
67
62
  end
@@ -44,6 +44,7 @@ module CassandraObject
44
44
  key.to_s
45
45
  end
46
46
 
47
+ # TODO test this
47
48
  def id=(key)
48
49
  self.key = self.class.parse_key(key)
49
50
  id
@@ -6,8 +6,8 @@ module CassandraObject
6
6
  str.dup
7
7
  end
8
8
 
9
- def decode(str)
10
- str.force_encoding('UTF-8')
9
+ def wrap(record, name, value)
10
+ value.force_encoding('UTF-8')
11
11
  end
12
12
  end
13
13
  end
@@ -21,7 +21,7 @@ class CassandraObject::AttributeMethodsTest < CassandraObject::TestCase
21
21
  end
22
22
 
23
23
  test 'custom attribute definer' do
24
- model_attribute = TestIssue.attribute_definition[:custom_column]
24
+ model_attribute = TestIssue.attribute_definitions[:custom_column]
25
25
 
26
26
  assert_kind_of CustomCoder, model_attribute.coder
27
27
  assert_equal CustomType, model_attribute.expected_type
@@ -1,15 +1,6 @@
1
1
  require 'test_helper'
2
2
 
3
3
  class CassandraObject::IdentityTest < CassandraObject::TestCase
4
- test 'parse_key' do
5
- assert_kind_of(
6
- CassandraObject::Identity::UUIDKeyFactory::UUID,
7
- Issue.parse_key('bb4cbbbc-b7c7-11e0-9ca2-732604ff41fe')
8
- )
9
-
10
- assert_nil Issue.parse_key('fail')
11
- end
12
-
13
4
  test 'id' do
14
5
  issue = Issue.create
15
6
 
@@ -27,4 +18,13 @@ class CassandraObject::IdentityTest < CassandraObject::TestCase
27
18
  assert_equal first_issue, first_issue
28
19
  assert_not_equal first_issue, second_issue
29
20
  end
21
+
22
+ test 'parse_key' do
23
+ assert_kind_of(
24
+ CassandraObject::Identity::UUIDKeyFactory::UUID,
25
+ Issue.parse_key('bb4cbbbc-b7c7-11e0-9ca2-732604ff41fe')
26
+ )
27
+
28
+ assert_nil Issue.parse_key('fail')
29
+ end
30
30
  end
@@ -1,4 +1,18 @@
1
1
  require 'test_helper'
2
2
 
3
- class CassandraObject::Type::StringTypeTest < CassandraObject::Types::TestCase
3
+ class CassandraObject::Types::StringTypeTest < CassandraObject::Types::TestCase
4
+ test 'encode' do
5
+ assert_equal 'abc', coder.encode('abc')
6
+
7
+ assert_raise ArgumentError do
8
+ coder.encode(123)
9
+ end
10
+ end
11
+
12
+ test 'wrap' do
13
+ assert_equal(
14
+ '123'.force_encoding('UTF-8').encoding,
15
+ coder.wrap(nil, nil, '123'.force_encoding('ASCII-8BIT')).encoding
16
+ )
17
+ end
4
18
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gotime-cassandra_object
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.7.1
4
+ version: 2.7.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,11 +10,11 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2011-08-30 00:00:00.000000000Z
13
+ date: 2011-08-31 00:00:00.000000000Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activemodel
17
- requirement: &70132262094800 !ruby/object:Gem::Requirement
17
+ requirement: &70248322073880 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ~>
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: '3.0'
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *70132262094800
25
+ version_requirements: *70248322073880
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: cassandra
28
- requirement: &70132262094260 !ruby/object:Gem::Requirement
28
+ requirement: &70248322073300 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ~>
@@ -33,10 +33,10 @@ dependencies:
33
33
  version: 0.12.0
34
34
  type: :runtime
35
35
  prerelease: false
36
- version_requirements: *70132262094260
36
+ version_requirements: *70248322073300
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: bundler
39
- requirement: &70132262093740 !ruby/object:Gem::Requirement
39
+ requirement: &70248322072840 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ~>
@@ -44,7 +44,7 @@ dependencies:
44
44
  version: 1.0.0
45
45
  type: :development
46
46
  prerelease: false
47
- version_requirements: *70132262093740
47
+ version_requirements: *70248322072840
48
48
  description: Cassandra ActiveModel
49
49
  email: gems@gotime.com
50
50
  executables: []
@@ -162,29 +162,4 @@ rubygems_version: 1.8.6
162
162
  signing_key:
163
163
  specification_version: 3
164
164
  summary: Cassandra ActiveModel
165
- test_files:
166
- - test/active_model_test.rb
167
- - test/attribute_methods/definition_test.rb
168
- - test/attribute_methods/dirty_test.rb
169
- - test/attribute_methods_test.rb
170
- - test/base_test.rb
171
- - test/batches_test.rb
172
- - test/callbacks_test.rb
173
- - test/connection_test.rb
174
- - test/consistency_test.rb
175
- - test/finder_methods_test.rb
176
- - test/identity/uuid_key_factory_test.rb
177
- - test/identity_test.rb
178
- - test/persistence_test.rb
179
- - test/test_helper.rb
180
- - test/timestamps_test.rb
181
- - test/types/array_type_test.rb
182
- - test/types/base_type_test.rb
183
- - test/types/boolean_type_test.rb
184
- - test/types/date_type_test.rb
185
- - test/types/float_type_test.rb
186
- - test/types/hash_type_test.rb
187
- - test/types/integer_type_test.rb
188
- - test/types/string_type_test.rb
189
- - test/types/time_type_test.rb
190
- - test/validations_test.rb
165
+ test_files: []