jubatus 0.4.0 → 0.4.1

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -2,7 +2,7 @@ require 'rubygems'
2
2
  require 'bundler'
3
3
  require 'simplecov' # for Ruby 1.9
4
4
  require 'rake/testtask'
5
- #require 'ci/reporter/rake/test_unit'
5
+ require 'ci/reporter/rake/test_unit'
6
6
 
7
7
  Bundler::GemHelper.install_tasks
8
8
 
@@ -14,9 +14,9 @@ task :test do |test|
14
14
  end
15
15
  end
16
16
 
17
- ## for Ruby 1.8
18
- #task :coverage do |coverage|
19
- # system("rcov -o test/coverage -I lib:test --exclude . --include-file lib/jubatus --aggregate coverage.info test/**/*.rb")
20
- #end
17
+ # for Ruby 1.8
18
+ task :coverage do |coverage|
19
+ system("rcov -o test/coverage -I lib:test --exclude . --include-file lib/jubatus --aggregate coverage.info test/**/*.rb")
20
+ end
21
21
 
22
22
  task :default => [:build]
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.0
1
+ 0.4.1
@@ -13,7 +13,7 @@ Gem::Specification.new do |gem|
13
13
  gem.license = "MIT"
14
14
 
15
15
  files = `git ls-files`.split("\n")
16
- excludes = ["patch/*"]
16
+ excludes = ["patch/*", "generate.sh"]
17
17
 
18
18
  gem.files = files.reject { |f| excludes.any? { |e| File.fnmatch(e, f) } }
19
19
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
@@ -50,6 +50,10 @@ class AnomalyTest < Test::Unit::TestCase
50
50
  TestUtil.kill_process(@srv)
51
51
  end
52
52
 
53
+ def test_get_client
54
+ assert_instance_of( MessagePack::RPC::Client, @cli.get_client )
55
+ end
56
+
53
57
  def test_clear_row
54
58
  d = Jubatus::Anomaly::Datum.new([], [])
55
59
  (row_id, score) = @cli.add("name", d)
@@ -85,14 +89,13 @@ class AnomalyTest < Test::Unit::TestCase
85
89
 
86
90
  def test_get_config
87
91
  config = @cli.get_config("name")
88
- assert_equal(JSON.parse(config).to_json, @config.to_json)
92
+ assert_equal(JSON.parse(config), @config)
89
93
  end
90
94
 
91
95
  def test_save
92
96
  assert_equal(true, @cli.save("name", "anomaly.save_test.model"))
93
97
  end
94
98
 
95
-
96
99
  def test_load
97
100
  model_name = "anomaly.load_test.model"
98
101
  @cli.save("name", model_name)
@@ -40,52 +40,43 @@ class ClassifierTest < Test::Unit::TestCase
40
40
  TestUtil.kill_process(@srv)
41
41
  end
42
42
 
43
+ def test_get_client
44
+ assert_instance_of( MessagePack::RPC::Client, @cli.get_client )
45
+ end
46
+
43
47
  def test_get_config
44
48
  config = @cli.get_config("name")
45
- assert_equal(@config.to_json, JSON.parse(config).to_json)
46
-
49
+ assert_equal(JSON.parse(config), @config)
47
50
  end
48
51
 
49
-
50
52
  def test_train
51
53
  string_values = [["key1", "val1"], ["key2", "val2"]]
52
54
  num_values = [["key1", 1.0], ["key2", 2.0]]
53
55
  d = Jubatus::Classifier::Datum.new(string_values, num_values)
54
56
  data = [["label", d]]
55
57
  assert_equal(@cli.train("name", data), 1)
56
-
57
58
  end
58
59
 
59
-
60
60
  def test_classify
61
61
  string_values = [["key1", "val1"], ["key2", "val2"]]
62
62
  num_values = [["key1", 1.0], ["key2", 2.0]]
63
63
  d = Jubatus::Classifier::Datum.new(string_values, num_values)
64
64
  data = [d]
65
65
  result = @cli.classify("name", data)
66
-
67
66
  end
68
67
 
69
-
70
68
  def test_save
71
69
  assert_equal(@cli.save("name", "classifier.save_test.model"), true)
72
-
73
70
  end
74
71
 
75
-
76
72
  def test_load
77
73
  model_name = "classifier.load_test.model"
78
74
  @cli.save("name", model_name)
79
75
  assert_equal(@cli.load("name", model_name), true)
80
-
81
76
  end
82
77
 
83
-
84
78
  def test_get_status
85
79
  @cli.get_status("name")
86
-
87
80
  end
88
81
 
89
-
90
82
  end
91
-
@@ -31,6 +31,10 @@ class GraphTest < Test::Unit::TestCase
31
31
  TestUtil.kill_process(@srv)
32
32
  end
33
33
 
34
+ def test_get_client
35
+ assert_instance_of( MessagePack::RPC::Client, @cli.get_client )
36
+ end
37
+
34
38
  def test_node_info
35
39
  edge_query = [["a", "b"], ["c", "d"], ["e", "f"]]
36
40
  node_query = [["0", "1"], ["2", "3"]]
@@ -40,7 +44,6 @@ class GraphTest < Test::Unit::TestCase
40
44
  Jubatus::Graph::Node.new(p, in_edges, out_edges)
41
45
  end
42
46
 
43
-
44
47
  def test_create_node
45
48
  name = "name"
46
49
  @cli.clear(name)
@@ -53,10 +56,8 @@ class GraphTest < Test::Unit::TestCase
53
56
  @cli.clear(name)
54
57
  nid = @cli.create_node(name)
55
58
  assert_equal(@cli.remove_node(name, nid), true)
56
-
57
59
  end
58
60
 
59
-
60
61
  def test_update_node
61
62
  name = "name"
62
63
  @cli.clear(name)
@@ -65,7 +66,6 @@ class GraphTest < Test::Unit::TestCase
65
66
  assert_equal(@cli.update_node(name, nid, prop), true)
66
67
  end
67
68
 
68
-
69
69
  def test_create_edge
70
70
  name = "name"
71
71
  @cli.clear(name)
@@ -76,7 +76,6 @@ class GraphTest < Test::Unit::TestCase
76
76
  eid = @cli.create_edge("name", tgt, ei)
77
77
  end
78
78
 
79
-
80
79
  def test_create_edge
81
80
  name = "name"
82
81
  @cli.clear(name)
@@ -86,5 +85,11 @@ class GraphTest < Test::Unit::TestCase
86
85
  ei = Jubatus::Graph::Edge.new(prop, src, tgt)
87
86
  eid = @cli.create_edge(src, tgt, ei)
88
87
  end
88
+
89
+ def test_get_config
90
+ config = @cli.get_config("name")
91
+ assert_equal(JSON.parse(config), @config)
92
+ end
93
+
89
94
  end
90
95
 
@@ -37,13 +37,15 @@ class RecommenderTest < Test::Unit::TestCase
37
37
  TestUtil.kill_process(@srv)
38
38
  end
39
39
 
40
+ def test_get_client
41
+ assert_instance_of( MessagePack::RPC::Client, @cli.get_client )
42
+ end
43
+
40
44
  def test_get_config
41
45
  config = @cli.get_config("name")
42
- assert_equal(@config.to_json, JSON.parse(config).to_json)
43
-
46
+ assert_equal(JSON.parse(config), @config)
44
47
  end
45
48
 
46
-
47
49
  def test_complete_row
48
50
  @cli.clear_row("name", "complete_row")
49
51
  string_values = [["key1", "val1"], ["key2", "val2"]]
@@ -52,10 +54,8 @@ class RecommenderTest < Test::Unit::TestCase
52
54
  @cli.update_row("name", "complete_row", d)
53
55
  d1 = @cli.complete_row_from_id("name", "complete_row")
54
56
  d2 = @cli.complete_row_from_datum("name", d)
55
-
56
57
  end
57
58
 
58
-
59
59
  def test_get_similar_row
60
60
  @cli.clear_row("name", "similar_row")
61
61
  string_values = [["key1", "val1"], ["key2", "val2"]]
@@ -64,10 +64,8 @@ class RecommenderTest < Test::Unit::TestCase
64
64
  @cli.update_row("name", "similar_row", d)
65
65
  s1 = @cli.similar_row_from_id("name", "similar_row", 10)
66
66
  s2 = @cli.similar_row_from_datum("name", d, 10)
67
-
68
67
  end
69
68
 
70
-
71
69
  def test_decode_row
72
70
  @cli.clear_row("name", "decode_row")
73
71
  string_values = [["key1", "val1"], ["key2", "val2"]]
@@ -79,7 +77,6 @@ class RecommenderTest < Test::Unit::TestCase
79
77
  assert_equal(d.num_values, decoded_row.num_values)
80
78
  end
81
79
 
82
-
83
80
  def test_get_row
84
81
  @cli.clear("name")
85
82
  string_values = [["key1", "val1"], ["key2", "val2"]]
@@ -88,51 +85,38 @@ class RecommenderTest < Test::Unit::TestCase
88
85
  @cli.update_row("name", "get_row", d)
89
86
  row_names = @cli.get_all_rows("name")
90
87
  assert_equal(row_names, ["get_row"])
91
-
92
88
  end
93
89
 
94
90
 
95
91
  def test_clear
96
92
  @cli.clear("name")
97
-
98
93
  end
99
94
 
100
-
101
95
  def test_calcs
102
96
  string_values = [["key1", "val1"], ["key2", "val2"]]
103
97
  num_values = [["key1", 1.0], ["key2", 2.0]]
104
98
  d = Jubatus::Recommender::Datum.new(string_values, num_values)
105
99
  assert_in_delta(@cli.calc_similarity("name", d, d), 1, 0.000001)
106
100
  assert_in_delta(@cli.calc_l2norm("name", d), Math.sqrt(1*1 + 1*1+ 1*1 + 2*2), 0.000001)
107
-
108
101
  end
109
102
 
110
-
111
103
  def test_clear
112
104
  @cli.clear("name")
113
-
114
105
  end
115
106
 
116
-
117
107
  def test_save
118
108
  assert_equal(@cli.save("name", "recommender.save_test.model"), true)
119
-
120
109
  end
121
110
 
122
-
123
111
  def test_load
124
112
  model_name = "recommender.load_test.model"
125
113
  @cli.save("name", model_name)
126
114
  assert_equal(@cli.load("name", model_name), true)
127
-
128
115
  end
129
116
 
130
-
131
117
  def test_get_status
132
118
  @cli.get_status("name")
133
-
134
119
  end
135
120
 
136
-
137
121
  end
138
122
 
@@ -41,52 +41,44 @@ class RegressionTest < Test::Unit::TestCase
41
41
  TestUtil.kill_process(@srv)
42
42
  end
43
43
 
44
+ def test_get_client
45
+ assert_instance_of( MessagePack::RPC::Client, @cli.get_client )
46
+ end
47
+
44
48
  def test_get_config
45
49
  config = @cli.get_config("name")
46
- assert_equal(@config.to_json, JSON.parse(config).to_json)
47
-
50
+ assert_equal(JSON.parse(config), @config)
48
51
  end
49
52
 
50
-
51
53
  def test_train
52
54
  string_values = [["key1", "val1"], ["key2", "val2"]]
53
55
  num_values = [["key1", 1.0], ["key2", 2.0]]
54
56
  d = Jubatus::Regression::Datum.new(string_values, num_values)
55
57
  data = [[1.0, d]]
56
58
  assert_equal(@cli.train("name", data), 1)
57
-
58
59
  end
59
60
 
60
-
61
61
  def test_estimate
62
62
  string_values = [["key1", "val1"], ["key2", "val2"]]
63
63
  num_values = [["key1", 1.0], ["key2", 2.0]]
64
64
  d = Jubatus::Regression::Datum.new(string_values, num_values)
65
65
  data = [d]
66
66
  result = @cli.estimate("name", data)
67
-
68
67
  end
69
68
 
70
-
71
69
  def test_save
72
70
  assert_equal(@cli.save("name", "regression.save_test.model"), true)
73
-
74
71
  end
75
72
 
76
-
77
73
  def test_load
78
74
  model_name = "regression.load_test.model"
79
75
  @cli.save("name", model_name)
80
76
  assert_equal(@cli.load("name", model_name), true)
81
-
82
77
  end
83
78
 
84
-
85
79
  def test_get_status
86
80
  @cli.get_status("name")
87
-
88
81
  end
89
82
 
90
-
91
83
  end
92
84
 
@@ -28,13 +28,15 @@ class StatTest < Test::Unit::TestCase
28
28
  TestUtil.kill_process(@srv)
29
29
  end
30
30
 
31
+ def test_get_client
32
+ assert_instance_of( MessagePack::RPC::Client, @cli.get_client )
33
+ end
34
+
31
35
  def test_get_config
32
36
  config = @cli.get_config("name")
33
- assert_equal(@config.to_json, JSON.parse(config).to_json)
34
-
37
+ assert_equal(JSON.parse(config), @config)
35
38
  end
36
39
 
37
-
38
40
  def test_stddev
39
41
  @cli.push("name", "stddev", 1.0)
40
42
  @cli.push("name", "stddev", 2.0)
@@ -42,10 +44,8 @@ class StatTest < Test::Unit::TestCase
42
44
  @cli.push("name", "stddev", 4.0)
43
45
  @cli.push("name", "stddev", 5.0)
44
46
  assert_equal(@cli.stddev("name", "stddev"), Math::sqrt(2.0))
45
-
46
47
  end
47
48
 
48
-
49
49
  def test_sum
50
50
  @cli.push("name", "sum", 1.0)
51
51
  @cli.push("name", "sum", 2.0)
@@ -53,10 +53,8 @@ class StatTest < Test::Unit::TestCase
53
53
  @cli.push("name", "sum", 4.0)
54
54
  @cli.push("name", "sum", 5.0)
55
55
  assert_equal(@cli.sum("name", "sum"), 15.0)
56
-
57
56
  end
58
57
 
59
-
60
58
  def test_max
61
59
  @cli.push("name", "max", 1.0)
62
60
  @cli.push("name", "max", 2.0)
@@ -64,10 +62,8 @@ class StatTest < Test::Unit::TestCase
64
62
  @cli.push("name", "max", 4.0)
65
63
  @cli.push("name", "max", 5.0)
66
64
  assert_equal(@cli.max("name", "max"), 5.0)
67
-
68
65
  end
69
66
 
70
-
71
67
  def test_min
72
68
  @cli.push("name", "min", 1.0)
73
69
  @cli.push("name", "min", 2.0)
@@ -75,10 +71,8 @@ class StatTest < Test::Unit::TestCase
75
71
  @cli.push("name", "min", 4.0)
76
72
  @cli.push("name", "min", 5.0)
77
73
  assert_equal(@cli.min("name", "min"), 1.0)
78
-
79
74
  end
80
75
 
81
-
82
76
  def test_entropy
83
77
  @cli.push("name", "entropy", 1.0)
84
78
  @cli.push("name", "entropy", 2.0)
@@ -86,10 +80,8 @@ class StatTest < Test::Unit::TestCase
86
80
  @cli.push("name", "entropy", 4.0)
87
81
  @cli.push("name", "entropy", 5.0)
88
82
  assert_equal(@cli.entropy("name", "entropy"), 0.0)
89
-
90
83
  end
91
84
 
92
-
93
85
  def test_moment
94
86
  @cli.push("name", "moment", 1.0)
95
87
  @cli.push("name", "moment", 2.0)
@@ -97,29 +89,21 @@ class StatTest < Test::Unit::TestCase
97
89
  @cli.push("name", "moment", 4.0)
98
90
  @cli.push("name", "moment", 5.0)
99
91
  assert_equal(@cli.moment("name", "moment", 3, 0.0), 45.0)
100
-
101
92
  end
102
93
 
103
-
104
94
  def test_save
105
95
  assert_equal(@cli.save("name", "stat.save_test.model"), true)
106
-
107
96
  end
108
97
 
109
-
110
98
  def test_load
111
99
  model_name = "stat.load_test.model"
112
100
  @cli.save("name", model_name)
113
101
  assert_equal(@cli.load("name", model_name), true)
114
-
115
102
  end
116
103
 
117
-
118
104
  def test_get_status
119
105
  @cli.get_status("name")
120
-
121
106
  end
122
107
 
123
-
124
108
  end
125
109
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jubatus
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.4.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-01-11 00:00:00.000000000 Z
12
+ date: 2013-03-15 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: msgpack-rpc
@@ -55,7 +55,6 @@ files:
55
55
  - README.rst
56
56
  - Rakefile
57
57
  - VERSION
58
- - generate.sh
59
58
  - jubatus.gemspec
60
59
  - lib/jubatus/anomaly/client.rb
61
60
  - lib/jubatus/anomaly/types.rb
@@ -1,31 +0,0 @@
1
- #!/bin/bash -ue
2
-
3
- JUBATUS_DIR="jubatus-generate"
4
- JUBATUS_BRANCH="master"
5
- CLIENT_DIR="$(dirname "${0}")"
6
-
7
- [ $# -eq 0 ] || JUBATUS_BRANCH="${1}"
8
-
9
- rm -rf "${JUBATUS_DIR}"
10
- git clone https://github.com/jubatus/jubatus.git "${JUBATUS_DIR}"
11
- pushd "${JUBATUS_DIR}"
12
- git checkout "${JUBATUS_BRANCH}"
13
- popd
14
-
15
- # Ruby
16
-
17
- capitalize() {
18
- echo "$(echo ${1:0:1} | tr 'a-z' 'A-Z')${1:1}"
19
- }
20
-
21
- rm -rf "${CLIENT_DIR}/lib"
22
- for IDL in "${JUBATUS_DIR}/src/server"/*.idl; do
23
- NAMESPACE="$(capitalize $(basename "${IDL}" ".idl"))"
24
- mpidl ruby "${IDL}" -m "Jubatus::${NAMESPACE}" -o "${CLIENT_DIR}/lib/jubatus"
25
- done
26
-
27
- for PATCH in "${CLIENT_DIR}/patch"/*.patch; do
28
- patch -p0 --directory "${CLIENT_DIR}" < "${PATCH}"
29
- done
30
-
31
- rm -rf "${JUBATUS_DIR}"