big_ml 0.1.0 → 0.1.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 (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