rmuh 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.
- checksums.yaml +7 -0
- data/.gitignore +33 -0
- data/.rspec +2 -0
- data/.travis.yml +8 -0
- data/Gemfile +4 -0
- data/LICENSE +21 -0
- data/README.md +19 -0
- data/Rakefile +15 -0
- data/lib/rmuh.rb +22 -0
- data/lib/rmuh/rpt/log/fetch.rb +56 -0
- data/lib/rmuh/rpt/log/parsers/base.rb +29 -0
- data/lib/rmuh/rpt/log/parsers/unitedoperationslog.rb +94 -0
- data/lib/rmuh/rpt/log/parsers/unitedoperationsrpt.rb +65 -0
- data/lib/rmuh/rpt/log/util/unitedoperations.rb +127 -0
- data/lib/rmuh/rpt/log/util/unitedoperationslog.rb +26 -0
- data/lib/rmuh/rpt/log/util/unitedoperationsrpt.rb +37 -0
- data/lib/rmuh/serverstats/base.rb +55 -0
- data/lib/rmuh/version.rb +10 -0
- data/rmuh.gemspec +33 -0
- data/spec/files/content-length.txt +1 -0
- data/spec/helpers/spec_helper.rb +13 -0
- data/spec/helpers/unitedoperations.rb +106 -0
- data/spec/rmuh_rpt_log_fetch_spec.rb +112 -0
- data/spec/rmuh_rpt_log_parsers_base_spec.rb +57 -0
- data/spec/rmuh_rpt_log_parsers_unitedoperationslog_spec.rb +390 -0
- data/spec/rmuh_rpt_log_parsers_unitedoperationsrpt_spec.rb +252 -0
- data/spec/rmuh_rpt_log_util_unitedoperations_spec.rb +473 -0
- data/spec/rmuh_rpt_log_util_unitedoperationslog_spec.rb +66 -0
- data/spec/rmuh_rpt_log_util_unitedoperationsrpt_spec.rb +122 -0
- data/spec/rmuh_rpt_spec.rb +45 -0
- data/spec/rmuh_serverstats_base_spec.rb +190 -0
- metadata +225 -0
@@ -0,0 +1,66 @@
|
|
1
|
+
# -*- coding: UTF-8 -*-
|
2
|
+
require 'rspec'
|
3
|
+
require 'helpers/spec_helper'
|
4
|
+
require File.join(repo_root, 'lib/rmuh/rpt/log/util/unitedoperationslog')
|
5
|
+
|
6
|
+
describe RMuh::RPT::Log::Util::UnitedOperationsLog do
|
7
|
+
before(:all) do
|
8
|
+
@uo_util = Class.new
|
9
|
+
@uo_util.extend(RMuh::RPT::Log::Util::UnitedOperationsLog)
|
10
|
+
end
|
11
|
+
|
12
|
+
context '::ONE_DAY' do
|
13
|
+
it 'should be an instance of Fixnum' do
|
14
|
+
RMuh::RPT::Log::Util::UnitedOperationsLog::ONE_DAY
|
15
|
+
.should be_an_instance_of Fixnum
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'should be 24 hours in seconds' do
|
19
|
+
RMuh::RPT::Log::Util::UnitedOperationsLog::ONE_DAY.should eql 86_400
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
context '::TIME' do
|
24
|
+
it 'should be an instance of String' do
|
25
|
+
RMuh::RPT::Log::Util::UnitedOperationsLog::TIME
|
26
|
+
.should be_an_instance_of String
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
context '::GUID' do
|
31
|
+
it 'should be an instance of Regexp' do
|
32
|
+
RMuh::RPT::Log::Util::UnitedOperationsLog::GUID
|
33
|
+
.should be_an_instance_of Regexp
|
34
|
+
end
|
35
|
+
|
36
|
+
it 'should match an example line' do
|
37
|
+
l = ' 4:01:02 BattlEye Server: Verified GUID ' \
|
38
|
+
'(04de012b0f882b9ff2e43564c8c09361) of player #0 nametag47'
|
39
|
+
m = RMuh::RPT::Log::Util::UnitedOperationsLog::GUID.match(l)
|
40
|
+
m.should_not be_nil
|
41
|
+
m['hour'].should eql '4'
|
42
|
+
m['min'].should eql '01'
|
43
|
+
m['sec'].should eql '02'
|
44
|
+
m['player_beguid'].should eql '04de012b0f882b9ff2e43564c8c09361'
|
45
|
+
m['player'].should eql 'nametag47'
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
context '::CHAT' do
|
50
|
+
it 'should be an instance of Regexp' do
|
51
|
+
RMuh::RPT::Log::Util::UnitedOperationsLog::CHAT
|
52
|
+
.should be_an_instance_of Regexp
|
53
|
+
end
|
54
|
+
|
55
|
+
it 'should match an example line' do
|
56
|
+
l = ' 5:48:01 BattlEye Server: (Side) Xcenocide: Admin back'
|
57
|
+
m = RMuh::RPT::Log::Util::UnitedOperationsLog::CHAT.match(l)
|
58
|
+
m['hour'].should eql '5'
|
59
|
+
m['min'].should eql '48'
|
60
|
+
m['sec'].should eql '01'
|
61
|
+
m['channel'].should eql 'Side'
|
62
|
+
m['player'].should eql 'Xcenocide'
|
63
|
+
m['message'].should eql 'Admin back'
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
@@ -0,0 +1,122 @@
|
|
1
|
+
# -*- coding: UTF-8 -*-
|
2
|
+
require 'rspec'
|
3
|
+
require 'helpers/spec_helper'
|
4
|
+
require File.join(repo_root, 'lib/rmuh/rpt/log/util/unitedoperationsrpt')
|
5
|
+
|
6
|
+
describe RMuh::RPT::Log::Util::UnitedOperationsRPT do
|
7
|
+
context '::DTR' do
|
8
|
+
it 'should be an instance of String' do
|
9
|
+
RMuh::RPT::Log::Util::UnitedOperationsRPT::DTR
|
10
|
+
.should be_an_instance_of String
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
context '::KILLED' do
|
15
|
+
it 'should be an instance of Regexp' do
|
16
|
+
RMuh::RPT::Log::Util::UnitedOperationsRPT::KILLED
|
17
|
+
.should be_an_instance_of Regexp
|
18
|
+
end
|
19
|
+
|
20
|
+
it 'should match an example line' do
|
21
|
+
l = '2014/02/16, 4:11:42 "69.85 seconds: Olli (CIV) has been killed ' \
|
22
|
+
'by Yevgeniy Nikolayev (EAST). Olli position: [6553.55,6961.92,' \
|
23
|
+
'0.0015564] (GRID 0655306961). Yevgeniy Nikolayev position: ' \
|
24
|
+
'[6498.62,6916.71,0.0204163] (GRID 0649806916). Distance between: ' \
|
25
|
+
'71.1653 meters. Near players (100m): None."'
|
26
|
+
m = RMuh::RPT::Log::Util::UnitedOperationsRPT::KILLED.match(l)
|
27
|
+
m.should_not be_nil
|
28
|
+
m['year'].should eql '2014'
|
29
|
+
m['month'].should eql '02'
|
30
|
+
m['day'].should eql '16'
|
31
|
+
m['hour'].should eql '4'
|
32
|
+
m['min'].should eql '11'
|
33
|
+
m['sec'].should eql '42'
|
34
|
+
m['server_time'].should eql '69.85'
|
35
|
+
m['victim'].should eql 'Olli'
|
36
|
+
m['victim_team'].should eql 'CIV'
|
37
|
+
m['offender'].should eql 'Yevgeniy Nikolayev'
|
38
|
+
m['offender_team'].should eql 'EAST'
|
39
|
+
m['victim_position'].should eql '6553.55,6961.92,0.0015564'
|
40
|
+
m['victim_grid'].should eql '0655306961'
|
41
|
+
m['offender_position'].should eql '6498.62,6916.71,0.0204163'
|
42
|
+
m['offender_grid'].should eql '0649806916'
|
43
|
+
m['distance'].should eql '71.1653'
|
44
|
+
m['nearby_players'].should eql 'None.'
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
context '::DIED' do
|
49
|
+
it 'should be an instance of Regexp' do
|
50
|
+
RMuh::RPT::Log::Util::UnitedOperationsRPT::DIED
|
51
|
+
.should be_an_instance_of Regexp
|
52
|
+
end
|
53
|
+
|
54
|
+
it 'should match an example line' do
|
55
|
+
l = '2014/02/16, 5:15:06 "3683.58 seconds: Appe96 has died at ' \
|
56
|
+
'[4602.18,7490.26,2.2435] (GRID 0460207490). Near players (100m): ' \
|
57
|
+
'["Olli","nametag47","Villanyi"]"'
|
58
|
+
m = RMuh::RPT::Log::Util::UnitedOperationsRPT::DIED.match(l)
|
59
|
+
m.should_not be_nil
|
60
|
+
m['year'].should eql '2014'
|
61
|
+
m['month'].should eql '02'
|
62
|
+
m['day'].should eql '16'
|
63
|
+
m['hour'].should eql '5'
|
64
|
+
m['min'].should eql '15'
|
65
|
+
m['sec'].should eql '06'
|
66
|
+
m['server_time'].should eql '3683.58'
|
67
|
+
m['victim'].should eql 'Appe96'
|
68
|
+
m['victim_position'].should eql '4602.18,7490.26,2.2435'
|
69
|
+
m['victim_grid'].should eql '0460207490'
|
70
|
+
m['nearby_players'].should eql '["Olli","nametag47","Villanyi"]'
|
71
|
+
end
|
72
|
+
end
|
73
|
+
|
74
|
+
context '::WOUNDED' do
|
75
|
+
it 'should be an instance of Regexp' do
|
76
|
+
RMuh::RPT::Log::Util::UnitedOperationsRPT::WOUNDED
|
77
|
+
.should be_an_instance_of Regexp
|
78
|
+
end
|
79
|
+
|
80
|
+
it 'should match an example line' do
|
81
|
+
l = '2014/02/16, 5:22:55 "4152.41 seconds: Sherminator (CIV) has ' \
|
82
|
+
'been team wounded by Xcenocide (WEST) for 1.50828 damage."'
|
83
|
+
m = RMuh::RPT::Log::Util::UnitedOperationsRPT::WOUNDED.match(l)
|
84
|
+
m.should_not be_nil
|
85
|
+
m['year'].should eql '2014'
|
86
|
+
m['month'].should eql '02'
|
87
|
+
m['day'].should eql '16'
|
88
|
+
m['hour'].should eql '5'
|
89
|
+
m['min'].should eql '22'
|
90
|
+
m['sec'].should eql '55'
|
91
|
+
m['server_time'].should eql '4152.41'
|
92
|
+
m['victim'].should eql 'Sherminator'
|
93
|
+
m['victim_team'].should eql 'CIV'
|
94
|
+
m['offender'].should eql 'Xcenocide'
|
95
|
+
m['offender_team'].should eql 'WEST'
|
96
|
+
m['damage'].should eql '1.50828'
|
97
|
+
end
|
98
|
+
end
|
99
|
+
|
100
|
+
context '::ANNOUNCEMENT' do
|
101
|
+
it 'should be an instance of Regexp' do
|
102
|
+
RMuh::RPT::Log::Util::UnitedOperationsRPT::ANNOUNCEMENT
|
103
|
+
.should be_an_instance_of Regexp
|
104
|
+
end
|
105
|
+
|
106
|
+
it 'should match an example line' do
|
107
|
+
l = '2014/02/16, 4:13:10 "############################# Start ' \
|
108
|
+
'CO08_Escape_Chernarus_V1 #############################"'
|
109
|
+
m = RMuh::RPT::Log::Util::UnitedOperationsRPT::ANNOUNCEMENT.match(l)
|
110
|
+
m.should_not be_nil
|
111
|
+
m['year'].should eql '2014'
|
112
|
+
m['month'].should eql '02'
|
113
|
+
m['day'].should eql '16'
|
114
|
+
m['hour'].should eql '4'
|
115
|
+
m['min'].should eql '13'
|
116
|
+
m['sec'].should eql '10'
|
117
|
+
m['head'].should eql '#############################'
|
118
|
+
m['message'].should eql 'Start CO08_Escape_Chernarus_V1'
|
119
|
+
m['tail'].should eql '#############################'
|
120
|
+
end
|
121
|
+
end
|
122
|
+
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
# -*- coding: UTF-8 -*-
|
2
|
+
require 'rspec'
|
3
|
+
require File.join(File.expand_path('../..', __FILE__), 'lib/rmuh/version')
|
4
|
+
|
5
|
+
describe RMuh do
|
6
|
+
context '::VERSION_MAJ' do
|
7
|
+
it 'should have a major version that is an integer' do
|
8
|
+
RMuh::VERSION_MAJ.is_a?(Integer).should be_true
|
9
|
+
end
|
10
|
+
|
11
|
+
it 'should have a major version that is a positive number' do
|
12
|
+
(RMuh::VERSION_MAJ > -1).should be_true
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
context '::VERSION_MIN' do
|
17
|
+
it 'should have a minor version that is an integer' do
|
18
|
+
RMuh::VERSION_MIN.is_a?(Integer).should be_true
|
19
|
+
end
|
20
|
+
|
21
|
+
it 'should have a minor version that is a positive integer' do
|
22
|
+
(RMuh::VERSION_MIN > -1).should be_true
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
context '::VERSION_REV' do
|
27
|
+
it 'should have a revision number that is an integer' do
|
28
|
+
RMuh::VERSION_REV.is_a?(Integer).should be_true
|
29
|
+
end
|
30
|
+
|
31
|
+
it 'should have a revision number that is a positive integer' do
|
32
|
+
(RMuh::VERSION_REV > -1).should be_true
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
context '::VERSION' do
|
37
|
+
it 'should have a version that is a string' do
|
38
|
+
RMuh::VERSION.should be_an_instance_of String
|
39
|
+
end
|
40
|
+
|
41
|
+
it 'should match the following format N.N.N' do
|
42
|
+
/\A(?:\d+?\.){2}\d+?/.match(RMuh::VERSION).should_not be_nil
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
@@ -0,0 +1,190 @@
|
|
1
|
+
# -*- coding: UTF-8 -*-
|
2
|
+
|
3
|
+
require 'rspec'
|
4
|
+
require 'gamespy_query'
|
5
|
+
require 'helpers/spec_helper'
|
6
|
+
require File.join(repo_root, 'lib/rmuh/serverstats/base')
|
7
|
+
|
8
|
+
describe RMuh::ServerStats::Base do
|
9
|
+
context '::DEFAULT_PORT' do
|
10
|
+
let(:port) { RMuh::ServerStats::Base::DEFAULT_PORT }
|
11
|
+
|
12
|
+
it 'should be an instance of Fixnum' do
|
13
|
+
port.should be_an_instance_of Fixnum
|
14
|
+
end
|
15
|
+
|
16
|
+
it 'should be the default ArmA 2 port' do
|
17
|
+
port.should eql 2_302
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
context '::validate_opts' do
|
22
|
+
it 'should take no more than one arg' do
|
23
|
+
expect do
|
24
|
+
RMuh::ServerStats::Base.validate_opts(nil, nil)
|
25
|
+
end.to raise_error ArgumentError
|
26
|
+
end
|
27
|
+
|
28
|
+
it 'should take no less than one arg' do
|
29
|
+
expect do
|
30
|
+
RMuh::ServerStats::Base.validate_opts
|
31
|
+
end.to raise_error ArgumentError
|
32
|
+
end
|
33
|
+
|
34
|
+
it 'should fail if arg 1 does not contain host' do
|
35
|
+
expect do
|
36
|
+
RMuh::ServerStats::Base.validate_opts({})
|
37
|
+
end.to raise_error ArgumentError
|
38
|
+
end
|
39
|
+
|
40
|
+
it 'should return nil' do
|
41
|
+
x = RMuh::ServerStats::Base.validate_opts(host: '127.0.0.1')
|
42
|
+
x.should be_nil
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
context '#opts_to_instance' do
|
47
|
+
let(:b) { RMuh::ServerStats::Base.new(host: '127.0.0.1') }
|
48
|
+
|
49
|
+
it 'should take no more than one arg' do
|
50
|
+
expect do
|
51
|
+
b.send(:opts_to_instance, nil, nil)
|
52
|
+
end.to raise_error ArgumentError
|
53
|
+
end
|
54
|
+
|
55
|
+
it 'should take no less than one arg' do
|
56
|
+
expect do
|
57
|
+
b.send(:opts_to_instance)
|
58
|
+
end.to raise_error ArgumentError
|
59
|
+
end
|
60
|
+
|
61
|
+
it 'should convert each key to an instance variable' do
|
62
|
+
h = { one: 1, two: '2', three: :three }
|
63
|
+
b.instance_variable_get(:@one).should be_nil
|
64
|
+
b.instance_variable_get(:@two).should be_nil
|
65
|
+
b.instance_variable_get(:@three).should be_nil
|
66
|
+
b.send(:opts_to_instance, h)
|
67
|
+
b.instance_variable_get(:@one).should eql h[:one]
|
68
|
+
b.instance_variable_get(:@two).should eql h[:two]
|
69
|
+
b.instance_variable_get(:@three).should eql h[:three]
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
context '::new' do
|
74
|
+
it 'should take no more than one arg' do
|
75
|
+
expect do
|
76
|
+
RMuh::ServerStats::Base.new(nil, nil)
|
77
|
+
end.to raise_error ArgumentError
|
78
|
+
end
|
79
|
+
|
80
|
+
it 'should return an instance of itself if arg 1 is a Hash' do
|
81
|
+
s = RMuh::ServerStats::Base.new(host: '127.0.0.1')
|
82
|
+
s.should be_an_instance_of RMuh::ServerStats::Base
|
83
|
+
end
|
84
|
+
|
85
|
+
it 'should require the host attribute' do
|
86
|
+
expect do
|
87
|
+
RMuh::ServerStats::Base.new({})
|
88
|
+
end.to raise_error ArgumentError
|
89
|
+
end
|
90
|
+
|
91
|
+
it 'should set an instance variable for each thing in Hash' do
|
92
|
+
h = { host: '1.2.3.4', port: 2_303, cache: false }
|
93
|
+
s = RMuh::ServerStats::Base.new(h)
|
94
|
+
s.instance_variable_get(:@host).should eql h[:host]
|
95
|
+
s.instance_variable_get(:@port).should eql h[:port]
|
96
|
+
s.instance_variable_get(:@cache).should eql h[:cache]
|
97
|
+
end
|
98
|
+
|
99
|
+
it 'should create an instance of GamespyQuery::Socket' do
|
100
|
+
s = RMuh::ServerStats::Base.new(host: '127.0.0.1')
|
101
|
+
x = s.instance_variable_get(:@gsq)
|
102
|
+
x.should be_an_instance_of GamespyQuery::Socket
|
103
|
+
end
|
104
|
+
|
105
|
+
it 'should specify default values for @port and @cache' do
|
106
|
+
s = RMuh::ServerStats::Base.new(host: '127.0.0.1')
|
107
|
+
s.instance_variable_get(:@cache).should be true
|
108
|
+
s.instance_variable_get(:@port).should eql 2_302
|
109
|
+
end
|
110
|
+
end
|
111
|
+
|
112
|
+
context '#sync' do
|
113
|
+
before do
|
114
|
+
GamespyQuery::Socket.any_instance.stub(:sync).and_return(one: 1)
|
115
|
+
end
|
116
|
+
let(:b) { RMuh::ServerStats::Base.new(host: '127.0.0.1') }
|
117
|
+
|
118
|
+
it 'should take no args' do
|
119
|
+
expect { b.send(:sync, nil) }.to raise_error ArgumentError
|
120
|
+
end
|
121
|
+
|
122
|
+
it 'should return a Hash' do
|
123
|
+
b.send(:sync).should be_an_instance_of Hash
|
124
|
+
end
|
125
|
+
end
|
126
|
+
|
127
|
+
context '#remote_stats' do
|
128
|
+
let(:b) { RMuh::ServerStats::Base.new(host: '127.0.0.1') }
|
129
|
+
|
130
|
+
it 'should take no args' do
|
131
|
+
expect { b.send(:remote_stats, nil) }.to raise_error ArgumentError
|
132
|
+
end
|
133
|
+
|
134
|
+
it 'should return the content of @servicestats if cache == true' do
|
135
|
+
b.instance_variable_set(:@serverstats, one: 'two')
|
136
|
+
b.send(:remote_stats).should eql(one: 'two')
|
137
|
+
end
|
138
|
+
|
139
|
+
it 'should return the return value from the #sync method if cache true' do
|
140
|
+
n = RMuh::ServerStats::Base.new(host: '127.0.0.1', cache: false)
|
141
|
+
n.stub(:sync).and_return(one: 'two')
|
142
|
+
n.send(:remote_stats).should eql(one: 'two')
|
143
|
+
end
|
144
|
+
end
|
145
|
+
|
146
|
+
context '#update_cache' do
|
147
|
+
before(:each) do
|
148
|
+
@b = RMuh::ServerStats::Base.new(host: '127.0.0.1')
|
149
|
+
@bf = RMuh::ServerStats::Base.new(host: '127.0.0.1', cache: false)
|
150
|
+
@b.stub(:sync).and_return(one: 'two')
|
151
|
+
@bf.stub(:sync).and_return(one: 'two')
|
152
|
+
end
|
153
|
+
|
154
|
+
it 'should take no args' do
|
155
|
+
expect { @b.update_cache(nil) }.to raise_error ArgumentError
|
156
|
+
end
|
157
|
+
|
158
|
+
it 'should set the contents of @serverstats if caching' do
|
159
|
+
@b.update_cache
|
160
|
+
@b.instance_variable_get(:@serverstats).should eql(one: 'two')
|
161
|
+
end
|
162
|
+
|
163
|
+
it 'should not set the contents of @serverstats if no caching' do
|
164
|
+
@bf.update_cache
|
165
|
+
@bf.instance_variable_get(:@serverstats).should be_nil
|
166
|
+
end
|
167
|
+
end
|
168
|
+
|
169
|
+
context '#stats' do
|
170
|
+
before(:each) do
|
171
|
+
@b = RMuh::ServerStats::Base.new(host: '127.0.0.1')
|
172
|
+
@bf = RMuh::ServerStats::Base.new(host: '127.0.0.1', cache: false)
|
173
|
+
@b.stub(:sync).and_return(one: 'two')
|
174
|
+
@bf.stub(:sync).and_return(one: 'two')
|
175
|
+
@b.update_cache
|
176
|
+
end
|
177
|
+
|
178
|
+
it 'should take no args' do
|
179
|
+
expect { @b.stats(nil) }.to raise_error ArgumentError
|
180
|
+
end
|
181
|
+
|
182
|
+
it 'should return the contents of @serverstats if caching enabled' do
|
183
|
+
@b.stats.should eql @b.instance_variable_get(:@serverstats)
|
184
|
+
end
|
185
|
+
|
186
|
+
it 'should return the contents of sync if caching is disabled' do
|
187
|
+
@bf.stats.should eql(one: 'two')
|
188
|
+
end
|
189
|
+
end
|
190
|
+
end
|
metadata
ADDED
@@ -0,0 +1,225 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: rmuh
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Tim Heckman
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2014-02-18 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rake
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 10.1.0
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 10.1.0
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rspec
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 2.14.1
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 2.14.1
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rubocop
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 0.18.1
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 0.18.1
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: fuubar
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 1.3.2
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: 1.3.2
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: simplecov
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 0.8.2
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 0.8.2
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: coveralls
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 0.7.0
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 0.7.0
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: awesome_print
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: 1.2.0
|
104
|
+
type: :runtime
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 1.2.0
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: tzinfo
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - "~>"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: 1.1.0
|
118
|
+
type: :runtime
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - "~>"
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: 1.1.0
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: httparty
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - "~>"
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: 0.12.0
|
132
|
+
type: :runtime
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - "~>"
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: 0.12.0
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: gamespy_query
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - "~>"
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: 0.1.5
|
146
|
+
type: :runtime
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - "~>"
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: 0.1.5
|
153
|
+
description: ArmA 2 Ruby Library for RPT, Log, and GameSpy
|
154
|
+
email: t@heckman.io
|
155
|
+
executables: []
|
156
|
+
extensions: []
|
157
|
+
extra_rdoc_files: []
|
158
|
+
files:
|
159
|
+
- ".gitignore"
|
160
|
+
- ".rspec"
|
161
|
+
- ".travis.yml"
|
162
|
+
- Gemfile
|
163
|
+
- LICENSE
|
164
|
+
- README.md
|
165
|
+
- Rakefile
|
166
|
+
- lib/rmuh.rb
|
167
|
+
- lib/rmuh/rpt/log/fetch.rb
|
168
|
+
- lib/rmuh/rpt/log/parsers/base.rb
|
169
|
+
- lib/rmuh/rpt/log/parsers/unitedoperationslog.rb
|
170
|
+
- lib/rmuh/rpt/log/parsers/unitedoperationsrpt.rb
|
171
|
+
- lib/rmuh/rpt/log/util/unitedoperations.rb
|
172
|
+
- lib/rmuh/rpt/log/util/unitedoperationslog.rb
|
173
|
+
- lib/rmuh/rpt/log/util/unitedoperationsrpt.rb
|
174
|
+
- lib/rmuh/serverstats/base.rb
|
175
|
+
- lib/rmuh/version.rb
|
176
|
+
- rmuh.gemspec
|
177
|
+
- spec/files/content-length.txt
|
178
|
+
- spec/helpers/spec_helper.rb
|
179
|
+
- spec/helpers/unitedoperations.rb
|
180
|
+
- spec/rmuh_rpt_log_fetch_spec.rb
|
181
|
+
- spec/rmuh_rpt_log_parsers_base_spec.rb
|
182
|
+
- spec/rmuh_rpt_log_parsers_unitedoperationslog_spec.rb
|
183
|
+
- spec/rmuh_rpt_log_parsers_unitedoperationsrpt_spec.rb
|
184
|
+
- spec/rmuh_rpt_log_util_unitedoperations_spec.rb
|
185
|
+
- spec/rmuh_rpt_log_util_unitedoperationslog_spec.rb
|
186
|
+
- spec/rmuh_rpt_log_util_unitedoperationsrpt_spec.rb
|
187
|
+
- spec/rmuh_rpt_spec.rb
|
188
|
+
- spec/rmuh_serverstats_base_spec.rb
|
189
|
+
homepage: https://github.com/theckman/rmuh
|
190
|
+
licenses:
|
191
|
+
- MIT
|
192
|
+
metadata: {}
|
193
|
+
post_install_message:
|
194
|
+
rdoc_options: []
|
195
|
+
require_paths:
|
196
|
+
- lib
|
197
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
198
|
+
requirements:
|
199
|
+
- - ">="
|
200
|
+
- !ruby/object:Gem::Version
|
201
|
+
version: '0'
|
202
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
203
|
+
requirements:
|
204
|
+
- - ">="
|
205
|
+
- !ruby/object:Gem::Version
|
206
|
+
version: '0'
|
207
|
+
requirements: []
|
208
|
+
rubyforge_project:
|
209
|
+
rubygems_version: 2.2.2
|
210
|
+
signing_key:
|
211
|
+
specification_version: 4
|
212
|
+
summary: ArmA 2 Ruby Library
|
213
|
+
test_files:
|
214
|
+
- spec/files/content-length.txt
|
215
|
+
- spec/helpers/spec_helper.rb
|
216
|
+
- spec/helpers/unitedoperations.rb
|
217
|
+
- spec/rmuh_rpt_log_fetch_spec.rb
|
218
|
+
- spec/rmuh_rpt_log_parsers_base_spec.rb
|
219
|
+
- spec/rmuh_rpt_log_parsers_unitedoperationslog_spec.rb
|
220
|
+
- spec/rmuh_rpt_log_parsers_unitedoperationsrpt_spec.rb
|
221
|
+
- spec/rmuh_rpt_log_util_unitedoperations_spec.rb
|
222
|
+
- spec/rmuh_rpt_log_util_unitedoperationslog_spec.rb
|
223
|
+
- spec/rmuh_rpt_log_util_unitedoperationsrpt_spec.rb
|
224
|
+
- spec/rmuh_rpt_spec.rb
|
225
|
+
- spec/rmuh_serverstats_base_spec.rb
|