raindrops 0.1.0
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.
- data/.document +7 -0
- data/.gitignore +13 -0
- data/COPYING +165 -0
- data/GIT-VERSION-GEN +40 -0
- data/GNUmakefile +172 -0
- data/LICENSE +16 -0
- data/README +117 -0
- data/Rakefile +156 -0
- data/TODO +2 -0
- data/examples/linux-tcp-listener-stats.rb +28 -0
- data/ext/raindrops/extconf.rb +11 -0
- data/ext/raindrops/linux_inet_diag.c +342 -0
- data/ext/raindrops/raindrops.c +192 -0
- data/lib/raindrops.rb +35 -0
- data/lib/raindrops/linux.rb +55 -0
- data/lib/raindrops/middleware.rb +75 -0
- data/lib/raindrops/struct.rb +47 -0
- data/raindrops.gemspec +38 -0
- data/setup.rb +1586 -0
- data/test/test_linux.rb +228 -0
- data/test/test_linux_middleware.rb +59 -0
- data/test/test_middleware.rb +111 -0
- data/test/test_raindrops.rb +95 -0
- data/test/test_raindrops_gc.rb +13 -0
- data/test/test_struct.rb +54 -0
- metadata +103 -0
data/test/test_struct.rb
ADDED
@@ -0,0 +1,54 @@
|
|
1
|
+
require 'test/unit'
|
2
|
+
require 'raindrops'
|
3
|
+
|
4
|
+
class TestRaindrops < Test::Unit::TestCase
|
5
|
+
|
6
|
+
def test_struct_new
|
7
|
+
@rw = Raindrops::Struct.new(:r, :w)
|
8
|
+
assert @rw.kind_of?(Class)
|
9
|
+
end
|
10
|
+
|
11
|
+
TMP = Raindrops::Struct.new(:r, :w)
|
12
|
+
|
13
|
+
def test_init_basic
|
14
|
+
tmp = TMP.new
|
15
|
+
assert_equal 0, tmp.r
|
16
|
+
assert_equal 1, tmp.incr_r
|
17
|
+
assert_equal 1, tmp.r
|
18
|
+
assert_equal({ :r => 1, :w => 0 }, tmp.to_hash)
|
19
|
+
|
20
|
+
assert_equal 1, tmp[0]
|
21
|
+
assert_equal 0, tmp[1]
|
22
|
+
assert_equal [ :r, :w ], TMP::MEMBERS
|
23
|
+
end
|
24
|
+
|
25
|
+
def test_init
|
26
|
+
tmp = TMP.new(5, 6)
|
27
|
+
assert_equal({ :r => 5, :w => 6 }, tmp.to_hash)
|
28
|
+
end
|
29
|
+
|
30
|
+
def test_dup
|
31
|
+
a = TMP.new(5, 6)
|
32
|
+
b = a.dup
|
33
|
+
assert_equal({ :r => 5, :w => 6 }, b.to_hash)
|
34
|
+
assert_nothing_raised { 4.times { b.decr_r } }
|
35
|
+
assert_equal({ :r => 1, :w => 6 }, b.to_hash)
|
36
|
+
assert_equal({ :r => 5, :w => 6 }, a.to_hash)
|
37
|
+
end
|
38
|
+
|
39
|
+
class Foo < Raindrops::Struct.new(:a, :b, :c, :d)
|
40
|
+
def to_ary
|
41
|
+
@raindrops.to_ary
|
42
|
+
end
|
43
|
+
|
44
|
+
def hello
|
45
|
+
"world"
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
def test_subclass
|
50
|
+
assert_equal [0, 0, 0, 0], Foo.new.to_ary
|
51
|
+
assert_equal "world", Foo.new.hello
|
52
|
+
end
|
53
|
+
|
54
|
+
end
|
metadata
ADDED
@@ -0,0 +1,103 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: raindrops
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- raindrops hackers
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
|
12
|
+
date: 2010-04-08 00:00:00 +00:00
|
13
|
+
default_executable:
|
14
|
+
dependencies: []
|
15
|
+
|
16
|
+
description: |-
|
17
|
+
Raindrops is a real time stats package to show statistics for Rack HTTP
|
18
|
+
servers. It is designed for preforking servers such as Rainbows! and
|
19
|
+
Unicorn, but should support any Rack HTTP server under Ruby 1.9, 1.8 and
|
20
|
+
possibly Rubinius (untested) on platforms supporting POSIX shared memory
|
21
|
+
and compiled with GCC (for atomic builtins).
|
22
|
+
email: raindrops@librelist.com
|
23
|
+
executables: []
|
24
|
+
|
25
|
+
extensions:
|
26
|
+
- ext/raindrops/extconf.rb
|
27
|
+
extra_rdoc_files:
|
28
|
+
- README
|
29
|
+
- LICENSE
|
30
|
+
- NEWS
|
31
|
+
- ChangeLog
|
32
|
+
- lib/raindrops.rb
|
33
|
+
- lib/raindrops/linux.rb
|
34
|
+
- lib/raindrops/middleware.rb
|
35
|
+
- lib/raindrops/struct.rb
|
36
|
+
- ext/raindrops/linux_inet_diag.c
|
37
|
+
files:
|
38
|
+
- .document
|
39
|
+
- .gitignore
|
40
|
+
- .manifest
|
41
|
+
- COPYING
|
42
|
+
- ChangeLog
|
43
|
+
- GIT-VERSION-FILE
|
44
|
+
- GIT-VERSION-GEN
|
45
|
+
- GNUmakefile
|
46
|
+
- LICENSE
|
47
|
+
- NEWS
|
48
|
+
- README
|
49
|
+
- Rakefile
|
50
|
+
- TODO
|
51
|
+
- examples/linux-tcp-listener-stats.rb
|
52
|
+
- ext/raindrops/extconf.rb
|
53
|
+
- ext/raindrops/linux_inet_diag.c
|
54
|
+
- ext/raindrops/raindrops.c
|
55
|
+
- lib/raindrops.rb
|
56
|
+
- lib/raindrops/linux.rb
|
57
|
+
- lib/raindrops/middleware.rb
|
58
|
+
- lib/raindrops/struct.rb
|
59
|
+
- raindrops.gemspec
|
60
|
+
- setup.rb
|
61
|
+
- test/test_linux.rb
|
62
|
+
- test/test_linux_middleware.rb
|
63
|
+
- test/test_middleware.rb
|
64
|
+
- test/test_raindrops.rb
|
65
|
+
- test/test_raindrops_gc.rb
|
66
|
+
- test/test_struct.rb
|
67
|
+
has_rdoc: true
|
68
|
+
homepage: http://raindrops.bogomips.org/
|
69
|
+
licenses: []
|
70
|
+
|
71
|
+
post_install_message:
|
72
|
+
rdoc_options:
|
73
|
+
- -Na
|
74
|
+
- -t
|
75
|
+
- raindrops - real-time stats for Rack servers
|
76
|
+
require_paths:
|
77
|
+
- lib
|
78
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: "0"
|
83
|
+
version:
|
84
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
85
|
+
requirements:
|
86
|
+
- - ">="
|
87
|
+
- !ruby/object:Gem::Version
|
88
|
+
version: "0"
|
89
|
+
version:
|
90
|
+
requirements: []
|
91
|
+
|
92
|
+
rubyforge_project: raindrops
|
93
|
+
rubygems_version: 1.3.5
|
94
|
+
signing_key:
|
95
|
+
specification_version: 3
|
96
|
+
summary: real-time stats for Rack servers
|
97
|
+
test_files:
|
98
|
+
- test/test_linux.rb
|
99
|
+
- test/test_linux_middleware.rb
|
100
|
+
- test/test_middleware.rb
|
101
|
+
- test/test_raindrops.rb
|
102
|
+
- test/test_raindrops_gc.rb
|
103
|
+
- test/test_struct.rb
|