1
0
mirror of https://github.com/cmur2/openvpn-status-web.git synced 2025-06-28 14:30:23 +02:00

gem: add rubocop and fix style

This commit is contained in:
cn
2020-03-02 01:57:58 +01:00
parent d959e7fe62
commit 140c60c753
11 changed files with 175 additions and 67 deletions

View File

@ -8,47 +8,56 @@ describe OpenVPNStatusWeb::Parser::ModernStateless do
context "for status-version #{version}" do
context 'for client list' do
it 'parses common names' do
expect(status.client_list.map { |client| client[0] }).to eq(["foo", "bar"])
expect(status.client_list.map { |client| client[0] }).to eq(%w[foo bar])
end
it 'parses real addresses' do
expect(status.client_list.map { |client| client[1] }).to eq(["1.2.3.4:1234", "1.2.3.5:1235"])
expect(status.client_list.map { |client| client[1] }).to eq(['1.2.3.4:1234', '1.2.3.5:1235'])
end
it 'parses received bytes' do
expect(status.client_list.map { |client| client[2] }).to eq([11811160064, 512])
expect(status.client_list.map { |client| client[2] }).to eq([11_811_160_064, 512])
end
it 'parses sent bytes' do
expect(status.client_list.map { |client| client[3] }).to eq([4194304, 2048])
expect(status.client_list.map { |client| client[3] }).to eq([4_194_304, 2048])
end
it 'parses connected since date' do
expect(status.client_list.map { |client| client[4] }).to eq([DateTime.new(2012,1,1,23,42,0), DateTime.new(2012,1,1,23,42,0)])
expect(status.client_list.map { |client| client[4] }).to eq(
[
DateTime.new(2012, 1, 1, 23, 42, 0), DateTime.new(2012, 1, 1, 23, 42, 0)
]
)
end
end
context 'for routing table' do
it 'parses virtual addresses' do
expect(status.routing_table.map { |route| route[0] }).to eq(["192.168.0.0/24", "192.168.66.2", "192.168.66.3", "2001:db8:0:0::1000"])
expect(status.routing_table.map { |route| route[0] }).to eq(['192.168.0.0/24', '192.168.66.2', '192.168.66.3', '2001:db8:0:0::1000'])
end
it 'parses common names' do
expect(status.routing_table.map { |route| route[1] }).to eq(["foo", "bar", "foo", "bar"])
expect(status.routing_table.map { |route| route[1] }).to eq(%w[foo bar foo bar])
end
it 'parses real addresses' do
expect(status.routing_table.map { |route| route[2] }).to eq(["1.2.3.4:1234", "1.2.3.5:1235", "1.2.3.4:1234", "1.2.3.5:1235"])
expect(status.routing_table.map { |route| route[2] }).to eq(['1.2.3.4:1234', '1.2.3.5:1235', '1.2.3.4:1234', '1.2.3.5:1235'])
end
it 'parses last ref date' do
expect(status.routing_table.map { |route| route[3] }).to eq([DateTime.new(2012,1,1,23,42,0), DateTime.new(2012,1,1,23,42,0), DateTime.new(2012,1,1,23,42,0), DateTime.new(2012,1,1,23,42,0)])
expect(status.routing_table.map { |route| route[3] }).to eq(
[
DateTime.new(2012, 1, 1, 23, 42, 0), DateTime.new(2012, 1, 1, 23, 42, 0),
DateTime.new(2012, 1, 1, 23, 42, 0), DateTime.new(2012, 1, 1, 23, 42, 0)
]
)
end
end
it 'parses global stats' do
expect(status.global_stats.size).to eq(1)
expect(status.global_stats.first).to eq(["Max bcast/mcast queue length", 42])
expect(status.global_stats.first).to eq(['Max bcast/mcast queue length', 42])
end
end
end

View File

@ -1,50 +1,61 @@
require 'spec_helper'
describe OpenVPNStatusWeb::Parser::V1 do
def status; status_v1; end
def status
status_v1
end
context 'for client list' do
it 'parses common names' do
expect(status.client_list.map { |client| client[0] }).to eq(["foo", "bar"])
expect(status.client_list.map { |client| client[0] }).to eq(%w[foo bar])
end
it 'parses real addresses' do
expect(status.client_list.map { |client| client[1] }).to eq(["1.2.3.4:1234", "1.2.3.5:1235"])
expect(status.client_list.map { |client| client[1] }).to eq(['1.2.3.4:1234', '1.2.3.5:1235'])
end
it 'parses received bytes' do
expect(status.client_list.map { |client| client[2] }).to eq([11811160064, 512])
expect(status.client_list.map { |client| client[2] }).to eq([11_811_160_064, 512])
end
it 'parses sent bytes' do
expect(status.client_list.map { |client| client[3] }).to eq([4194304, 2048])
expect(status.client_list.map { |client| client[3] }).to eq([4_194_304, 2048])
end
it 'parses connected since date' do
expect(status.client_list.map { |client| client[4] }).to eq([DateTime.new(2012,1,1,23,42,0), DateTime.new(2012,1,1,23,42,0)])
expect(status.client_list.map { |client| client[4] }).to eq(
[
DateTime.new(2012, 1, 1, 23, 42, 0), DateTime.new(2012, 1, 1, 23, 42, 0)
]
)
end
end
context 'for routing table' do
it 'parses virtual addresses' do
expect(status.routing_table.map { |route| route[0] }).to eq(["192.168.0.0/24", "192.168.66.2", "192.168.66.3", "2001:db8:0:0::1000"])
expect(status.routing_table.map { |route| route[0] }).to eq(['192.168.0.0/24', '192.168.66.2', '192.168.66.3', '2001:db8:0:0::1000'])
end
it 'parses common names' do
expect(status.routing_table.map { |route| route[1] }).to eq(["foo", "bar", "foo", "bar"])
expect(status.routing_table.map { |route| route[1] }).to eq(%w[foo bar foo bar])
end
it 'parses real addresses' do
expect(status.routing_table.map { |route| route[2] }).to eq(["1.2.3.4:1234", "1.2.3.5:1235", "1.2.3.4:1234", "1.2.3.5:1235"])
expect(status.routing_table.map { |route| route[2] }).to eq(['1.2.3.4:1234', '1.2.3.5:1235', '1.2.3.4:1234', '1.2.3.5:1235'])
end
it 'parses last ref date' do
expect(status.routing_table.map { |route| route[3] }).to eq([DateTime.new(2012,1,1,23,42,0), DateTime.new(2012,1,1,23,42,0), DateTime.new(2012,1,1,23,42,0), DateTime.new(2012,1,1,23,42,0)])
expect(status.routing_table.map { |route| route[3] }).to eq(
[
DateTime.new(2012, 1, 1, 23, 42, 0), DateTime.new(2012, 1, 1, 23, 42, 0),
DateTime.new(2012, 1, 1, 23, 42, 0), DateTime.new(2012, 1, 1, 23, 42, 0)
]
)
end
end
it 'parses global stats' do
expect(status.global_stats.size).to eq(1)
expect(status.global_stats.first).to eq(["Max bcast/mcast queue length", 42])
expect(status.global_stats.first).to eq(['Max bcast/mcast queue length', 42])
end
end

View File

@ -6,16 +6,16 @@ require 'rack/test'
require 'openvpn-status-web'
def status_v1
text = File.open('examples/status.v1', 'rb') do |f| f.read end
text = File.open('examples/status.v1', 'rb', &:read)
OpenVPNStatusWeb::Parser::V1.new.parse_status_log text
end
def status_v2
text = File.open('examples/status.v2', 'rb') do |f| f.read end
text = File.open('examples/status.v2', 'rb', &:read)
OpenVPNStatusWeb::Parser::V2.new.parse_status_log text
end
def status_v3
text = File.open('examples/status.v3', 'rb') do |f| f.read end
text = File.open('examples/status.v3', 'rb', &:read)
OpenVPNStatusWeb::Parser::V3.new.parse_status_log text
end