stat-count-client 0.0.1 → 0.0.2

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.
@@ -0,0 +1,181 @@
1
+ #encoding: UTF-8
2
+
3
+ $:.unshift File.join(File.dirname(__FILE__),"..","lib")
4
+ $:.unshift File.join(File.dirname(__FILE__),"..")
5
+
6
+ require "rubygems"
7
+ require "hessian2"
8
+ require "stat-count-client"
9
+ require_relative "count_mother"
10
+ require "test/unit"
11
+
12
+ class TC_StatCountClientTest < Test::Unit::TestCase
13
+ include Stat::Count::Client
14
+ # Called before every test method runs. Can be used
15
+ # to set up fixture information.
16
+ def setup
17
+ @client = StatCountClient.new();
18
+ end
19
+
20
+ # Called after every test method runs. Can be used to tear
21
+ # down fixture information.
22
+
23
+ def teardown
24
+ # Do nothing
25
+ end
26
+
27
+ # Fake test
28
+ def test_incr
29
+ @client.set("testDay", "1", 1)
30
+ value = @client.incr("testDay", "1", 2)
31
+ assert_equal(3, value)
32
+ end
33
+
34
+ def test_incrByCount
35
+ reset()
36
+ count = CountMother.createIncrCount
37
+ countResult = @client.incrByCount(count)
38
+ puts countResult.getResult()
39
+ assertCorrect(countResult)
40
+ end
41
+
42
+ def test_incrByCountWithDate
43
+ resetWithDate()
44
+ dateCount = CountMother.createIncrCountWithDate
45
+ @client.incrByCountWithDate(dateCount)
46
+ dateQuery = CountMother.createCountQueryWithDate
47
+ countResult = @client.getByQuery(dateQuery)
48
+ assertIncrCorrectWithDate(countResult)
49
+ end
50
+
51
+ def testDecr
52
+ @client.set("test", "1", 10)
53
+ val = @client.decr("test", "1", 7)
54
+ assert_equal(3,val)
55
+ end
56
+
57
+ def testDecrByCount
58
+ count = CountMother.initCount
59
+ @client.setByCount(count)
60
+ count = CountMother.createDecrCount
61
+ countResult = @client.decrByCount(count)
62
+ assertDecrCorrect(countResult)
63
+ reset()
64
+ end
65
+
66
+ def test_set
67
+ @client.reset("test", "1")
68
+ @client.set("test", "1", 100000000000000000)
69
+ val = @client.get("test", "1");
70
+ assert_equal(100000000000000000, val)
71
+ end
72
+
73
+ def test_setByCount
74
+ reset()
75
+ count = CountMother.initCount
76
+ @client.setByCount(count)
77
+ query = CountMother.createCountQuery();
78
+ countResult = @client.getByQuery(query)
79
+ assertInitCorrect(countResult)
80
+ end
81
+
82
+ def test_del
83
+ count = CountMother.initCount
84
+ @client.setByCount(count)
85
+ query = CountMother.createCountQuery()
86
+ @client.delByQuery(query)
87
+ countResult = @client.getByQuery(query)
88
+ assertDel(countResult)
89
+ end
90
+
91
+ private
92
+ def resetWithDate
93
+ 1.upto(5) do |i|
94
+ @client.reset("testHour", i.to_s, 10)
95
+ end
96
+
97
+ 1.upto(5) do |i|
98
+ @client.reset "testDay", i.to_s, 10
99
+ end
100
+ end
101
+
102
+ def reset
103
+ @client.reset("test", "1")
104
+ @client.reset("testHour", "2")
105
+ @client.reset("testDay", "3")
106
+ end
107
+
108
+ def assertCorrect(countResult)
109
+ count = countResult.getResult("test", "1")
110
+ assert_equal(3, count)
111
+
112
+ count = countResult.getResult("testHour", "2")
113
+ assert_equal(4, count)
114
+
115
+ count = countResult.getResult("testDay", "3")
116
+ assert_equal(8, count)
117
+ end
118
+
119
+ def assertIncrCorrectWithDate(countResult)
120
+ resultMap = countResult.getResult("testHour")
121
+
122
+ resultMap.each { |key, value|
123
+ id_val = key.to_i
124
+ assert_equal(id_val * 10, value)
125
+ }
126
+
127
+ resultMap = countResult.getResult("testDay");
128
+
129
+ resultMap.each { |key, value|
130
+ id_val = key.to_i
131
+ assert_equal(id_val * 10, value)
132
+ }
133
+ end
134
+
135
+ def assertDecrCorrectWithDate(countResult)
136
+ resultMap = countResult.getResult("testHour")
137
+ resultMap.each { |key, value|
138
+ id_val = new Integer(key)
139
+ assert_equal(id_val * 10 - 10, value)
140
+ }
141
+
142
+ resultMap = countResult.getResult("testDay")
143
+ resultMap.each { |key, value|
144
+ id_val = new Integer(key)
145
+ assert_equal(id_val * 10 - 10 ,value)
146
+ }
147
+ end
148
+
149
+ def assertDecrCorrect(countResult)
150
+ count = countResult.getResult("test", "1")
151
+ assert_equal(1, count)
152
+
153
+ count = countResult.getResult("testHour", "2")
154
+ assert_equal(2, count)
155
+
156
+ count = countResult.getResult("testDay", "3")
157
+ assert_equal(3, count)
158
+ end
159
+
160
+ def assertInitCorrect(countResult)
161
+ count = countResult.getResult("test", "1")
162
+ assert_equal(10, count)
163
+
164
+ count = countResult.getResult("testHour", "2")
165
+ assert_equal(10, count)
166
+
167
+ count = countResult.getResult("testDay", "3")
168
+ assert_equal(10, count);
169
+ end
170
+
171
+ def assertDel(countResult)
172
+ count = countResult.getResult("test", "1")
173
+ assert_equal(0, count)
174
+
175
+ count = countResult.getResult("testHour", "2")
176
+ assert_equal(0, count)
177
+
178
+ count = countResult.getResult("testDay", "3")
179
+ assert_equal(0, count);
180
+ end
181
+ end
@@ -0,0 +1,181 @@
1
+ #encoding: UTF-8
2
+
3
+ $:.unshift File.join(File.dirname(__FILE__),"..","lib")
4
+ $:.unshift File.join(File.dirname(__FILE__),"..")
5
+
6
+ require "rubygems"
7
+ require "hessian2"
8
+ require "stat-count-client"
9
+ require_relative "count_mother"
10
+ require "test/unit"
11
+
12
+ class TC_StatCountClientTest < Test::Unit::TestCase
13
+ include Stat::Count::Client
14
+ # Called before every test method runs. Can be used
15
+ # to set up fixture information.
16
+ def setup
17
+ @client = ThriftStatCountClient.new("localhost:9095");
18
+ end
19
+
20
+ # Called after every test method runs. Can be used to tear
21
+ # down fixture information.
22
+
23
+ def teardown
24
+ # Do nothing
25
+ end
26
+
27
+ # Fake test
28
+ def test_incr
29
+ @client.set("testDay", "1", 1)
30
+ value = @client.incr("testDay", "1", 2)
31
+ assert_equal(3, value)
32
+ end
33
+
34
+ def test_incrByCount
35
+ reset()
36
+ count = CountMother.createIncrCount
37
+ countResult = @client.incrByCount(count)
38
+ puts countResult.getResult()
39
+ assertCorrect(countResult)
40
+ end
41
+
42
+ def test_incrByCountWithDate
43
+ resetWithDate()
44
+ dateCount = CountMother.createIncrCountWithDate
45
+ @client.incrByCountWithDate(dateCount)
46
+ dateQuery = CountMother.createCountQueryWithDate
47
+ countResult = @client.getByQuery(dateQuery)
48
+ assertIncrCorrectWithDate(countResult)
49
+ end
50
+
51
+ def testDecr
52
+ @client.set("test", "1", 10)
53
+ val = @client.decr("test", "1", 7)
54
+ assert_equal(3,val)
55
+ end
56
+
57
+ def testDecrByCount
58
+ count = CountMother.initCount
59
+ @client.setByCount(count)
60
+ count = CountMother.createDecrCount
61
+ countResult = @client.decrByCount(count)
62
+ assertDecrCorrect(countResult)
63
+ reset()
64
+ end
65
+
66
+ def test_set
67
+ @client.reset("test", "1")
68
+ @client.set("test", "1", 100000000000000000)
69
+ val = @client.get("test", "1");
70
+ assert_equal(100000000000000000, val)
71
+ end
72
+
73
+ def test_setByCount
74
+ reset()
75
+ count = CountMother.initCount
76
+ @client.setByCount(count)
77
+ query = CountMother.createCountQuery();
78
+ countResult = @client.getByQuery(query)
79
+ assertInitCorrect(countResult)
80
+ end
81
+
82
+ def test_del
83
+ count = CountMother.initCount
84
+ @client.setByCount(count)
85
+ query = CountMother.createCountQuery()
86
+ @client.delByQuery(query)
87
+ countResult = @client.getByQuery(query)
88
+ assertDel(countResult)
89
+ end
90
+
91
+ private
92
+ def resetWithDate
93
+ 1.upto(5) do |i|
94
+ @client.reset("testHour", i.to_s, 10)
95
+ end
96
+
97
+ 1.upto(5) do |i|
98
+ @client.reset "testDay", i.to_s, 10
99
+ end
100
+ end
101
+
102
+ def reset
103
+ @client.reset("test", "1")
104
+ @client.reset("testHour", "2")
105
+ @client.reset("testDay", "3")
106
+ end
107
+
108
+ def assertCorrect(countResult)
109
+ count = countResult.getResult("test", "1")
110
+ assert_equal(3, count)
111
+
112
+ count = countResult.getResult("testHour", "2")
113
+ assert_equal(4, count)
114
+
115
+ count = countResult.getResult("testDay", "3")
116
+ assert_equal(8, count)
117
+ end
118
+
119
+ def assertIncrCorrectWithDate(countResult)
120
+ resultMap = countResult.getResult("testHour")
121
+
122
+ resultMap.each { |key, value|
123
+ id_val = key.to_i
124
+ assert_equal(id_val * 10, value)
125
+ }
126
+
127
+ resultMap = countResult.getResult("testDay");
128
+
129
+ resultMap.each { |key, value|
130
+ id_val = key.to_i
131
+ assert_equal(id_val * 10, value)
132
+ }
133
+ end
134
+
135
+ def assertDecrCorrectWithDate(countResult)
136
+ resultMap = countResult.getResult("testHour")
137
+ resultMap.each { |key, value|
138
+ id_val = new Integer(key)
139
+ assert_equal(id_val * 10 - 10, value)
140
+ }
141
+
142
+ resultMap = countResult.getResult("testDay")
143
+ resultMap.each { |key, value|
144
+ id_val = new Integer(key)
145
+ assert_equal(id_val * 10 - 10 ,value)
146
+ }
147
+ end
148
+
149
+ def assertDecrCorrect(countResult)
150
+ count = countResult.getResult("test", "1")
151
+ assert_equal(1, count)
152
+
153
+ count = countResult.getResult("testHour", "2")
154
+ assert_equal(2, count)
155
+
156
+ count = countResult.getResult("testDay", "3")
157
+ assert_equal(3, count)
158
+ end
159
+
160
+ def assertInitCorrect(countResult)
161
+ count = countResult.getResult("test", "1")
162
+ assert_equal(10, count)
163
+
164
+ count = countResult.getResult("testHour", "2")
165
+ assert_equal(10, count)
166
+
167
+ count = countResult.getResult("testDay", "3")
168
+ assert_equal(10, count);
169
+ end
170
+
171
+ def assertDel(countResult)
172
+ count = countResult.getResult("test", "1")
173
+ assert_equal(0, count)
174
+
175
+ count = countResult.getResult("testHour", "2")
176
+ assert_equal(0, count)
177
+
178
+ count = countResult.getResult("testDay", "3")
179
+ assert_equal(0, count);
180
+ end
181
+ end
metadata CHANGED
@@ -1,30 +1,41 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stat-count-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
5
- prerelease:
4
+ version: 0.0.2
6
5
  platform: ruby
7
6
  authors:
8
7
  - gavin
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-10-16 00:00:00.000000000 Z
11
+ date: 2013-09-02 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: hessian2
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - '>='
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: thrift-client
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
+ - - '>='
28
39
  - !ruby/object:Gem::Version
29
40
  version: '0'
30
41
  description: ruby client for stat count server
@@ -35,45 +46,58 @@ extensions: []
35
46
  extra_rdoc_files: []
36
47
  files:
37
48
  - Gemfile
38
- - Gemfile.lock
39
49
  - LICENSE
40
50
  - Rakefile
41
51
  - README.md
42
- - stat-count-client.gemspec
43
52
  - test/count_mother.rb
44
53
  - test/stat_ccount_client_test.rb
54
+ - test/stat_count_client_test.rb
45
55
  - test/test.rb
56
+ - test/thrift_count_client_test.rb
46
57
  - lib/config_loader.rb
47
58
  - lib/hessian_data_utils.rb
48
59
  - lib/logger_factory.rb
60
+ - lib/stat-count-client/config_loader.rb
61
+ - lib/stat-count-client/hessian/stat_data_utils.rb
62
+ - lib/stat-count-client/hessian_client.rb
63
+ - lib/stat-count-client/logger_factory.rb
64
+ - lib/stat-count-client/stat_count_data.rb
65
+ - lib/stat-count-client/thrift/collecter_constants.rb
66
+ - lib/stat-count-client/thrift/collecter_types.rb
67
+ - lib/stat-count-client/thrift/remote_simple_count_collecter.rb
68
+ - lib/stat-count-client/thrift_client.rb
49
69
  - lib/stat-count-client/version.rb
50
70
  - lib/stat-count-client.rb
71
+ - doc/collecter.thrift
72
+ - doc/gen.txt
51
73
  homepage: http://www.ximalaya.com
52
74
  licenses: []
75
+ metadata: {}
53
76
  post_install_message:
54
77
  rdoc_options: []
55
78
  require_paths:
56
79
  - lib
57
80
  - test
58
81
  required_ruby_version: !ruby/object:Gem::Requirement
59
- none: false
60
82
  requirements:
61
- - - ! '>='
83
+ - - '>='
62
84
  - !ruby/object:Gem::Version
63
85
  version: '0'
64
86
  required_rubygems_version: !ruby/object:Gem::Requirement
65
- none: false
66
87
  requirements:
67
- - - ! '>='
88
+ - - '>='
68
89
  - !ruby/object:Gem::Version
69
90
  version: '0'
70
91
  requirements: []
71
92
  rubyforge_project:
72
- rubygems_version: 1.8.23
93
+ rubygems_version: 2.0.3
73
94
  signing_key:
74
- specification_version: 3
95
+ specification_version: 4
75
96
  summary: stat count client
76
97
  test_files:
77
98
  - test/count_mother.rb
78
99
  - test/stat_ccount_client_test.rb
100
+ - test/stat_count_client_test.rb
79
101
  - test/test.rb
102
+ - test/thrift_count_client_test.rb
103
+ has_rdoc: