active_column 0.0.2 → 0.1

Sign up to get free protection for your applications and to get access to all the features.
data/spec/spec_helper.rb CHANGED
@@ -1,13 +1,33 @@
1
- require 'cassandra'
2
1
  require 'active_column'
2
+ require 'rails'
3
+ require 'rspec-rails'
4
+ require 'rspec/rails/adapters'
5
+ require 'wrong/adapters/rspec'
6
+
7
+ Wrong.config.alias_assert :expect
3
8
 
4
9
  Dir[ File.expand_path("../support/**/*.rb", __FILE__) ].each {|f| require f}
5
10
 
6
11
  $cassandra = ActiveColumn.connection = Cassandra.new('active_column', '127.0.0.1:9160')
7
- $cassandra.clear_keyspace!
12
+
13
+ ks_tasks = ActiveColumn::Tasks::Keyspace.new
14
+ unless ks_tasks.exists?('active_column')
15
+ ks_tasks.create('active_column')
16
+
17
+ cf_tasks = ActiveColumn::Tasks::ColumnFamily.new
18
+ [:tweets, :tweet_dms].each do |cf|
19
+ cf_tasks.create(cf, :keyspace => 'active_column')
20
+ end
21
+ end
22
+
23
+ ks_tasks.set 'active_column'
24
+ ks_tasks.clear
8
25
 
9
26
  RSpec.configure do |config|
10
27
 
28
+ config.before do
29
+ end
30
+
11
31
  end
12
32
 
13
33
  class Counter
@@ -28,7 +48,7 @@ class Counter
28
48
 
29
49
  def get_counts
30
50
  @keys.each_with_object( {} ) do |key, counts|
31
- counts[key] = $cassandra.count_columns(@cf, key)
51
+ counts[key] = $cassandra.get(@cf, key).length
32
52
  end
33
53
  end
34
- end
54
+ end
@@ -3,8 +3,10 @@ class AggregatingTweet < ActiveColumn::Base
3
3
  column_family :tweets
4
4
  key :user_id, :values => :user_keys
5
5
 
6
+ attr_accessor :user_id, :message
7
+
6
8
  def user_keys
7
- [ attributes[:user_id], 'all' ]
9
+ [ user_id, 'all' ]
8
10
  end
9
11
 
10
12
  end
@@ -0,0 +1,11 @@
1
+ class Migration1 < ActiveColumn::Migration
2
+
3
+ def self.up
4
+ $migrator_spec_data[1] = true
5
+ end
6
+
7
+ def self.down
8
+ $migrator_spec_data.delete 1
9
+ end
10
+
11
+ end
@@ -0,0 +1,11 @@
1
+ class Migration2 < ActiveColumn::Migration
2
+
3
+ def self.up
4
+ $migrator_spec_data[2] = true
5
+ end
6
+
7
+ def self.down
8
+ $migrator_spec_data.delete 2
9
+ end
10
+
11
+ end
@@ -0,0 +1,11 @@
1
+ class Migration3 < ActiveColumn::Migration
2
+
3
+ def self.up
4
+ $migrator_spec_data[3] = true
5
+ end
6
+
7
+ def self.down
8
+ $migrator_spec_data.delete 3
9
+ end
10
+
11
+ end
@@ -0,0 +1,11 @@
1
+ class Migration4 < ActiveColumn::Migration
2
+
3
+ def self.up
4
+ $migrator_spec_data[4] = true
5
+ end
6
+
7
+ def self.down
8
+ $migrator_spec_data.delete 4
9
+ end
10
+
11
+ end
@@ -1,6 +1,8 @@
1
- class Tweet < ActiveColumn::Base
1
+ class Tweet
2
+ include ActiveColumn
2
3
 
3
- column_family :tweets
4
4
  key :user_id
5
5
 
6
+ attr_accessor :user_id, :message
7
+
6
8
  end
@@ -1,15 +1,17 @@
1
- class TweetDM < ActiveColumn::Base
1
+ class TweetDM
2
+ include ActiveColumn
2
3
 
3
- column_family :tweet_dms
4
4
  key :user_id, :values => :user_keys
5
5
  key :recipient_id, :values => :recipient_keys
6
6
 
7
+ attr_accessor :user_id, :recipient_ids, :message
8
+
7
9
  def user_keys
8
- [ attributes[:user_id], 'all' ]
10
+ [ user_id, 'all' ]
9
11
  end
10
12
 
11
13
  def recipient_keys
12
- attributes[:recipient_ids] + ['all']
14
+ recipient_ids + ['all']
13
15
  end
14
16
 
15
17
  end
metadata CHANGED
@@ -4,9 +4,8 @@ version: !ruby/object:Gem::Version
4
4
  prerelease: false
5
5
  segments:
6
6
  - 0
7
- - 0
8
- - 2
9
- version: 0.0.2
7
+ - 1
8
+ version: "0.1"
10
9
  platform: ruby
11
10
  authors:
12
11
  - Michael Wynholds
@@ -14,11 +13,11 @@ autorequire:
14
13
  bindir: bin
15
14
  cert_chain: []
16
15
 
17
- date: 2010-12-13 00:00:00 -08:00
16
+ date: 2010-12-29 00:00:00 -08:00
18
17
  default_executable:
19
18
  dependencies:
20
19
  - !ruby/object:Gem::Dependency
21
- name: simple_uuid
20
+ name: cassandra
22
21
  prerelease: false
23
22
  requirement: &id001 !ruby/object:Gem::Requirement
24
23
  none: false
@@ -27,11 +26,12 @@ dependencies:
27
26
  - !ruby/object:Gem::Version
28
27
  segments:
29
28
  - 0
30
- version: "0"
29
+ - 9
30
+ version: "0.9"
31
31
  type: :runtime
32
32
  version_requirements: *id001
33
33
  - !ruby/object:Gem::Dependency
34
- name: cassandra
34
+ name: activesupport
35
35
  prerelease: false
36
36
  requirement: &id002 !ruby/object:Gem::Requirement
37
37
  none: false
@@ -44,7 +44,7 @@ dependencies:
44
44
  type: :runtime
45
45
  version_requirements: *id002
46
46
  - !ruby/object:Gem::Dependency
47
- name: rspec
47
+ name: rake
48
48
  prerelease: false
49
49
  requirement: &id003 !ruby/object:Gem::Requirement
50
50
  none: false
@@ -54,9 +54,75 @@ dependencies:
54
54
  segments:
55
55
  - 0
56
56
  version: "0"
57
- type: :development
57
+ type: :runtime
58
58
  version_requirements: *id003
59
- description: Provides time line support for Cassandra
59
+ - !ruby/object:Gem::Dependency
60
+ name: rails
61
+ prerelease: false
62
+ requirement: &id004 !ruby/object:Gem::Requirement
63
+ none: false
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ segments:
68
+ - 3
69
+ - 0
70
+ version: "3.0"
71
+ type: :development
72
+ version_requirements: *id004
73
+ - !ruby/object:Gem::Dependency
74
+ name: rspec-rails
75
+ prerelease: false
76
+ requirement: &id005 !ruby/object:Gem::Requirement
77
+ none: false
78
+ requirements:
79
+ - - ">="
80
+ - !ruby/object:Gem::Version
81
+ segments:
82
+ - 0
83
+ version: "0"
84
+ type: :development
85
+ version_requirements: *id005
86
+ - !ruby/object:Gem::Dependency
87
+ name: wrong
88
+ prerelease: false
89
+ requirement: &id006 !ruby/object:Gem::Requirement
90
+ none: false
91
+ requirements:
92
+ - - ">="
93
+ - !ruby/object:Gem::Version
94
+ segments:
95
+ - 0
96
+ version: "0"
97
+ type: :development
98
+ version_requirements: *id006
99
+ - !ruby/object:Gem::Dependency
100
+ name: yard
101
+ prerelease: false
102
+ requirement: &id007 !ruby/object:Gem::Requirement
103
+ none: false
104
+ requirements:
105
+ - - ">="
106
+ - !ruby/object:Gem::Version
107
+ segments:
108
+ - 0
109
+ version: "0"
110
+ type: :development
111
+ version_requirements: *id007
112
+ - !ruby/object:Gem::Dependency
113
+ name: bluecloth
114
+ prerelease: false
115
+ requirement: &id008 !ruby/object:Gem::Requirement
116
+ none: false
117
+ requirements:
118
+ - - ">="
119
+ - !ruby/object:Gem::Version
120
+ segments:
121
+ - 0
122
+ version: "0"
123
+ type: :development
124
+ version_requirements: *id008
125
+ description: Provides time line support and database migrations for Cassandra
60
126
  email:
61
127
  - mike@wynholds.com
62
128
  executables: []
@@ -68,21 +134,40 @@ extra_rdoc_files: []
68
134
  files:
69
135
  - .gitignore
70
136
  - .rvmrc
137
+ - .yardopts
71
138
  - Gemfile
72
139
  - Gemfile.lock
73
140
  - README.md
74
141
  - Rakefile
75
142
  - active_column.gemspec
143
+ - docs/Create.md
144
+ - docs/Migrate.md
145
+ - docs/Query.md
76
146
  - lib/active_column.rb
77
147
  - lib/active_column/base.rb
78
148
  - lib/active_column/connection.rb
149
+ - lib/active_column/errors.rb
150
+ - lib/active_column/generators/migration_generator.rb
151
+ - lib/active_column/generators/templates/migration.rb.erb
152
+ - lib/active_column/key_config.rb
153
+ - lib/active_column/migration.rb
154
+ - lib/active_column/tasks/column_family.rb
155
+ - lib/active_column/tasks/keyspace.rb
156
+ - lib/active_column/tasks/ks.rb
79
157
  - lib/active_column/version.rb
80
158
  - spec/active_column/base_crud_spec.rb
81
159
  - spec/active_column/base_finders_spec.rb
160
+ - spec/active_column/migrator_spec.rb
161
+ - spec/active_column/tasks/column_family_spec.rb
162
+ - spec/active_column/tasks/keyspace_spec.rb
82
163
  - spec/spec_helper.rb
83
164
  - spec/support/aggregating_tweet.rb
84
165
  - spec/support/compound_key.rb
85
166
  - spec/support/config/storage-conf.xml
167
+ - spec/support/migrate/migrator_spec/1_migration1.rb
168
+ - spec/support/migrate/migrator_spec/2_migration2.rb
169
+ - spec/support/migrate/migrator_spec/3_migration3.rb
170
+ - spec/support/migrate/migrator_spec/4_migration4.rb
86
171
  - spec/support/simple_key.rb
87
172
  - spec/support/tweet.rb
88
173
  - spec/support/tweet_dm.rb
@@ -117,14 +202,21 @@ rubyforge_project: active_column
117
202
  rubygems_version: 1.3.7
118
203
  signing_key:
119
204
  specification_version: 3
120
- summary: Provides time line support for Cassandra
205
+ summary: Provides time line support and database migrations for Cassandra
121
206
  test_files:
122
207
  - spec/active_column/base_crud_spec.rb
123
208
  - spec/active_column/base_finders_spec.rb
209
+ - spec/active_column/migrator_spec.rb
210
+ - spec/active_column/tasks/column_family_spec.rb
211
+ - spec/active_column/tasks/keyspace_spec.rb
124
212
  - spec/spec_helper.rb
125
213
  - spec/support/aggregating_tweet.rb
126
214
  - spec/support/compound_key.rb
127
215
  - spec/support/config/storage-conf.xml
216
+ - spec/support/migrate/migrator_spec/1_migration1.rb
217
+ - spec/support/migrate/migrator_spec/2_migration2.rb
218
+ - spec/support/migrate/migrator_spec/3_migration3.rb
219
+ - spec/support/migrate/migrator_spec/4_migration4.rb
128
220
  - spec/support/simple_key.rb
129
221
  - spec/support/tweet.rb
130
222
  - spec/support/tweet_dm.rb