D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
opt
/
td-agent
/
embedded
/
lib
/
ruby
/
gems
/
2.1.0
/
gems
/
td-0.15.2
/
spec
/
td
/
Filename :
helpers_spec.rb
back
Copy
require 'spec_helper' require 'td/helpers' require 'open3' module TreasureData describe 'format_with_delimiter' do it "delimits the number with ',' by default" do expect(Helpers.format_with_delimiter(0)).to eq("0") expect(Helpers.format_with_delimiter(10)).to eq("10") expect(Helpers.format_with_delimiter(100)).to eq("100") expect(Helpers.format_with_delimiter(1000)).to eq("1,000") expect(Helpers.format_with_delimiter(10000)).to eq("10,000") expect(Helpers.format_with_delimiter(100000)).to eq("100,000") expect(Helpers.format_with_delimiter(1000000)).to eq("1,000,000") end end describe 'on_64bit_os?' do def with_env(name, var) backup, ENV[name] = ENV[name], var begin yield ensure ENV[name] = backup end end it 'returns true for windows when PROCESSOR_ARCHITECTURE=amd64' do allow(Helpers).to receive(:on_windows?) {true} with_env('PROCESSOR_ARCHITECTURE', 'amd64') { expect(Helpers.on_64bit_os?).to be(true) } end it 'returns true for windows when PROCESSOR_ARCHITECTURE=x86 and PROCESSOR_ARCHITEW6432 is set' do allow(Helpers).to receive(:on_windows?) {true} with_env('PROCESSOR_ARCHITECTURE', 'x86') { with_env('PROCESSOR_ARCHITEW6432', '') { expect(Helpers.on_64bit_os?).to be(true) } } end it 'returns false for windows when PROCESSOR_ARCHITECTURE=x86 and PROCESSOR_ARCHITEW6432 is not set' do allow(Helpers).to receive(:on_windows?) {true} with_env('PROCESSOR_ARCHITECTURE', 'x86') { with_env('PROCESSOR_ARCHITEW6432', nil) { expect(Helpers.on_64bit_os?).to be(false) } } end it 'returns true for non-windows when uname -m prints x86_64' do allow(Helpers).to receive(:on_windows?) {false} allow(Open3).to receive(:capture2).with('uname', '-m') {['x86_64', double(:success? => true)]} expect(Helpers.on_64bit_os?).to be(true) expect(Open3).to have_received(:capture2).with('uname', '-m') end it 'returns false for non-windows when uname -m prints i686' do allow(Helpers).to receive(:on_windows?) {false} allow(Open3).to receive(:capture2).with('uname', '-m') {['i686', double(:success? => true)]} expect(Helpers.on_64bit_os?).to be(false) expect(Open3).to have_received(:capture2).with('uname', '-m') end end end