rserve-client 0.1.5 → 0.1.6
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.tar.gz.sig +1 -2
- data/.gitignore +1 -0
- data/History.txt +15 -2
- data/Manifest.txt +8 -0
- data/README.txt +41 -19
- data/lib/rserve.rb +1 -1
- data/lib/rserve/connection.rb +152 -69
- data/lib/rserve/engine.rb +9 -9
- data/lib/rserve/packet.rb +2 -2
- data/lib/rserve/protocol.rb +51 -46
- data/lib/rserve/protocol/rexpfactory.rb +659 -366
- data/lib/rserve/rexp.rb +175 -156
- data/lib/rserve/rexp/double.rb +45 -38
- data/lib/rserve/rexp/environment.rb +40 -0
- data/lib/rserve/rexp/expressionvector.rb +9 -0
- data/lib/rserve/rexp/genericvector.rb +5 -3
- data/lib/rserve/rexp/integer.rb +38 -38
- data/lib/rserve/rexp/language.rb +2 -2
- data/lib/rserve/rexp/list.rb +3 -0
- data/lib/rserve/rexp/logical.rb +17 -4
- data/lib/rserve/rexp/null.rb +20 -14
- data/lib/rserve/rexp/raw.rb +19 -0
- data/lib/rserve/rexp/reference.rb +42 -0
- data/lib/rserve/rexp/s4.rb +10 -0
- data/lib/rserve/rexp/string.rb +5 -3
- data/lib/rserve/rexp/symbol.rb +3 -0
- data/lib/rserve/rexp/vector.rb +30 -15
- data/lib/rserve/rexp/wrapper.rb +58 -0
- data/lib/rserve/rfactor.rb +10 -10
- data/lib/rserve/rlist.rb +129 -100
- data/lib/rserve/talk.rb +61 -61
- data/spec/rserve_connection_spec.rb +99 -33
- data/spec/rserve_double_spec.rb +28 -15
- data/spec/rserve_integer_spec.rb +24 -15
- data/spec/rserve_logical_spec.rb +21 -12
- data/spec/rserve_protocol_spec.rb +7 -7
- data/spec/rserve_rexp_spec.rb +3 -3
- data/spec/rserve_rexp_wrapper_spec.rb +36 -0
- data/spec/rserve_rexpfactory_spec.rb +86 -20
- data/spec/rserve_rfactor_spec.rb +2 -2
- data/spec/rserve_rlist_spec.rb +53 -0
- data/spec/rserve_spec.rb +8 -5
- data/spec/rserve_talk_spec.rb +7 -7
- data/spec/spec_helper.rb +1 -0
- metadata +13 -3
- metadata.gz.sig +0 -0
data/spec/rserve_spec.rb
CHANGED
@@ -2,7 +2,7 @@ require File.dirname(__FILE__)+"/spec_helper.rb"
|
|
2
2
|
|
3
3
|
describe Rserve do
|
4
4
|
before do
|
5
|
-
|
5
|
+
@r=Rserve::Connection.new()
|
6
6
|
end
|
7
7
|
it "should calcule a basic LR without hazzle" do
|
8
8
|
script=<<-EOF
|
@@ -18,10 +18,13 @@ severity <- as.data.frame(cbind(diseasesev,temperature))
|
|
18
18
|
|
19
19
|
## Fit a linear model for the data and summarize the output from function lm()
|
20
20
|
severity.lm <- lm(diseasesev~temperature,data=severity)
|
21
|
-
EOF
|
22
|
-
@r.void_eval(script)
|
23
|
-
@r.eval('severity.lm').should
|
24
|
-
@r.eval('
|
21
|
+
EOF
|
22
|
+
@r.void_eval(script)
|
23
|
+
@r.eval('severity.lm').should be_instance_of(Rserve::REXP::GenericVector)
|
24
|
+
@r.eval('severity.lm').to_ruby.should be_true
|
25
|
+
@r.eval('summary(severity.lm)').should be_true
|
26
|
+
@r.eval('summary(severity.lm)').to_ruby.should be_true
|
27
|
+
|
25
28
|
|
26
29
|
|
27
30
|
end
|
data/spec/rserve_talk_spec.rb
CHANGED
@@ -17,7 +17,7 @@ describe Rserve::Talk do
|
|
17
17
|
lambda {
|
18
18
|
@talk.request(:cmd=>ty, :cont=>"no")
|
19
19
|
}.should raise_exception()
|
20
|
-
|
20
|
+
|
21
21
|
end
|
22
22
|
it "should behave correctly with cmd as only argument" do
|
23
23
|
ty=Rserve::Protocol::CMD_shutdown
|
@@ -29,7 +29,7 @@ describe Rserve::Talk do
|
|
29
29
|
cl=cont.length
|
30
30
|
server_response_1=[rep,cl,0,0].pack("IIII")
|
31
31
|
server_response_2=cont
|
32
|
-
|
32
|
+
|
33
33
|
@iomock.should_receive(:write).once.with(buf.pack("C*"))
|
34
34
|
@iomock.should_receive(:recv).once.with(16).and_return(server_response_1)
|
35
35
|
@iomock.should_receive(:recv).once.with(cl).and_return(server_response_2)
|
@@ -41,11 +41,11 @@ describe Rserve::Talk do
|
|
41
41
|
ret.cont.should==cont.unpack("C*")
|
42
42
|
end
|
43
43
|
it "should behave correctly with cmd and cont as arguments" do
|
44
|
-
|
44
|
+
|
45
45
|
|
46
46
|
ty=Rserve::Protocol::CMD_eval
|
47
47
|
buf=[0]*16
|
48
|
-
|
48
|
+
|
49
49
|
es="x<-1020"
|
50
50
|
es_proc=@talk.request_string(es).pack("C*")
|
51
51
|
es_len=es_proc.size
|
@@ -58,12 +58,12 @@ describe Rserve::Talk do
|
|
58
58
|
server_response_2=cont
|
59
59
|
@iomock.should_receive(:write).once.with(buf.pack("C*"))
|
60
60
|
@iomock.should_receive(:write).once.with(es_proc)
|
61
|
-
|
61
|
+
|
62
62
|
@iomock.should_receive(:recv).once.with(16).and_return(server_response_1)
|
63
63
|
@iomock.should_receive(:recv).once.with(cl).and_return(server_response_2)
|
64
|
-
|
64
|
+
|
65
65
|
ret=@talk.request(:cmd=>ty,:cont=>es)
|
66
|
-
|
66
|
+
|
67
67
|
ret.should be_instance_of(Rserve::Packet)
|
68
68
|
ret.cmd.should==rep
|
69
69
|
ret.cont_len.should==cl
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 1
|
8
|
-
-
|
9
|
-
version: 0.1.
|
8
|
+
- 6
|
9
|
+
version: 0.1.6
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Claudio Bustos
|
@@ -35,7 +35,7 @@ cert_chain:
|
|
35
35
|
rpP0jjs0
|
36
36
|
-----END CERTIFICATE-----
|
37
37
|
|
38
|
-
date: 2010-05-
|
38
|
+
date: 2010-05-27 00:00:00 -04:00
|
39
39
|
default_executable:
|
40
40
|
dependencies:
|
41
41
|
- !ruby/object:Gem::Dependency
|
@@ -95,6 +95,8 @@ files:
|
|
95
95
|
- lib/rserve/protocol/rexpfactory.rb
|
96
96
|
- lib/rserve/rexp.rb
|
97
97
|
- lib/rserve/rexp/double.rb
|
98
|
+
- lib/rserve/rexp/environment.rb
|
99
|
+
- lib/rserve/rexp/expressionvector.rb
|
98
100
|
- lib/rserve/rexp/factor.rb
|
99
101
|
- lib/rserve/rexp/genericvector.rb
|
100
102
|
- lib/rserve/rexp/integer.rb
|
@@ -102,10 +104,14 @@ files:
|
|
102
104
|
- lib/rserve/rexp/list.rb
|
103
105
|
- lib/rserve/rexp/logical.rb
|
104
106
|
- lib/rserve/rexp/null.rb
|
107
|
+
- lib/rserve/rexp/raw.rb
|
108
|
+
- lib/rserve/rexp/reference.rb
|
109
|
+
- lib/rserve/rexp/s4.rb
|
105
110
|
- lib/rserve/rexp/string.rb
|
106
111
|
- lib/rserve/rexp/symbol.rb
|
107
112
|
- lib/rserve/rexp/unknown.rb
|
108
113
|
- lib/rserve/rexp/vector.rb
|
114
|
+
- lib/rserve/rexp/wrapper.rb
|
109
115
|
- lib/rserve/rfactor.rb
|
110
116
|
- lib/rserve/rlist.rb
|
111
117
|
- lib/rserve/talk.rb
|
@@ -116,8 +122,10 @@ files:
|
|
116
122
|
- spec/rserve_packet_spec.rb
|
117
123
|
- spec/rserve_protocol_spec.rb
|
118
124
|
- spec/rserve_rexp_spec.rb
|
125
|
+
- spec/rserve_rexp_wrapper_spec.rb
|
119
126
|
- spec/rserve_rexpfactory_spec.rb
|
120
127
|
- spec/rserve_rfactor_spec.rb
|
128
|
+
- spec/rserve_rlist_spec.rb
|
121
129
|
- spec/rserve_spec.rb
|
122
130
|
- spec/rserve_talk_spec.rb
|
123
131
|
- spec/spec.opts
|
@@ -154,6 +162,8 @@ signing_key:
|
|
154
162
|
specification_version: 3
|
155
163
|
summary: Ruby client for Rserve, a Binary R server (http://www.rforge.net/Rserve/)
|
156
164
|
test_files:
|
165
|
+
- spec/rserve_rlist_spec.rb
|
166
|
+
- spec/rserve_rexp_wrapper_spec.rb
|
157
167
|
- spec/rserve_rfactor_spec.rb
|
158
168
|
- spec/rserve_connection_spec.rb
|
159
169
|
- spec/rserve_double_spec.rb
|
metadata.gz.sig
CHANGED
Binary file
|