p2ruby 0.1.2 → 0.1.4
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +2 -0
- data/HISTORY +8 -0
- data/README.rdoc +3 -2
- data/VERSION +1 -1
- data/bin/olegen.rb +0 -0
- data/lib/extension.rb +2 -2
- data/lib/p2ruby/connection.rb +12 -2
- data/lib/p2ruby/record.rb +1 -1
- data/lib/p2ruby.rb +1 -4
- data/lib/version.rb +1 -1
- data/lib/win32ole-pr.rb +4564 -4558
- data/spec/encoding_spec.rb +1 -0
- data/spec/p2ruby/application_spec.rb +2 -2
- data/spec/p2ruby/connection_spec.rb +28 -34
- data/spec/p2ruby/data_stream_spec.rb +2 -1
- data/spec/p2ruby/library_spec.rb +1 -1
- data/spec/p2ruby/message_factory_spec.rb +2 -8
- data/spec/p2ruby/message_spec.rb +9 -8
- data/spec/p2ruby/record_spec.rb +2 -1
- data/spec/p2ruby/router_spec.rb +2 -2
- data/spec/p2ruby/table_set_spec.rb +3 -1
- data/spec/p2ruby_spec.rb +2 -2
- data/spec/spec_helper.rb +16 -10
- data/tasks/common.rake +2 -2
- data/tasks/spec.rake +1 -1
- data/tasks/version.rake +7 -7
- metadata +8 -30
data/spec/encoding_spec.rb
CHANGED
@@ -4,6 +4,7 @@ require 'rspec'
|
|
4
4
|
describe 'RSpec' do
|
5
5
|
it 'correctly outputs Windows Cyrillics' do
|
6
6
|
pending 'RSpec does NOT output Windows Cyrillics, unless `chcp 1251` is run in console'
|
7
|
+
|
7
8
|
Encoding.default_internal, Encoding.default_external = ['cp1251'] * 2
|
8
9
|
lit = "������� �������������� ����� �������� ���� ������ ������ ������� �����"
|
9
10
|
puts "Source encoding: #{__ENCODING__}"
|
@@ -1,4 +1,4 @@
|
|
1
|
-
# encoding:
|
1
|
+
# encoding: CP1251
|
2
2
|
require 'spec_helper'
|
3
3
|
|
4
4
|
describe P2::Application, "singleton app object" do
|
@@ -15,7 +15,7 @@ describe P2::Application, "singleton app object" do
|
|
15
15
|
its(:opts) { should have_key :ini }
|
16
16
|
its(:ini) { should == CLIENT_INI }
|
17
17
|
its(:ole) { should be_a WIN32OLE }
|
18
|
-
its(:ParserType) { should == 2 } # � 1 � Plaza; � 2 � Plaza-II (default)
|
18
|
+
its(:ParserType) { should == 2 } # � 1 � Plaza; � 2 � Plaza-II (default)
|
19
19
|
|
20
20
|
it 'is a Singleton' do
|
21
21
|
a1 = P2::Application.instance
|
@@ -1,4 +1,4 @@
|
|
1
|
-
# encoding:
|
1
|
+
# encoding: CP1251
|
2
2
|
require 'spec_helper'
|
3
3
|
|
4
4
|
def random_name
|
@@ -16,15 +16,9 @@ shared_examples_for 'new connection' do
|
|
16
16
|
|
17
17
|
it 'raises on NodeName access' do
|
18
18
|
expect { subject.NodeName }.to raise_error /Couldn't get MQ node name/
|
19
|
-
# its(:NodeName) { should == "??" }
|
20
19
|
end
|
21
20
|
|
22
21
|
it 'is possible to set settable properties' do
|
23
|
-
# Notes: �������� AppName, NodeName, Host, Port, Password � Timeout ������ ����
|
24
|
-
# ������ �� ������� ������ ������ Connect. � ������ ��������� ������ ������� ���
|
25
|
-
# ����, ����� ��������� �������� � ���� ���������� �������� ���������������� �����
|
26
|
-
# ������� Disconnect � Connect. ��������� �������������� ������� (LoginStr) ������
|
27
|
-
# ���� ������ �� ������� ������ ������ Login.
|
28
22
|
subject.AppName ='REASSIGNED'
|
29
23
|
subject.Host ='REASSIGNED_HOST'
|
30
24
|
subject.Port =1313
|
@@ -159,40 +153,40 @@ describe P2::Connection do
|
|
159
153
|
|
160
154
|
describe '#Connect2 '
|
161
155
|
# Connect2 ( [in] BSTR connStr, [out, retval] ULONG* errClass);
|
162
|
-
# �������� ���������� ���������� ���������� � ��������. ���������� � ������ Connect.
|
156
|
+
# �������� ���������� ���������� ���������� � ��������. ���������� � ������ Connect.
|
163
157
|
|
164
158
|
describe '#ProcessMessage'
|
165
159
|
# ProcessMessage ( [out] ULONG* cookie, [in] ULONG pollTimeout);
|
166
|
-
# ����� � ��������� ���������, � ��� ����� � ��������������.
|
167
|
-
# ���������
|
168
|
-
# � pollTimeout � ������� � �������������, � ������� �������� ��������� ��������� ���������;
|
169
|
-
# � cookie � ���������� ������������� ����������.
|
160
|
+
# ����� � ��������� ���������, � ��� ����� � ��������������.
|
161
|
+
# ���������
|
162
|
+
# � pollTimeout � ������� � �������������, � ������� �������� ��������� ��������� ���������;
|
163
|
+
# � cookie � ���������� ������������� ����������.
|
170
164
|
|
171
165
|
describe '#ProcessMessage2'
|
172
166
|
# ProcessMessage2 ( [in] ULONG pollTimeout, [out, retval] ULONG* cookie);
|
173
|
-
# ����� � ��������� ���������. ������� � ���������� � ������ Connection.ProcessMessage,
|
174
|
-
# ��� ��� ��� �� �������� � ������������������ ������ (JScript) �������� ���������
|
175
|
-
# ������ ������� (cookie).
|
167
|
+
# ����� � ��������� ���������. ������� � ���������� � ������ Connection.ProcessMessage,
|
168
|
+
# ��� ��� ��� �� �������� � ������������������ ������ (JScript) �������� ���������
|
169
|
+
# ������ ������� (cookie).
|
176
170
|
|
177
171
|
describe '#RegisterReceiver'
|
178
172
|
# RegisterReceiver ( [in] IP2MessageReceiver* newReceiver, [out,retval] ULONG* cookie);
|
179
|
-
# ����������� ����������.
|
180
|
-
# ���������
|
181
|
-
# � newReceiver � ��������� �� ��������� ��������� ������;
|
182
|
-
# � cookie � ���������� ������������� ����������. ������������ ��� ����, ����� �����
|
183
|
-
# ���� �������� ��������, � ����� ������ �� ���� � ������ Connection.ProcessMessage
|
184
|
-
# ������������ ���������� ���������.
|
173
|
+
# ����������� ����������.
|
174
|
+
# ���������
|
175
|
+
# � newReceiver � ��������� �� ��������� ��������� ������;
|
176
|
+
# � cookie � ���������� ������������� ����������. ������������ ��� ����, ����� �����
|
177
|
+
# ���� �������� ��������, � ����� ������ �� ���� � ������ Connection.ProcessMessage
|
178
|
+
# ������������ ���������� ���������.
|
185
179
|
|
186
180
|
describe '#UnRegisterReceiver'
|
187
181
|
# UnRegisterReceiver ([in] ULONG cookie);
|
188
|
-
# ������ ����������� ����������.
|
182
|
+
# ������ ����������� ����������.
|
189
183
|
|
190
184
|
describe '#ResolveService' do
|
191
185
|
# ResolveService ( [in] BSTR service, [out,retval] BSTR* address);
|
192
|
-
# ��������� ������� ������ ���������� �� ����� �������, ������� ��� �������������.
|
193
|
-
# ���������
|
194
|
-
# � service � ��� �������;
|
195
|
-
# � address � ������ ����� ����������.
|
186
|
+
# ��������� ������� ������ ���������� �� ����� �������, ������� ��� �������������.
|
187
|
+
# ���������
|
188
|
+
# � service � ��� �������;
|
189
|
+
# � address � ������ ����� ����������.
|
196
190
|
|
197
191
|
before(:all) do
|
198
192
|
@conn = P2::Connection.new :app_name => random_name,
|
@@ -205,20 +199,20 @@ describe P2::Connection do
|
|
205
199
|
it 'returns full server address, given a service name' do
|
206
200
|
@conn.ResolveService('FORTS_OPTINFO_REPL').should == "FINTER_FORTS3.inter_info"
|
207
201
|
@conn.ResolveService('FORTS_FUTINFO_REPL').should == "FINTER_FORTS3.inter_info"
|
208
|
-
@conn.ResolveService('FORTS_POS_REPL').should == "FINTER_FORTS3.
|
209
|
-
@conn.ResolveService('FORTS_FUTCOMMON_REPL').should== "FINTER_FORTS3.inter_futcommon"
|
210
|
-
@conn.ResolveService('FORTS_OPTCOMMON_REPL').should== "FINTER_FORTS3.inter_optcommon"
|
202
|
+
@conn.ResolveService('FORTS_POS_REPL').should == "FINTER_FORTS3.inter_infocore"
|
203
|
+
@conn.ResolveService('FORTS_FUTCOMMON_REPL').should == "FINTER_FORTS3.inter_futcommon"
|
204
|
+
@conn.ResolveService('FORTS_OPTCOMMON_REPL').should == "FINTER_FORTS3.inter_optcommon"
|
211
205
|
@conn.ResolveService('FORTS_VOLAT_REPL').should == "FINTER_FORTS3.inter_vmv"
|
212
206
|
@conn.ResolveService('FORTS_VM_REPL').should == "FINTER_FORTS3.inter_vmv"
|
213
207
|
# Order placement:
|
214
|
-
@conn.ResolveService("FORTS_SRV").should ==
|
208
|
+
@conn.ResolveService("FORTS_SRV").should == SERVER_NAME # ? changed
|
215
209
|
end
|
216
210
|
end
|
217
211
|
|
218
|
-
# �������������� ����������� ����������. �������� ������� �� ������ Login ��������,
|
219
|
-
# ��� ������������������ ���������� ���� ������� �� ������. ��� ����, ����� ������,
|
220
|
-
# ������� �� ����������� ��������������, ������� �������� � ������������ �����������
|
221
|
-
# � ��������� ����������.
|
212
|
+
# �������������� ����������� ����������. �������� ������� �� ������ Login ��������,
|
213
|
+
# ��� ������������������ ���������� ���� ������� �� ������. ��� ����, ����� ������,
|
214
|
+
# ������� �� ����������� ��������������, ������� �������� � ������������ �����������
|
215
|
+
# � ��������� ����������.
|
222
216
|
context 'When router is authenticated via ini file' do
|
223
217
|
end
|
224
218
|
context 'When router is authenticated explicitely - via Login()' do
|
@@ -1,4 +1,4 @@
|
|
1
|
-
# encoding:
|
1
|
+
# encoding: CP1251
|
2
2
|
require 'spec_helper'
|
3
3
|
|
4
4
|
def baseless_opts
|
@@ -13,6 +13,7 @@ describe P2::DataStream do
|
|
13
13
|
@conn = P2::Connection.new :app_name => 'DSTest',
|
14
14
|
:host => "127.0.0.1", :port => 4001
|
15
15
|
@conn.Connect
|
16
|
+
sleep 0.5
|
16
17
|
@conn.should be_connected
|
17
18
|
@conn.should be_logged
|
18
19
|
# Disconnected connection, for comparison
|
data/spec/p2ruby/library_spec.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# encoding:
|
1
|
+
# encoding: CP1251
|
2
2
|
require 'spec_helper'
|
3
3
|
|
4
4
|
describe P2::MessageFactory do
|
@@ -16,16 +16,10 @@ describe P2::MessageFactory do
|
|
16
16
|
its(:ole) { should be_a WIN32OLE }
|
17
17
|
|
18
18
|
describe '#Init()', 'is implicitly called by #new'
|
19
|
-
# Init ( BSTR structFile, BSTR signFile);
|
20
|
-
# ���������
|
21
|
-
# � structFile � ini-����, ���������� ����� ���������.
|
22
|
-
# � signFile � �� ������������.
|
19
|
+
# Init ( BSTR structFile, BSTR signFile);
|
23
20
|
|
24
21
|
describe '#CreateMessageByName()', 'creates raw (unwrapped) OLE message objects' do
|
25
22
|
# CreateMessageByName ( [in] BSTR msgName, [out,retval] IP2BLMessage** newMsg);
|
26
|
-
# �������� ��������� �� �����.
|
27
|
-
# ���������
|
28
|
-
# � msgName � ��� ��������� (��� ������� ��).
|
29
23
|
it 'creates raw OLE message objects according to scheme' do
|
30
24
|
msg = subject.CreateMessageByName("FutAddOrder")
|
31
25
|
msg.should be_a WIN32OLE # raw (unwrapped) OLE object!
|
data/spec/p2ruby/message_spec.rb
CHANGED
@@ -3,17 +3,16 @@ require 'spec_helper'
|
|
3
3
|
|
4
4
|
def get_message opts ={}
|
5
5
|
@factory.message :name => opts[:name] ||"FutAddOrder",
|
6
|
-
:dest_addr => opts[:dest_addr] ||
|
6
|
+
:dest_addr => opts[:dest_addr] || SERVER_NAME,
|
7
7
|
:field => opts[:field] || {
|
8
8
|
"P2_Category" => opts[:P2_Category] || "FORTS_MSG",
|
9
9
|
:P2_Type => opts[:P2_Type] || 1,
|
10
|
-
"isin" => opts[:isin] || "RTS-3.
|
11
|
-
:price => opts[:price] || "
|
10
|
+
"isin" => opts[:isin] || "RTS-3.12",
|
11
|
+
:price => opts[:price] || "155500",
|
12
12
|
:amount => opts[:amount] || 1,
|
13
13
|
"client_code" => opts[:client_code] || "001",
|
14
14
|
"type" => opts[:type] || 1,
|
15
|
-
"dir" => opts[:dir] || 1
|
16
|
-
}
|
15
|
+
"dir" => opts[:dir] || 1}
|
17
16
|
end
|
18
17
|
|
19
18
|
describe P2::Message do
|
@@ -35,14 +34,14 @@ describe P2::Message do
|
|
35
34
|
its(:opts) { should have_key :name }
|
36
35
|
its(:ole) { should be_a WIN32OLE }
|
37
36
|
its(:Name) { should == "" } # Why? Because there is no Message#Name= setter... :(
|
38
|
-
its(:DestAddr) { should ==
|
37
|
+
its(:DestAddr) { should == SERVER_NAME }
|
39
38
|
|
40
39
|
context 'working with named property Field' do
|
41
40
|
it 'initializes Field named properties correctly' do
|
42
41
|
subject.Field["P2_Category"].should == "FORTS_MSG"
|
43
42
|
subject.Field["P2_Type"].should == 1
|
44
|
-
subject.Field['isin'].should == "RTS-3.
|
45
|
-
subject.Field['price'].should == "
|
43
|
+
subject.Field['isin'].should == "RTS-3.12"
|
44
|
+
subject.Field['price'].should == "155500"
|
46
45
|
subject.Field['amount'].should == 1
|
47
46
|
subject.Field['client_code'].should == "001"
|
48
47
|
subject.Field['type'].should == 1
|
@@ -100,6 +99,7 @@ describe P2::Message do
|
|
100
99
|
@conn = P2::Connection.new :app_name => 'DSTest',
|
101
100
|
:host => "127.0.0.1", :port => 4001
|
102
101
|
@conn.Connect
|
102
|
+
sleep 0.3
|
103
103
|
@conn.should be_connected
|
104
104
|
@conn.should be_logged
|
105
105
|
# Disconnected connection, for comparison
|
@@ -145,6 +145,7 @@ describe P2::Message do
|
|
145
145
|
|
146
146
|
it 'correctly outputs Windows Cyrillics' do
|
147
147
|
pending 'freaking RSpec just does NOT output Cyrillics correctly, no matter what'
|
148
|
+
|
148
149
|
Encoding.default_internal, Encoding.default_external = ['cp1251'] * 2
|
149
150
|
lit = "������ �������������� ����� �������� ���� ������ ������ ������� �����"
|
150
151
|
reply = @wrong_order.Send(@conn, 1000)
|
data/spec/p2ruby/record_spec.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# encoding:
|
1
|
+
# encoding: CP1251
|
2
2
|
require 'spec_helper'
|
3
3
|
|
4
4
|
# Impossible to instantiate Record directly (no PROGID), need to receive
|
@@ -9,6 +9,7 @@ def get_record
|
|
9
9
|
@conn = P2::Connection.new :app_name => 'RecordTest',
|
10
10
|
:host => "127.0.0.1", :port => 4001
|
11
11
|
@conn.Connect
|
12
|
+
sleep 0.5
|
12
13
|
|
13
14
|
@ds = P2::DataStream.new :stream_name => 'RTS_INDEX_REPL',
|
14
15
|
:type => P2::RT_COMBINED_DYNAMIC
|
data/spec/p2ruby/router_spec.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# encoding:
|
1
|
+
# encoding: CP1251
|
2
2
|
require 'spec_helper'
|
3
3
|
|
4
4
|
describe P2::Router, "Driver for Router server app" do
|
@@ -22,7 +22,7 @@ describe P2::Router, "Driver for Router server app" do
|
|
22
22
|
|
23
23
|
context "router initialized with :path => #{ROUTER_PATH}, :ini => #{ROUTER_INI}" do
|
24
24
|
before(:all) { @router = P2::Router.new :dir => TEST_DIR, # To avoid file litter in BASE_DIR
|
25
|
-
|
25
|
+
:path => ROUTER_PATH, :ini => ROUTER_INI }
|
26
26
|
subject { @router }
|
27
27
|
|
28
28
|
it 'has P2 Router application/window launched' do
|
@@ -66,7 +66,9 @@ describe P2::TableSet do
|
|
66
66
|
subject { P2::TableSet.new :ole => @ds.ole.TableSet }
|
67
67
|
describe '#each' do
|
68
68
|
|
69
|
-
it 'is' do
|
69
|
+
it 'is defined' do
|
70
|
+
pending 'Implementation error. See http://forum.rts.ru/viewtopic.asp?t=20380'
|
71
|
+
|
70
72
|
p subject
|
71
73
|
p subject.Count()
|
72
74
|
p (subject.each.methods-Object.methods).sort
|
data/spec/p2ruby_spec.rb
CHANGED
@@ -39,8 +39,8 @@ describe P2 do
|
|
39
39
|
P2MQ_ERRORCLASS_IS_USELESS.should == 0x0001
|
40
40
|
end
|
41
41
|
|
42
|
-
it 'has error handler'do
|
43
|
-
expect { error 'Blah'}.to raise_error P2::Error, /Blah/
|
42
|
+
it 'has error handler' do
|
43
|
+
expect { error 'Blah' }.to raise_error P2::Error, /Blah/
|
44
44
|
end
|
45
45
|
end
|
46
46
|
|
data/spec/spec_helper.rb
CHANGED
@@ -19,13 +19,15 @@ TABLESET_INI = CONFIG_DIR + 'rts_index.ini'
|
|
19
19
|
ROUTER_INI = CONFIG_DIR + 'client_router.ini'
|
20
20
|
ROUTER_PATH = TEST_DIR + 'p2bin/P2MQRouter.exe'
|
21
21
|
ROUTER_ARGS = "/ini:#{ROUTER_INI}"
|
22
|
-
ROUTER_LOGIN = "
|
23
|
-
ROUTER_TITLE = Regexp.new('P2MQRouter - ')
|
22
|
+
ROUTER_LOGIN = "FORTS_FZ36" # Login (incomplete) to RTS test server
|
23
|
+
ROUTER_TITLE = Regexp.new('P2MQRouter - ')
|
24
|
+
SERVER_NAME = 'FINTER_FORTS3.SQLProxy1' # @conn.ResolveService("FORTS_SRV")
|
24
25
|
|
25
26
|
RSpec.configure do |config|
|
26
27
|
# config.exclusion_filter = { :slow => true }
|
27
28
|
# config.filter = { :focus => true }
|
28
29
|
# config.include(UserExampleHelpers)
|
30
|
+
# config.fail_fast = true
|
29
31
|
end
|
30
32
|
|
31
33
|
def show_ole
|
@@ -35,13 +37,6 @@ def show_ole
|
|
35
37
|
p subject.ole_methods.map { |m| "#{m.invoke_kind} #{m.name}(#{m.params.join ', '})" }.sort
|
36
38
|
end
|
37
39
|
|
38
|
-
# Closes any open Router application
|
39
|
-
def stop_router
|
40
|
-
while router_app = WinGui::App.find(:title => ROUTER_TITLE)
|
41
|
-
router_app.exit(timeout=10)
|
42
|
-
end
|
43
|
-
end
|
44
|
-
|
45
40
|
# Starts new Router application. Options:
|
46
41
|
# :force - force Router to start, even if it's already running (default *false*)
|
47
42
|
# :title - look for specific Router title
|
@@ -68,11 +63,22 @@ def restart_router
|
|
68
63
|
start_router :force => true
|
69
64
|
end
|
70
65
|
|
66
|
+
# Closes any open Router application
|
67
|
+
def stop_router
|
68
|
+
while router_app = WinGui::App.find(:title => ROUTER_TITLE)
|
69
|
+
router_app.exit(timeout=10)
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
71
73
|
# Prepares test stand by copying P2 files to /tmp
|
72
74
|
def prepare_test_stand
|
75
|
+
unless CONFIG_DIR.exist?
|
76
|
+
puts "Unable to rum specs - .ini not found. Put all your .ini files into #{CONFIG_DIR}!"
|
77
|
+
RSpec.wants_to_quit=true
|
78
|
+
end
|
79
|
+
|
73
80
|
FileUtils.rm_rf TMP_DIR
|
74
81
|
FileUtils.cp_r SOURCE_DIR, TEST_DIR #TMP_DIR
|
75
82
|
end
|
76
83
|
|
77
84
|
prepare_test_stand
|
78
|
-
#FileUtils.cd "#{TEST_DIR}"
|
data/tasks/common.rake
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
#task 'gem:release' => 'test:run'
|
3
3
|
|
4
4
|
task :notes do
|
5
|
-
|
5
|
+
puts 'Output annotations (TBD)'
|
6
6
|
end
|
7
7
|
|
8
8
|
#Bundler not ready for prime time just yet
|
@@ -15,4 +15,4 @@ end
|
|
15
15
|
# system "bundle install"
|
16
16
|
# puts
|
17
17
|
# end
|
18
|
-
#end
|
18
|
+
#end
|
data/tasks/spec.rake
CHANGED
data/tasks/version.rake
CHANGED
@@ -35,7 +35,7 @@ class Version
|
|
35
35
|
end
|
36
36
|
|
37
37
|
def write(desc = nil)
|
38
|
-
CLASS_NAME::VERSION_FILE.open('w') {|file| file.puts to_s }
|
38
|
+
CLASS_NAME::VERSION_FILE.open('w') { |file| file.puts to_s }
|
39
39
|
(BASE_PATH + 'HISTORY').open('a') do |file|
|
40
40
|
file.puts "\n== #{to_s} / #{Time.now.strftime '%Y-%m-%d'}\n"
|
41
41
|
file.puts "\n* #{desc}\n" if desc
|
@@ -51,17 +51,17 @@ desc 'Set version: [x.y.z] - explicitly, [1/10/100] - bump major/minor/patch, [.
|
|
51
51
|
task :version, [:command, :desc] do |t, args|
|
52
52
|
version = Version.new(CLASS_NAME::VERSION)
|
53
53
|
case args.command
|
54
|
-
when /^(\d+)\.(\d+)\.(\d+)(?:\.(.*?))?$/
|
54
|
+
when /^(\d+)\.(\d+)\.(\d+)(?:\.(.*?))?$/ # Set version explicitly
|
55
55
|
version.update($1, $2, $3, $4)
|
56
|
-
when /^\.(.*?)$/
|
56
|
+
when /^\.(.*?)$/ # Set build
|
57
57
|
version.build = $1
|
58
|
-
when /^(\d{1})$/
|
58
|
+
when /^(\d{1})$/ # Bump patch
|
59
59
|
version.bump_patch $1
|
60
|
-
when /^(\d{1})0$/
|
60
|
+
when /^(\d{1})0$/ # Bump minor
|
61
61
|
version.bump_minor $1
|
62
|
-
when /^(\d{1})00$/
|
62
|
+
when /^(\d{1})00$/ # Bump major
|
63
63
|
version.bump_major $1
|
64
|
-
else
|
64
|
+
else # Unknown command, just display VERSION
|
65
65
|
puts "#{NAME} #{version}"
|
66
66
|
next
|
67
67
|
end
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: p2ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.1.
|
5
|
+
version: 0.1.4
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- arvicco
|
@@ -10,53 +10,31 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2011-
|
13
|
+
date: 2011-11-11 00:00:00 +03:00
|
14
14
|
default_executable:
|
15
15
|
dependencies:
|
16
|
-
- !ruby/object:Gem::Dependency
|
17
|
-
name: rspec
|
18
|
-
prerelease: false
|
19
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
20
|
-
none: false
|
21
|
-
requirements:
|
22
|
-
- - ">="
|
23
|
-
- !ruby/object:Gem::Version
|
24
|
-
version: 2.0.0
|
25
|
-
type: :development
|
26
|
-
version_requirements: *id001
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: cucumber
|
29
|
-
prerelease: false
|
30
|
-
requirement: &id002 !ruby/object:Gem::Requirement
|
31
|
-
none: false
|
32
|
-
requirements:
|
33
|
-
- - ">="
|
34
|
-
- !ruby/object:Gem::Version
|
35
|
-
version: "0"
|
36
|
-
type: :development
|
37
|
-
version_requirements: *id002
|
38
16
|
- !ruby/object:Gem::Dependency
|
39
17
|
name: bundler
|
40
18
|
prerelease: false
|
41
|
-
requirement: &
|
19
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
42
20
|
none: false
|
43
21
|
requirements:
|
44
22
|
- - ">="
|
45
23
|
- !ruby/object:Gem::Version
|
46
24
|
version: 1.0.0
|
47
25
|
type: :runtime
|
48
|
-
version_requirements: *
|
26
|
+
version_requirements: *id001
|
49
27
|
- !ruby/object:Gem::Dependency
|
50
28
|
name: win_gui
|
51
29
|
prerelease: false
|
52
|
-
requirement: &
|
30
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
53
31
|
none: false
|
54
32
|
requirements:
|
55
33
|
- - ">="
|
56
34
|
- !ruby/object:Gem::Version
|
57
|
-
version: 0.2.
|
35
|
+
version: 0.2.21
|
58
36
|
type: :runtime
|
59
|
-
version_requirements: *
|
37
|
+
version_requirements: *id002
|
60
38
|
description: Ruby bindings and wrapper classes for P2ClientGate
|
61
39
|
email: arvitallian@gmail.com
|
62
40
|
executables:
|
@@ -141,7 +119,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
141
119
|
requirements: []
|
142
120
|
|
143
121
|
rubyforge_project:
|
144
|
-
rubygems_version: 1.
|
122
|
+
rubygems_version: 1.6.2
|
145
123
|
signing_key:
|
146
124
|
specification_version: 3
|
147
125
|
summary: Ruby bindings for P2ClientGate
|