Sha256: be8b5c689a636c97478a23775ffbabe2e812f764d63d9a2b25eede579beec55e

Contents?: true

Size: 1.09 KB

Versions: 11

Compression:

Stored size: 1.09 KB

Contents

require 'spec_helper'
require 'vx/common/spawn'
require 'fileutils'

describe Vx::Router::ScriptBuilder::Prepare do
  let(:path)  { '/tmp/.test' }
  let(:app)   { ->(_) { _ } }
  let(:build) { create :build }
  let(:env)   { OpenStruct.new build: build, init: [] }
  let(:mid)   { described_class.new app }

  subject { mid.call env }

  before do
    FileUtils.rm_rf path
    FileUtils.mkdir_p path
  end

  after { FileUtils.rm_rf path }

  it { should eq env }
  its(:init) { should_not be_empty }

  context "run compiled script" do
    include Vx::Common::Spawn

    let(:script) { "set -e\nset -x\n" + env.init.join("\n") }
    before { mid.call env }

    it "should be success" do

      code = spawn script, chdir: path do |out|
        puts " ===> #{out}"
      end

      expect(code).to eq 0
      expect(File).to be_readable("#{path}/data/evrone/test-repo/git_ssh")
      expect(File).to be_readable("#{path}/data/evrone/test-repo/key")
      expect(File).to be_directory("#{path}/code/evrone/test-repo/.git")
      expect(File).to be_readable("#{path}/code/evrone/test-repo/Rakefile")
    end

  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
vx-router-0.2.0.pre38 spec/lib/script_builder/prepare_spec.rb
vx-router-0.2.0.pre37 spec/lib/script_builder/prepare_spec.rb
vx-router-0.2.0.pre36 spec/lib/script_builder/prepare_spec.rb
vx-router-0.2.0.pre35 spec/lib/script_builder/prepare_spec.rb
vx-router-0.2.0.pre34 spec/lib/script_builder/prepare_spec.rb
vx-router-0.2.0.pre33 spec/lib/script_builder/prepare_spec.rb
vx-router-0.2.0.pre32 spec/lib/script_builder/prepare_spec.rb
vx-router-0.2.0.pre31 spec/lib/script_builder/prepare_spec.rb
vx-router-0.2.0.pre30 spec/lib/script_builder/prepare_spec.rb
vx-router-0.2.0.pre29 spec/lib/script_builder/prepare_spec.rb
vx-router-0.2.0.pre28 spec/lib/script_builder/prepare_spec.rb