big_ml 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. data/CHANGELOG.md +5 -0
  2. data/README.md +55 -18
  3. data/big_ml.gemspec +1 -0
  4. data/lib/big_ml/base.rb +21 -11
  5. data/lib/big_ml/dataset.rb +10 -4
  6. data/lib/big_ml/model.rb +16 -10
  7. data/lib/big_ml/prediction.rb +6 -4
  8. data/lib/big_ml/source.rb +10 -4
  9. data/lib/big_ml/{authenticable.rb → util/authenticable.rb} +0 -0
  10. data/lib/big_ml/util/client.rb +26 -0
  11. data/lib/big_ml/util/config.rb +32 -0
  12. data/lib/big_ml/{request.rb → util/request.rb} +0 -0
  13. data/lib/big_ml/version.rb +1 -1
  14. data/lib/big_ml.rb +8 -4
  15. data/spec/integration/dataset_spec.rb +17 -0
  16. data/spec/integration/model_spec.rb +17 -0
  17. data/spec/integration/prediction_spec.rb +11 -0
  18. data/spec/integration/source_spec.rb +19 -6
  19. data/spec/units/client_spec.rb +5 -5
  20. data/spec/vcr_cassettes/BigML_Dataset/no_dataset/_all/must_be_empty.yml +53 -17
  21. data/spec/vcr_cassettes/BigML_Dataset/one_dataset/can_be_converted_in_a_model.yml +232 -0
  22. data/spec/vcr_cassettes/BigML_Dataset/one_dataset/must_be_able_to_be_deleted_using_the_destroy_method.yml +288 -0
  23. data/spec/vcr_cassettes/BigML_Dataset/one_dataset/must_be_able_to_be_find_using_the_reference.yml +49 -49
  24. data/spec/vcr_cassettes/BigML_Dataset/one_dataset/must_be_able_to_remove_the_dataset.yml +41 -77
  25. data/spec/vcr_cassettes/BigML_Dataset/one_dataset/must_be_able_to_update_the_name.yml +57 -57
  26. data/spec/vcr_cassettes/BigML_Dataset/one_dataset/must_be_able_to_update_the_name_from_the_instance.yml +360 -0
  27. data/spec/vcr_cassettes/BigML_Dataset/one_dataset/must_have_only_one_item.yml +44 -44
  28. data/spec/vcr_cassettes/BigML_Dataset/one_dataset/must_have_the_same_file_name.yml +44 -44
  29. data/spec/vcr_cassettes/BigML_Dataset/one_dataset/was_created_successfully.yml +22 -22
  30. data/spec/vcr_cassettes/BigML_Model/no_model/_all/must_be_empty.yml +133 -21
  31. data/spec/vcr_cassettes/BigML_Model/one_model/can_be_converted_in_a_prediction.yml +346 -0
  32. data/spec/vcr_cassettes/BigML_Model/one_model/{must_have_the_same_file_name.yml → must_be_able_to_be_deleted_using_the_destroy_method.yml} +90 -107
  33. data/spec/vcr_cassettes/BigML_Model/one_model/must_be_able_to_be_find_using_the_reference.yml +172 -161
  34. data/spec/vcr_cassettes/BigML_Model/one_model/must_be_able_to_remove_the_model.yml +194 -70
  35. data/spec/vcr_cassettes/BigML_Model/one_model/must_be_able_to_update_the_name.yml +225 -243
  36. data/spec/vcr_cassettes/BigML_Model/one_model/must_be_able_to_update_the_name_from_the_instance.yml +686 -0
  37. data/spec/vcr_cassettes/BigML_Model/one_model/must_have_only_one_item.yml +169 -52
  38. data/spec/vcr_cassettes/BigML_Model/one_model/must_have_the_same_size.yml +91 -90
  39. data/spec/vcr_cassettes/BigML_Model/one_model/was_created_successfully.yml +35 -114
  40. data/spec/vcr_cassettes/BigML_Prediction/no_prediction/_all/must_be_empty.yml +141 -89
  41. data/spec/vcr_cassettes/BigML_Prediction/one_prediction/must_be_able_to_be_deleted_using_the_destroy_method.yml +474 -0
  42. data/spec/vcr_cassettes/BigML_Prediction/one_prediction/must_be_able_to_be_find_using_the_reference.yml +88 -88
  43. data/spec/vcr_cassettes/BigML_Prediction/one_prediction/must_be_able_to_remove_the_prediction.yml +88 -88
  44. data/spec/vcr_cassettes/BigML_Prediction/one_prediction/must_be_able_to_update_the_name.yml +97 -97
  45. data/spec/vcr_cassettes/BigML_Prediction/one_prediction/must_be_able_to_update_the_name_from_the_instance.yml +545 -0
  46. data/spec/vcr_cassettes/BigML_Prediction/one_prediction/must_have_only_one_item.yml +90 -90
  47. data/spec/vcr_cassettes/BigML_Prediction/one_prediction/must_have_the_same_name.yml +161 -78
  48. data/spec/vcr_cassettes/BigML_Prediction/one_prediction/was_created_successfully.yml +45 -45
  49. data/spec/vcr_cassettes/BigML_Source/no_source/_all/must_be_empty.yml +12 -42
  50. data/spec/vcr_cassettes/BigML_Source/one_source/can_be_converted_in_a_dataset.yml +119 -0
  51. data/spec/vcr_cassettes/BigML_Source/one_source/must_be_able_to_be_deleted_using_the_destroy_method.yml +135 -0
  52. data/spec/vcr_cassettes/BigML_Source/one_source/must_be_able_to_be_find_using_the_reference.yml +22 -52
  53. data/spec/vcr_cassettes/BigML_Source/one_source/must_be_able_to_remove_the_source.yml +43 -30
  54. data/spec/vcr_cassettes/BigML_Source/one_source/must_be_able_to_update_the_name.yml +38 -68
  55. data/spec/vcr_cassettes/BigML_Source/one_source/must_be_able_to_update_the_name_from_the_instance.yml +249 -0
  56. data/spec/vcr_cassettes/BigML_Source/one_source/must_have_only_one_item.yml +24 -54
  57. data/spec/vcr_cassettes/BigML_Source/one_source/must_have_the_same_file_name.yml +21 -51
  58. data/spec/vcr_cassettes/BigML_Source/one_source/was_created_successfully.yml +8 -38
  59. metadata +50 -9
  60. data/.rvmrc +0 -1
  61. data/lib/big_ml/client.rb +0 -29
  62. data/lib/big_ml/config.rb +0 -30
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: big_ml
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-06-20 00:00:00.000000000 Z
13
+ date: 2012-06-28 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: httmultiparty
@@ -28,6 +28,22 @@ dependencies:
28
28
  - - ! '>='
29
29
  - !ruby/object:Gem::Version
30
30
  version: '0'
31
+ - !ruby/object:Gem::Dependency
32
+ name: json
33
+ requirement: !ruby/object:Gem::Requirement
34
+ none: false
35
+ requirements:
36
+ - - ! '>='
37
+ - !ruby/object:Gem::Version
38
+ version: '0'
39
+ type: :runtime
40
+ prerelease: false
41
+ version_requirements: !ruby/object:Gem::Requirement
42
+ none: false
43
+ requirements:
44
+ - - ! '>='
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
31
47
  - !ruby/object:Gem::Dependency
32
48
  name: rake
33
49
  requirement: !ruby/object:Gem::Requirement
@@ -102,7 +118,6 @@ extra_rdoc_files: []
102
118
  files:
103
119
  - .gitignore
104
120
  - .rspec
105
- - .rvmrc
106
121
  - .rvmrc.example
107
122
  - .travis.yml
108
123
  - CHANGELOG.md
@@ -113,15 +128,15 @@ files:
113
128
  - TODO.md
114
129
  - big_ml.gemspec
115
130
  - lib/big_ml.rb
116
- - lib/big_ml/authenticable.rb
117
131
  - lib/big_ml/base.rb
118
- - lib/big_ml/client.rb
119
- - lib/big_ml/config.rb
120
132
  - lib/big_ml/dataset.rb
121
133
  - lib/big_ml/model.rb
122
134
  - lib/big_ml/prediction.rb
123
- - lib/big_ml/request.rb
124
135
  - lib/big_ml/source.rb
136
+ - lib/big_ml/util/authenticable.rb
137
+ - lib/big_ml/util/client.rb
138
+ - lib/big_ml/util/config.rb
139
+ - lib/big_ml/util/request.rb
125
140
  - lib/big_ml/version.rb
126
141
  - spec/fixtures/iris.csv
127
142
  - spec/integration/dataset_spec.rb
@@ -132,31 +147,41 @@ files:
132
147
  - spec/units/client_spec.rb
133
148
  - spec/units/source_spec.rb
134
149
  - spec/vcr_cassettes/BigML_Dataset/no_dataset/_all/must_be_empty.yml
150
+ - spec/vcr_cassettes/BigML_Dataset/one_dataset/can_be_converted_in_a_model.yml
151
+ - spec/vcr_cassettes/BigML_Dataset/one_dataset/must_be_able_to_be_deleted_using_the_destroy_method.yml
135
152
  - spec/vcr_cassettes/BigML_Dataset/one_dataset/must_be_able_to_be_find_using_the_reference.yml
136
153
  - spec/vcr_cassettes/BigML_Dataset/one_dataset/must_be_able_to_remove_the_dataset.yml
137
154
  - spec/vcr_cassettes/BigML_Dataset/one_dataset/must_be_able_to_update_the_name.yml
155
+ - spec/vcr_cassettes/BigML_Dataset/one_dataset/must_be_able_to_update_the_name_from_the_instance.yml
138
156
  - spec/vcr_cassettes/BigML_Dataset/one_dataset/must_have_only_one_item.yml
139
157
  - spec/vcr_cassettes/BigML_Dataset/one_dataset/must_have_the_same_file_name.yml
140
158
  - spec/vcr_cassettes/BigML_Dataset/one_dataset/was_created_successfully.yml
141
159
  - spec/vcr_cassettes/BigML_Model/no_model/_all/must_be_empty.yml
160
+ - spec/vcr_cassettes/BigML_Model/one_model/can_be_converted_in_a_prediction.yml
161
+ - spec/vcr_cassettes/BigML_Model/one_model/must_be_able_to_be_deleted_using_the_destroy_method.yml
142
162
  - spec/vcr_cassettes/BigML_Model/one_model/must_be_able_to_be_find_using_the_reference.yml
143
163
  - spec/vcr_cassettes/BigML_Model/one_model/must_be_able_to_remove_the_model.yml
144
164
  - spec/vcr_cassettes/BigML_Model/one_model/must_be_able_to_update_the_name.yml
165
+ - spec/vcr_cassettes/BigML_Model/one_model/must_be_able_to_update_the_name_from_the_instance.yml
145
166
  - spec/vcr_cassettes/BigML_Model/one_model/must_have_only_one_item.yml
146
- - spec/vcr_cassettes/BigML_Model/one_model/must_have_the_same_file_name.yml
147
167
  - spec/vcr_cassettes/BigML_Model/one_model/must_have_the_same_size.yml
148
168
  - spec/vcr_cassettes/BigML_Model/one_model/was_created_successfully.yml
149
169
  - spec/vcr_cassettes/BigML_Prediction/no_prediction/_all/must_be_empty.yml
170
+ - spec/vcr_cassettes/BigML_Prediction/one_prediction/must_be_able_to_be_deleted_using_the_destroy_method.yml
150
171
  - spec/vcr_cassettes/BigML_Prediction/one_prediction/must_be_able_to_be_find_using_the_reference.yml
151
172
  - spec/vcr_cassettes/BigML_Prediction/one_prediction/must_be_able_to_remove_the_prediction.yml
152
173
  - spec/vcr_cassettes/BigML_Prediction/one_prediction/must_be_able_to_update_the_name.yml
174
+ - spec/vcr_cassettes/BigML_Prediction/one_prediction/must_be_able_to_update_the_name_from_the_instance.yml
153
175
  - spec/vcr_cassettes/BigML_Prediction/one_prediction/must_have_only_one_item.yml
154
176
  - spec/vcr_cassettes/BigML_Prediction/one_prediction/must_have_the_same_name.yml
155
177
  - spec/vcr_cassettes/BigML_Prediction/one_prediction/was_created_successfully.yml
156
178
  - spec/vcr_cassettes/BigML_Source/no_source/_all/must_be_empty.yml
179
+ - spec/vcr_cassettes/BigML_Source/one_source/can_be_converted_in_a_dataset.yml
180
+ - spec/vcr_cassettes/BigML_Source/one_source/must_be_able_to_be_deleted_using_the_destroy_method.yml
157
181
  - spec/vcr_cassettes/BigML_Source/one_source/must_be_able_to_be_find_using_the_reference.yml
158
182
  - spec/vcr_cassettes/BigML_Source/one_source/must_be_able_to_remove_the_source.yml
159
183
  - spec/vcr_cassettes/BigML_Source/one_source/must_be_able_to_update_the_name.yml
184
+ - spec/vcr_cassettes/BigML_Source/one_source/must_be_able_to_update_the_name_from_the_instance.yml
160
185
  - spec/vcr_cassettes/BigML_Source/one_source/must_have_only_one_item.yml
161
186
  - spec/vcr_cassettes/BigML_Source/one_source/must_have_the_same_file_name.yml
162
187
  - spec/vcr_cassettes/BigML_Source/one_source/was_created_successfully.yml
@@ -172,12 +197,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
172
197
  - - ! '>='
173
198
  - !ruby/object:Gem::Version
174
199
  version: '0'
200
+ segments:
201
+ - 0
202
+ hash: 1923158400773446893
175
203
  required_rubygems_version: !ruby/object:Gem::Requirement
176
204
  none: false
177
205
  requirements:
178
206
  - - ! '>='
179
207
  - !ruby/object:Gem::Version
180
208
  version: '0'
209
+ segments:
210
+ - 0
211
+ hash: 1923158400773446893
181
212
  requirements: []
182
213
  rubyforge_project:
183
214
  rubygems_version: 1.8.23
@@ -194,31 +225,41 @@ test_files:
194
225
  - spec/units/client_spec.rb
195
226
  - spec/units/source_spec.rb
196
227
  - spec/vcr_cassettes/BigML_Dataset/no_dataset/_all/must_be_empty.yml
228
+ - spec/vcr_cassettes/BigML_Dataset/one_dataset/can_be_converted_in_a_model.yml
229
+ - spec/vcr_cassettes/BigML_Dataset/one_dataset/must_be_able_to_be_deleted_using_the_destroy_method.yml
197
230
  - spec/vcr_cassettes/BigML_Dataset/one_dataset/must_be_able_to_be_find_using_the_reference.yml
198
231
  - spec/vcr_cassettes/BigML_Dataset/one_dataset/must_be_able_to_remove_the_dataset.yml
199
232
  - spec/vcr_cassettes/BigML_Dataset/one_dataset/must_be_able_to_update_the_name.yml
233
+ - spec/vcr_cassettes/BigML_Dataset/one_dataset/must_be_able_to_update_the_name_from_the_instance.yml
200
234
  - spec/vcr_cassettes/BigML_Dataset/one_dataset/must_have_only_one_item.yml
201
235
  - spec/vcr_cassettes/BigML_Dataset/one_dataset/must_have_the_same_file_name.yml
202
236
  - spec/vcr_cassettes/BigML_Dataset/one_dataset/was_created_successfully.yml
203
237
  - spec/vcr_cassettes/BigML_Model/no_model/_all/must_be_empty.yml
238
+ - spec/vcr_cassettes/BigML_Model/one_model/can_be_converted_in_a_prediction.yml
239
+ - spec/vcr_cassettes/BigML_Model/one_model/must_be_able_to_be_deleted_using_the_destroy_method.yml
204
240
  - spec/vcr_cassettes/BigML_Model/one_model/must_be_able_to_be_find_using_the_reference.yml
205
241
  - spec/vcr_cassettes/BigML_Model/one_model/must_be_able_to_remove_the_model.yml
206
242
  - spec/vcr_cassettes/BigML_Model/one_model/must_be_able_to_update_the_name.yml
243
+ - spec/vcr_cassettes/BigML_Model/one_model/must_be_able_to_update_the_name_from_the_instance.yml
207
244
  - spec/vcr_cassettes/BigML_Model/one_model/must_have_only_one_item.yml
208
- - spec/vcr_cassettes/BigML_Model/one_model/must_have_the_same_file_name.yml
209
245
  - spec/vcr_cassettes/BigML_Model/one_model/must_have_the_same_size.yml
210
246
  - spec/vcr_cassettes/BigML_Model/one_model/was_created_successfully.yml
211
247
  - spec/vcr_cassettes/BigML_Prediction/no_prediction/_all/must_be_empty.yml
248
+ - spec/vcr_cassettes/BigML_Prediction/one_prediction/must_be_able_to_be_deleted_using_the_destroy_method.yml
212
249
  - spec/vcr_cassettes/BigML_Prediction/one_prediction/must_be_able_to_be_find_using_the_reference.yml
213
250
  - spec/vcr_cassettes/BigML_Prediction/one_prediction/must_be_able_to_remove_the_prediction.yml
214
251
  - spec/vcr_cassettes/BigML_Prediction/one_prediction/must_be_able_to_update_the_name.yml
252
+ - spec/vcr_cassettes/BigML_Prediction/one_prediction/must_be_able_to_update_the_name_from_the_instance.yml
215
253
  - spec/vcr_cassettes/BigML_Prediction/one_prediction/must_have_only_one_item.yml
216
254
  - spec/vcr_cassettes/BigML_Prediction/one_prediction/must_have_the_same_name.yml
217
255
  - spec/vcr_cassettes/BigML_Prediction/one_prediction/was_created_successfully.yml
218
256
  - spec/vcr_cassettes/BigML_Source/no_source/_all/must_be_empty.yml
257
+ - spec/vcr_cassettes/BigML_Source/one_source/can_be_converted_in_a_dataset.yml
258
+ - spec/vcr_cassettes/BigML_Source/one_source/must_be_able_to_be_deleted_using_the_destroy_method.yml
219
259
  - spec/vcr_cassettes/BigML_Source/one_source/must_be_able_to_be_find_using_the_reference.yml
220
260
  - spec/vcr_cassettes/BigML_Source/one_source/must_be_able_to_remove_the_source.yml
221
261
  - spec/vcr_cassettes/BigML_Source/one_source/must_be_able_to_update_the_name.yml
262
+ - spec/vcr_cassettes/BigML_Source/one_source/must_be_able_to_update_the_name_from_the_instance.yml
222
263
  - spec/vcr_cassettes/BigML_Source/one_source/must_have_only_one_item.yml
223
264
  - spec/vcr_cassettes/BigML_Source/one_source/must_have_the_same_file_name.yml
224
265
  - spec/vcr_cassettes/BigML_Source/one_source/was_created_successfully.yml
data/.rvmrc DELETED
@@ -1 +0,0 @@
1
- rvm use --create ruby-1.9.3-p194@bigml > /dev/null
data/lib/big_ml/client.rb DELETED
@@ -1,29 +0,0 @@
1
- require 'httmultiparty'
2
- require 'big_ml/authenticable'
3
- require 'big_ml/config'
4
- require 'big_ml/request'
5
- require 'big_ml/base'
6
- require 'big_ml/source'
7
- require 'big_ml/dataset'
8
- require 'big_ml/model'
9
- require 'big_ml/prediction'
10
-
11
- module BigML
12
- class Client
13
- include HTTMultiParty
14
- include Authenticable
15
- include Request
16
- format :json
17
-
18
- base_uri Config::BIGML_ENDPOINT
19
-
20
- attr_accessor *Config::VALID_OPTIONS_KEYS
21
-
22
- def initialize(attrs={})
23
- attrs = BigML.options.merge(attrs)
24
- Config::VALID_OPTIONS_KEYS.each { |key|
25
- instance_variable_set("@#{key}".to_sym, attrs[key])
26
- }
27
- end
28
- end
29
- end
data/lib/big_ml/config.rb DELETED
@@ -1,30 +0,0 @@
1
- module BigML
2
- module Config
3
- # The endpoint that will be used to connect if none is set
4
- BIGML_ENDPOINT = "https://bigml.io/andromeda"
5
- # The username if none is set
6
- DEFAULT_BIGML_USERNAME = nil
7
- # The api key if none is set
8
- DEFAULT_BIGML_API_KEY = nil
9
- # An array of valid keys in the options hash when configuring a {BigML::Client}
10
- VALID_OPTIONS_KEYS = [:username, :api_key]
11
-
12
- attr_accessor *VALID_OPTIONS_KEYS
13
-
14
- def configure
15
- yield self
16
- self
17
- end
18
-
19
- def options
20
- options = {}
21
- VALID_OPTIONS_KEYS.each{ |k| options[k] = send(k) }
22
- options
23
- end
24
-
25
- def reset
26
- self.username = DEFAULT_BIGML_USERNAME
27
- self.api_key = DEFAULT_BIGML_API_KEY
28
- end
29
- end
30
- end