mirror of
https://github.com/fluent/fluentd-ui.git
synced 2025-08-11 16:57:11 +02:00
Add spec for lib/
This commit is contained in:
parent
ae6423b2f4
commit
8cfc2a3d43
@ -1,34 +0,0 @@
|
|||||||
require "enumerator"
|
|
||||||
require 'spec_helper'
|
|
||||||
|
|
||||||
describe FileReverseReader do
|
|
||||||
describe "#each_line" do
|
|
||||||
let(:instance) { FileReverseReader.new(io, step) }
|
|
||||||
let(:io) { File.open(logfile) }
|
|
||||||
|
|
||||||
subject { instance.enum_for(:each_line) }
|
|
||||||
|
|
||||||
context "read at once" do
|
|
||||||
let(:logfile) { File.expand_path("./spec/support/fixtures/error0.log", Rails.root) }
|
|
||||||
|
|
||||||
context "small file (read at once)" do
|
|
||||||
let(:step) { File.size(logfile) }
|
|
||||||
|
|
||||||
it { subject.count.should == File.open(logfile).each_line.count }
|
|
||||||
it "reverse order" do
|
|
||||||
subject.to_a.should == File.open(logfile).each_line.to_a.map(&:strip).reverse
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
context "large file" do
|
|
||||||
let(:step) { 2 }
|
|
||||||
|
|
||||||
it { subject.count.should == File.open(logfile).each_line.count }
|
|
||||||
it "reverse order" do
|
|
||||||
subject.to_a.should == File.open(logfile).each_line.to_a.map(&:strip).reverse
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
73
spec/lib/file_reverse_reader_spec.rb
Normal file
73
spec/lib/file_reverse_reader_spec.rb
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
require "enumerator"
|
||||||
|
require 'spec_helper'
|
||||||
|
|
||||||
|
describe FileReverseReader do
|
||||||
|
let(:instance) { FileReverseReader.new(io) }
|
||||||
|
let(:io) { File.open(logfile) }
|
||||||
|
|
||||||
|
describe "#each_line" do
|
||||||
|
let(:instance) { FileReverseReader.new(io, step) }
|
||||||
|
subject { instance.enum_for(:each_line) }
|
||||||
|
let(:logfile) { File.expand_path("./spec/support/fixtures/error0.log", Rails.root) }
|
||||||
|
|
||||||
|
context "read at once" do
|
||||||
|
|
||||||
|
context "small file (read at once)" do
|
||||||
|
let(:step) { File.size(logfile) }
|
||||||
|
|
||||||
|
it { subject.count.should == File.open(logfile).each_line.count }
|
||||||
|
it "reverse order" do
|
||||||
|
subject.to_a.should == File.open(logfile).each_line.to_a.map(&:strip).reverse
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
context "large file" do
|
||||||
|
let(:step) { 2 }
|
||||||
|
|
||||||
|
it { subject.count.should == File.open(logfile).each_line.count }
|
||||||
|
it "reverse order" do
|
||||||
|
subject.to_a.should == File.open(logfile).each_line.to_a.map(&:strip).reverse
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
describe "#binary_file?" do
|
||||||
|
let(:logfile) { File.expand_path("./tmp/log.log", Rails.root) }
|
||||||
|
before { File.open(logfile, "wb"){|f| f.write content} }
|
||||||
|
subject { instance.binary_file? }
|
||||||
|
|
||||||
|
context "contain ascii only" do
|
||||||
|
let(:content) { "ABCDE" }
|
||||||
|
it { should be_false }
|
||||||
|
end
|
||||||
|
|
||||||
|
context "contain non-ascii" do
|
||||||
|
let(:content) { "\x89NG" }
|
||||||
|
it { should be_true }
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
describe "#tail" do
|
||||||
|
let(:logfile) { File.expand_path("./tmp/log.log", Rails.root) }
|
||||||
|
let(:log_lines) { 100 }
|
||||||
|
before { File.open(logfile, "w"){|f| f.write("foo\n" * log_lines) } }
|
||||||
|
subject { instance.tail(count) }
|
||||||
|
|
||||||
|
context "2" do
|
||||||
|
let(:count) { 2 }
|
||||||
|
it { subject.to_a.size.should == count }
|
||||||
|
end
|
||||||
|
|
||||||
|
context "50" do
|
||||||
|
let(:count) { 50 }
|
||||||
|
it { subject.to_a.size.should == count }
|
||||||
|
end
|
||||||
|
|
||||||
|
context "over log lines" do
|
||||||
|
let(:count) { log_lines + 100 }
|
||||||
|
it { subject.to_a.size.should == log_lines }
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
@ -16,4 +16,20 @@ describe FluentdUI do
|
|||||||
it { should be_truthy }
|
it { should be_truthy }
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
describe ".fluentd_version" do
|
||||||
|
before { Fluentd.stub(:instance).and_return(target) }
|
||||||
|
subject { FluentdUI.fluentd_version }
|
||||||
|
|
||||||
|
context "not setup yet" do
|
||||||
|
let(:target) { nil }
|
||||||
|
it { should be_nil }
|
||||||
|
end
|
||||||
|
|
||||||
|
context "did setup" do
|
||||||
|
let(:target) { build(:fluentd) }
|
||||||
|
let(:version) { "1.1.1" }
|
||||||
|
it { should == target.agent.version }
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
Loading…
Reference in New Issue
Block a user