Sha256: 0d4c0bc434e10c8ef3577a52f82099b4c3168cca4f9a72652226c0681bfb8241

Contents?: true

Size: 1.13 KB

Versions: 2

Compression:

Stored size: 1.13 KB

Contents

require 'spec_helper'

describe Vos::Box do
  with_tmp_spec_dir

  before do
    storage = Vos::Drivers::Local.new spec_dir
    @box = Vos::Box.new storage
    @box.stub :puts
  end

  describe 'vfs integration' do
    it 'smoke test' do
      @box['/'].exist?.should be_true
    end

    it 'vfs integration' do
      @box['/'].bash("echo 'ok'").should == "ok\n"
    end
  end

  describe "shell" do
    it 'bash' do
      @box.bash("echo 'ok'").should == "ok\n"
    end

    it 'bash working dir should be /' do
      @box.bash('pwd').should == "/\n"
    end

    it 'check with regex' do
      @box.bash "echo 'ok'", /ok/
      -> {@box.bash "echo 'ok'", /no/}.should raise_error(/not match/)
    end

    it "exec" do
      @box.exec("echo 'ok'").should == [0, "ok\n", ""]
    end

    it 'home' do
      @box.home.should_not be_nil
    end

    it 'env' do
      @box.env.should == {}
      @box.env = {a: 'b'}

      @box.env c: 'd' do
        @box.env.should == {a: 'b', c: 'd'}
      end
      @box.env.should == {a: 'b'}

      @box.env(c: 'd')
      @box.env.should == {a: 'b', c: 'd'}

      @box.env('ls').should == "a=b c=d && ls"
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
vos-0.3.15 spec/box_spec.rb
vos-0.3.14 spec/box_spec.rb