Sha256: e4e61a8fe416163d7bb6652858299e7438588613f14db9648058f67d8e11f477

Contents?: true

Size: 1.58 KB

Versions: 1

Compression:

Stored size: 1.58 KB

Contents

require 'spec_helper'

describe Humanize::Kilo do
  let(:k) { Humanize::Kilo.new(5000) }

  context "initialize" do
    it "should convert the number to float" do
      expect(Humanize::Kilo.new('3').value).to be_an_instance_of(Float)
    end
  end

  context "#value" do
    it "should return the value" do
      expect(k.value).to eq(5000)
    end
  end

  context "#to_b" do
    it "should convert to Byte" do
      expect(k.to_b).to be_an_instance_of(Humanize::Byte)
    end
    it "should convert the value to Bytes" do
      expect(k.to_b.value).to eq(5120000)
    end
  end

  context "#to_k" do
    it "should return self" do
      expect(k.to_k).to be k
    end
  end

  context "#to_m" do
    it "should convert to Mega bytes" do
      expect(k.to_m).to be_an_instance_of(Humanize::Mega)
    end
    it "should convert the value to Mega bytes" do
      expect(k.to_m.value).to eq(4.8828125)
    end
  end

  context "#to_g" do
    it "should convert to Giga bytes" do
      expect(k.to_g).to be_an_instance_of(Humanize::Giga)
    end
    it "should convert the value to Giga bytes" do
      expect(k.to_g.value).to eq(0.00476837158203125)
    end
  end

  context "#to_s" do
    context 'without any specification' do
      it "should return a float with all digits" do
        expect(k.to_s).to eq('5000')
      end
    end

    context 'with decimal_digits specified' do
      before :each do
        @k = Humanize::Kilo.new(2147843648.2345)
      end

      it "should return a float with specified digits" do
        expect(@k.to_s(:decimal_digits => 1)).to eq('2147843648.2')
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
humanize-bytes-2.1.0 spec/humanize/kilo_spec.rb