cassandra_object_rails 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. checksums.yaml +15 -0
  2. data/.gitignore +3 -0
  3. data/.travis.yml +7 -0
  4. data/CHANGELOG +5 -0
  5. data/Gemfile +8 -0
  6. data/LICENSE +13 -0
  7. data/MIT-LICENSE +20 -0
  8. data/README.rdoc +97 -0
  9. data/Rakefile +12 -0
  10. data/cassandra_object_rails.gemspec +26 -0
  11. data/lib/cassandra_object/attribute_methods.rb +87 -0
  12. data/lib/cassandra_object/attribute_methods/definition.rb +19 -0
  13. data/lib/cassandra_object/attribute_methods/dirty.rb +44 -0
  14. data/lib/cassandra_object/attribute_methods/primary_key.rb +25 -0
  15. data/lib/cassandra_object/attribute_methods/typecasting.rb +59 -0
  16. data/lib/cassandra_object/base.rb +69 -0
  17. data/lib/cassandra_object/belongs_to.rb +63 -0
  18. data/lib/cassandra_object/belongs_to/association.rb +48 -0
  19. data/lib/cassandra_object/belongs_to/builder.rb +40 -0
  20. data/lib/cassandra_object/belongs_to/reflection.rb +30 -0
  21. data/lib/cassandra_object/callbacks.rb +29 -0
  22. data/lib/cassandra_object/config.rb +15 -0
  23. data/lib/cassandra_object/connection.rb +36 -0
  24. data/lib/cassandra_object/consistency.rb +18 -0
  25. data/lib/cassandra_object/core.rb +59 -0
  26. data/lib/cassandra_object/errors.rb +6 -0
  27. data/lib/cassandra_object/identity.rb +24 -0
  28. data/lib/cassandra_object/inspect.rb +25 -0
  29. data/lib/cassandra_object/log_subscriber.rb +29 -0
  30. data/lib/cassandra_object/persistence.rb +169 -0
  31. data/lib/cassandra_object/rails_initializer.rb +19 -0
  32. data/lib/cassandra_object/railtie.rb +11 -0
  33. data/lib/cassandra_object/savepoints.rb +79 -0
  34. data/lib/cassandra_object/schema.rb +78 -0
  35. data/lib/cassandra_object/schema/tasks.rb +48 -0
  36. data/lib/cassandra_object/scope.rb +48 -0
  37. data/lib/cassandra_object/scope/batches.rb +32 -0
  38. data/lib/cassandra_object/scope/finder_methods.rb +47 -0
  39. data/lib/cassandra_object/scope/query_methods.rb +111 -0
  40. data/lib/cassandra_object/scoping.rb +19 -0
  41. data/lib/cassandra_object/serialization.rb +6 -0
  42. data/lib/cassandra_object/tasks/cassandra.rake +53 -0
  43. data/lib/cassandra_object/timestamps.rb +19 -0
  44. data/lib/cassandra_object/type.rb +16 -0
  45. data/lib/cassandra_object/types.rb +8 -0
  46. data/lib/cassandra_object/types/array_type.rb +76 -0
  47. data/lib/cassandra_object/types/base_type.rb +26 -0
  48. data/lib/cassandra_object/types/boolean_type.rb +20 -0
  49. data/lib/cassandra_object/types/date_type.rb +17 -0
  50. data/lib/cassandra_object/types/float_type.rb +16 -0
  51. data/lib/cassandra_object/types/integer_type.rb +16 -0
  52. data/lib/cassandra_object/types/json_type.rb +52 -0
  53. data/lib/cassandra_object/types/string_type.rb +15 -0
  54. data/lib/cassandra_object/types/time_type.rb +16 -0
  55. data/lib/cassandra_object/validations.rb +44 -0
  56. data/lib/cassandra_object_rails.rb +64 -0
  57. data/test/support/connect.rb +17 -0
  58. data/test/support/issue.rb +5 -0
  59. data/test/support/teardown.rb +24 -0
  60. data/test/test_helper.rb +34 -0
  61. data/test/unit/active_model_test.rb +18 -0
  62. data/test/unit/attribute_methods/definition_test.rb +13 -0
  63. data/test/unit/attribute_methods/dirty_test.rb +71 -0
  64. data/test/unit/attribute_methods/primary_key_test.rb +26 -0
  65. data/test/unit/attribute_methods/typecasting_test.rb +112 -0
  66. data/test/unit/attribute_methods_test.rb +39 -0
  67. data/test/unit/base_test.rb +20 -0
  68. data/test/unit/belongs_to/reflection_test.rb +12 -0
  69. data/test/unit/belongs_to_test.rb +62 -0
  70. data/test/unit/callbacks_test.rb +46 -0
  71. data/test/unit/config_test.rb +23 -0
  72. data/test/unit/connection_test.rb +10 -0
  73. data/test/unit/consistency_test.rb +13 -0
  74. data/test/unit/core_test.rb +55 -0
  75. data/test/unit/identity_test.rb +26 -0
  76. data/test/unit/inspect_test.rb +26 -0
  77. data/test/unit/log_subscriber_test.rb +22 -0
  78. data/test/unit/persistence_test.rb +187 -0
  79. data/test/unit/savepoints_test.rb +35 -0
  80. data/test/unit/schema/tasks_test.rb +29 -0
  81. data/test/unit/schema_test.rb +47 -0
  82. data/test/unit/scope/batches_test.rb +30 -0
  83. data/test/unit/scope/finder_methods_test.rb +51 -0
  84. data/test/unit/scope/query_methods_test.rb +26 -0
  85. data/test/unit/scoping_test.rb +7 -0
  86. data/test/unit/timestamps_test.rb +27 -0
  87. data/test/unit/types/array_type_test.rb +71 -0
  88. data/test/unit/types/base_type_test.rb +24 -0
  89. data/test/unit/types/boolean_type_test.rb +24 -0
  90. data/test/unit/types/date_type_test.rb +11 -0
  91. data/test/unit/types/float_type_test.rb +17 -0
  92. data/test/unit/types/integer_type_test.rb +19 -0
  93. data/test/unit/types/json_type_test.rb +77 -0
  94. data/test/unit/types/string_type_test.rb +32 -0
  95. data/test/unit/types/time_type_test.rb +14 -0
  96. data/test/unit/validations_test.rb +27 -0
  97. metadata +208 -0
@@ -0,0 +1,7 @@
1
+ require 'test_helper'
2
+
3
+ class CassandraObject::ScopingTest < CassandraObject::TestCase
4
+ test "scope" do
5
+ assert_kind_of CassandraObject::Scope, Issue.scope
6
+ end
7
+ end
@@ -0,0 +1,27 @@
1
+ require 'test_helper'
2
+
3
+ class CassandraObject::TimestampsTest < CassandraObject::TestCase
4
+ test 'timestamps set on create' do
5
+ issue = Issue.create
6
+
7
+ assert_in_delta Time.now.to_i, issue.created_at.to_i, 3
8
+ assert_in_delta Time.now.to_i, issue.updated_at.to_i, 3
9
+ end
10
+
11
+ test 'updated_at set on change' do
12
+ issue = Issue.create
13
+
14
+ issue.updated_at = nil
15
+ issue.description = 'lol'
16
+ issue.save
17
+
18
+ assert_in_delta Time.now.to_i, issue.updated_at.to_i, 3
19
+ end
20
+
21
+ test 'created_at sets only if nil' do
22
+ time = 5.days.ago
23
+ issue = Issue.create created_at: time
24
+
25
+ assert_equal time, issue.created_at
26
+ end
27
+ end
@@ -0,0 +1,71 @@
1
+ require 'test_helper'
2
+
3
+ class CassandraObject::Types::ArrayTypeTest < CassandraObject::Types::TestCase
4
+ test 'encode' do
5
+ assert_equal ['1', '2'].to_json, coder.encode(['1', '2'])
6
+
7
+ assert_raise ArgumentError do
8
+ coder.encode('wtf')
9
+ end
10
+ end
11
+
12
+ test 'decode' do
13
+ assert_equal ['1', '2'], coder.decode(['1', '2'].to_json)
14
+ assert_equal [], coder.decode(nil)
15
+ assert_equal [], coder.decode('')
16
+ end
17
+
18
+ class TestIssue < CassandraObject::Base
19
+ self.column_family = 'Issues'
20
+ array :favorite_colors, unique: true
21
+ end
22
+
23
+ test 'default' do
24
+ assert_equal [], TestIssue.new.favorite_colors
25
+ end
26
+
27
+ test 'append marks dirty' do
28
+ issue = TestIssue.create favorite_colors: []
29
+ assert !issue.changed?
30
+
31
+ issue.favorite_colors << 'red'
32
+ assert issue.changed?
33
+ assert_equal({'favorite_colors' => [[], ['red']]}, issue.changes)
34
+ end
35
+
36
+ test 'delete marks dirty' do
37
+ issue = TestIssue.create favorite_colors: ['red']
38
+ assert !issue.changed?
39
+
40
+ issue.favorite_colors.delete('red')
41
+ assert issue.changed?
42
+ assert_equal({'favorite_colors' => [['red'], []]}, issue.changes)
43
+ end
44
+
45
+ test 'unique array removes blank' do
46
+ issue = TestIssue.create favorite_colors: ['blue', 'red', '', nil]
47
+ assert_equal ['blue', 'red'], issue.favorite_colors
48
+ end
49
+
50
+ test 'unique array uniquifies' do
51
+ issue = TestIssue.create favorite_colors: ['blue', 'red']
52
+
53
+ issue.favorite_colors = ['red', 'red', 'blue']
54
+ assert !issue.changed?
55
+
56
+ issue.favorite_colors = ['red', 'green']
57
+ assert issue.changed?
58
+ end
59
+
60
+ test 'unique array rescues argument error' do
61
+ issue = TestIssue.create favorite_colors: [1, 'red']
62
+
63
+ assert_equal [1, 'red'], issue.favorite_colors
64
+ end
65
+
66
+ test 'write non array' do
67
+ issue = TestIssue.create favorite_colors: true
68
+
69
+ assert_equal [true], issue.favorite_colors
70
+ end
71
+ end
@@ -0,0 +1,24 @@
1
+ require 'test_helper'
2
+
3
+ class CassandraObject::Types::BaseTypeTest < CassandraObject::Types::TestCase
4
+ test 'default' do
5
+ assert_equal nil, coder.default
6
+ assert_equal '5', CassandraObject::Types::BaseType.new(default: '5').default
7
+ assert_equal 5.object_id, CassandraObject::Types::BaseType.new(default: 5).default.object_id
8
+ end
9
+
10
+ test 'encode' do
11
+ assert_equal '1', coder.encode(1)
12
+ assert_equal '', coder.encode(nil)
13
+ assert_equal '1', coder.encode('1')
14
+ end
15
+
16
+ test 'decode' do
17
+ assert_equal 'abc', coder.decode('abc')
18
+ end
19
+
20
+ test 'wrap' do
21
+ object = Object.new
22
+ assert_equal object, coder.wrap(nil, nil, object)
23
+ end
24
+ end
@@ -0,0 +1,24 @@
1
+ require 'test_helper'
2
+
3
+ class CassandraObject::Types::BooleanTypeTest < CassandraObject::Types::TestCase
4
+ test 'encode' do
5
+ assert_equal '1', coder.encode(true)
6
+ assert_equal '1', coder.encode('true')
7
+ assert_equal '1', coder.encode('1')
8
+
9
+ assert_equal '0', coder.encode(false)
10
+ assert_equal '0', coder.encode('false')
11
+ assert_equal '0', coder.encode('0')
12
+ assert_equal '0', coder.encode('')
13
+
14
+ assert_raise ArgumentError do
15
+ coder.encode('wtf')
16
+ end
17
+ end
18
+
19
+ test 'decode' do
20
+ assert_equal true, coder.decode('1')
21
+ assert_equal false, coder.decode('0')
22
+ # assert_nil coder.decode(nil)
23
+ end
24
+ end
@@ -0,0 +1,11 @@
1
+ require 'test_helper'
2
+
3
+ class CassandraObject::Types::DateTypeTest < CassandraObject::Types::TestCase
4
+ test 'encode' do
5
+ assert_equal '2004-04-25', coder.encode(Date.new(2004, 4, 25))
6
+ end
7
+
8
+ test 'decode' do
9
+ assert_equal Date.new(2004, 4, 25), coder.decode('2004-04-25')
10
+ end
11
+ end
@@ -0,0 +1,17 @@
1
+ require 'test_helper'
2
+
3
+ class CassandraObject::Types::FloatTypeTest < CassandraObject::Types::TestCase
4
+ test 'encode' do
5
+ assert_equal '5.01', coder.encode(5.01)
6
+
7
+ assert_raise ArgumentError do
8
+ coder.encode('x')
9
+ end
10
+ end
11
+
12
+ test 'decode' do
13
+ assert_equal 0.0, coder.decode('xyz')
14
+ assert_equal 3.14, coder.decode('3.14')
15
+ assert_equal 5, coder.decode('5')
16
+ end
17
+ end
@@ -0,0 +1,19 @@
1
+ require 'test_helper'
2
+
3
+ class CassandraObject::Types::IntegerTypeTest < CassandraObject::Types::TestCase
4
+ test 'encode' do
5
+ assert_equal '3', coder.encode(3)
6
+ assert_equal '-3', coder.encode(-3)
7
+
8
+ assert_raise ArgumentError do
9
+ coder.encode('xx')
10
+ end
11
+ end
12
+
13
+ test 'decode' do
14
+ assert_nil coder.decode('')
15
+ assert_equal 0, coder.decode('abc')
16
+ assert_equal 3, coder.decode('3')
17
+ assert_equal -3, coder.decode('-3')
18
+ end
19
+ end
@@ -0,0 +1,77 @@
1
+ require 'test_helper'
2
+
3
+ class CassandraObject::Types::JsonTypeTest < CassandraObject::Types::TestCase
4
+ test 'encode' do
5
+ assert_equal({a: 'b'}.to_json, coder.encode(a: 'b'))
6
+ assert_equal '-3', coder.encode(-3)
7
+ end
8
+
9
+ test 'decode' do
10
+ assert_equal({'a' => 'b'}, coder.decode({'a' => 'b'}.to_json))
11
+ end
12
+
13
+ test 'setting marks dirty' do
14
+ record = temp_object do
15
+ string :name
16
+ json :stuff
17
+
18
+ end.new name: 'abcd', stuff: Hash[a: 1, b: 2]
19
+
20
+ record.save!
21
+ assert !record.stuff_changed?
22
+
23
+ record.stuff[:c] = 3
24
+
25
+ assert record.stuff_changed?
26
+ assert_equal Hash[a: 1, b: 2, c: 3], record.stuff
27
+ end
28
+
29
+ test 'hash change marks dirty' do
30
+ record = temp_object do
31
+ string :name
32
+ json :stuff
33
+
34
+ end.new name: 'abcd', stuff: Hash[a: 1, b: 2, v: {}]
35
+
36
+ record.save!
37
+ assert !record.stuff_changed?
38
+
39
+ record.stuff[:v][:data] = 69
40
+ record.stuff[:v] = record.stuff[:v]
41
+
42
+ assert record.stuff_changed?
43
+ assert_equal Hash[a: 1, b: 2, v: Hash[data: 69]], record.stuff
44
+ end
45
+
46
+ test 'hash no change does not dirty' do
47
+ record = temp_object do
48
+ string :name
49
+ json :stuff
50
+
51
+ end.new name: 'abcd', stuff: Hash[a: 1, b: 2, v: {data: 69}]
52
+
53
+ record.save!
54
+ assert !record.stuff_changed?
55
+
56
+ record.stuff[:v][:data] = 69
57
+ record.stuff[:v] = record.stuff[:v]
58
+
59
+ assert !record.stuff_changed?
60
+ assert_equal Hash[a: 1, b: 2, v: Hash[data: 69]], record.stuff
61
+ end
62
+
63
+ test 'delete marks dirty' do
64
+ record = temp_object do
65
+ string :name
66
+ json :stuff
67
+
68
+ end.new name: 'abcd', stuff: Hash[a: 1, b: 2]
69
+
70
+ record.stuff.delete :b
71
+
72
+ assert record.stuff_changed?
73
+ assert_equal Hash[a: 1], record.stuff
74
+ end
75
+
76
+
77
+ end
@@ -0,0 +1,32 @@
1
+ require 'test_helper'
2
+
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
18
+
19
+ test 'wrap when frozen' do
20
+ assert_equal(
21
+ '123'.force_encoding('UTF-8').encoding,
22
+ coder.wrap(nil, nil, '123'.force_encoding('ASCII-8BIT').freeze).encoding
23
+ )
24
+ end
25
+
26
+ test 'wrap when not a string' do
27
+ assert_equal(
28
+ "123",
29
+ coder.wrap(nil, nil, 123)
30
+ )
31
+ end
32
+ end
@@ -0,0 +1,14 @@
1
+ require 'test_helper'
2
+
3
+ class CassandraObject::Types::TimeTypeTest < CassandraObject::Types::TestCase
4
+ test 'encode' do
5
+ assert_equal '2004-12-24T01:02:03.000000Z', coder.encode(Time.utc(2004, 12, 24, 1, 2, 3))
6
+ end
7
+
8
+ test 'decode' do
9
+ assert_nil coder.decode(nil)
10
+ assert_nil coder.decode('bad format')
11
+ assert_equal Time.utc(2004, 12, 24, 1, 2, 3), coder.decode('2004-12-24T01:02:03.000000Z')
12
+ assert_equal Time.utc(2013, 07, 18, 20, 12, 46), coder.decode('2013-07-18 13:12:46 -0700')
13
+ end
14
+ end
@@ -0,0 +1,27 @@
1
+ require 'test_helper'
2
+
3
+ class CassandraObject::ValidationsTest < CassandraObject::TestCase
4
+ test 'create!' do
5
+ begin
6
+ Issue.validates(:description, presence: true)
7
+
8
+ Issue.create!(description: 'lol')
9
+
10
+ assert_raise(CassandraObject::RecordInvalid) { Issue.create!(description: '') }
11
+ ensure
12
+ Issue.reset_callbacks(:validate)
13
+ end
14
+ end
15
+
16
+ test 'save!' do
17
+ begin
18
+ Issue.validates(:description, presence: true)
19
+
20
+ Issue.new(description: 'lol').save!
21
+
22
+ assert_raise(CassandraObject::RecordInvalid) { Issue.new(description: '').save! }
23
+ ensure
24
+ Issue.reset_callbacks(:validate)
25
+ end
26
+ end
27
+ end
metadata ADDED
@@ -0,0 +1,208 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: cassandra_object_rails
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Lucas Allan Amorim
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2013-09-22 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: activemodel
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ! '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '3.0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ! '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '3.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: cassandra-cql
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ! '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ! '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: thrift_client
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: 0.9.2
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 0.9.2
55
+ - !ruby/object:Gem::Dependency
56
+ name: thin
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ! '>='
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: bundler
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ! '>='
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ! '>='
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ description: Cassandra ActiveModel
84
+ email: lucas.allan@gmail.com
85
+ executables: []
86
+ extensions: []
87
+ extra_rdoc_files:
88
+ - README.rdoc
89
+ files:
90
+ - .gitignore
91
+ - .travis.yml
92
+ - CHANGELOG
93
+ - Gemfile
94
+ - LICENSE
95
+ - MIT-LICENSE
96
+ - README.rdoc
97
+ - Rakefile
98
+ - cassandra_object_rails.gemspec
99
+ - lib/cassandra_object/attribute_methods.rb
100
+ - lib/cassandra_object/attribute_methods/definition.rb
101
+ - lib/cassandra_object/attribute_methods/dirty.rb
102
+ - lib/cassandra_object/attribute_methods/primary_key.rb
103
+ - lib/cassandra_object/attribute_methods/typecasting.rb
104
+ - lib/cassandra_object/base.rb
105
+ - lib/cassandra_object/belongs_to.rb
106
+ - lib/cassandra_object/belongs_to/association.rb
107
+ - lib/cassandra_object/belongs_to/builder.rb
108
+ - lib/cassandra_object/belongs_to/reflection.rb
109
+ - lib/cassandra_object/callbacks.rb
110
+ - lib/cassandra_object/config.rb
111
+ - lib/cassandra_object/connection.rb
112
+ - lib/cassandra_object/consistency.rb
113
+ - lib/cassandra_object/core.rb
114
+ - lib/cassandra_object/errors.rb
115
+ - lib/cassandra_object/identity.rb
116
+ - lib/cassandra_object/inspect.rb
117
+ - lib/cassandra_object/log_subscriber.rb
118
+ - lib/cassandra_object/persistence.rb
119
+ - lib/cassandra_object/rails_initializer.rb
120
+ - lib/cassandra_object/railtie.rb
121
+ - lib/cassandra_object/savepoints.rb
122
+ - lib/cassandra_object/schema.rb
123
+ - lib/cassandra_object/schema/tasks.rb
124
+ - lib/cassandra_object/scope.rb
125
+ - lib/cassandra_object/scope/batches.rb
126
+ - lib/cassandra_object/scope/finder_methods.rb
127
+ - lib/cassandra_object/scope/query_methods.rb
128
+ - lib/cassandra_object/scoping.rb
129
+ - lib/cassandra_object/serialization.rb
130
+ - lib/cassandra_object/tasks/cassandra.rake
131
+ - lib/cassandra_object/timestamps.rb
132
+ - lib/cassandra_object/type.rb
133
+ - lib/cassandra_object/types.rb
134
+ - lib/cassandra_object/types/array_type.rb
135
+ - lib/cassandra_object/types/base_type.rb
136
+ - lib/cassandra_object/types/boolean_type.rb
137
+ - lib/cassandra_object/types/date_type.rb
138
+ - lib/cassandra_object/types/float_type.rb
139
+ - lib/cassandra_object/types/integer_type.rb
140
+ - lib/cassandra_object/types/json_type.rb
141
+ - lib/cassandra_object/types/string_type.rb
142
+ - lib/cassandra_object/types/time_type.rb
143
+ - lib/cassandra_object/validations.rb
144
+ - lib/cassandra_object_rails.rb
145
+ - test/support/connect.rb
146
+ - test/support/issue.rb
147
+ - test/support/teardown.rb
148
+ - test/test_helper.rb
149
+ - test/unit/active_model_test.rb
150
+ - test/unit/attribute_methods/definition_test.rb
151
+ - test/unit/attribute_methods/dirty_test.rb
152
+ - test/unit/attribute_methods/primary_key_test.rb
153
+ - test/unit/attribute_methods/typecasting_test.rb
154
+ - test/unit/attribute_methods_test.rb
155
+ - test/unit/base_test.rb
156
+ - test/unit/belongs_to/reflection_test.rb
157
+ - test/unit/belongs_to_test.rb
158
+ - test/unit/callbacks_test.rb
159
+ - test/unit/config_test.rb
160
+ - test/unit/connection_test.rb
161
+ - test/unit/consistency_test.rb
162
+ - test/unit/core_test.rb
163
+ - test/unit/identity_test.rb
164
+ - test/unit/inspect_test.rb
165
+ - test/unit/log_subscriber_test.rb
166
+ - test/unit/persistence_test.rb
167
+ - test/unit/savepoints_test.rb
168
+ - test/unit/schema/tasks_test.rb
169
+ - test/unit/schema_test.rb
170
+ - test/unit/scope/batches_test.rb
171
+ - test/unit/scope/finder_methods_test.rb
172
+ - test/unit/scope/query_methods_test.rb
173
+ - test/unit/scoping_test.rb
174
+ - test/unit/timestamps_test.rb
175
+ - test/unit/types/array_type_test.rb
176
+ - test/unit/types/base_type_test.rb
177
+ - test/unit/types/boolean_type_test.rb
178
+ - test/unit/types/date_type_test.rb
179
+ - test/unit/types/float_type_test.rb
180
+ - test/unit/types/integer_type_test.rb
181
+ - test/unit/types/json_type_test.rb
182
+ - test/unit/types/string_type_test.rb
183
+ - test/unit/types/time_type_test.rb
184
+ - test/unit/validations_test.rb
185
+ homepage: http://github.com/lucasallan/cassandra_object
186
+ licenses: []
187
+ metadata: {}
188
+ post_install_message:
189
+ rdoc_options: []
190
+ require_paths:
191
+ - lib
192
+ required_ruby_version: !ruby/object:Gem::Requirement
193
+ requirements:
194
+ - - ! '>='
195
+ - !ruby/object:Gem::Version
196
+ version: 1.9.2
197
+ required_rubygems_version: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - ! '>='
200
+ - !ruby/object:Gem::Version
201
+ version: 1.3.5
202
+ requirements: []
203
+ rubyforge_project:
204
+ rubygems_version: 2.0.6
205
+ signing_key:
206
+ specification_version: 4
207
+ summary: Cassandra ActiveModel
208
+ test_files: []