Sha256: a7afbd16fa5cd65951288f4b23a5846dfde61b96c0e6ab1f927f4778f009b958

Contents?: true

Size: 1004 Bytes

Versions: 1

Compression:

Stored size: 1004 Bytes

Contents

require 'spec_helper'
require 'grit'

describe Gitscrub::Level do
  
  before(:each) do
    @file = <<-eof
difficulty 1
description "A test description"
solution do
  Grit::Repo.new("gitscrub/notadir")
end
    eof
    File.stub(:read).and_return(@file)
    @level = Gitscrub::Level.load(1)
  end

  it "should load the level" do
    File.stub(:dirname).and_return("")
    File.stub(:exists?).and_return(true)
    File.should_receive(:read).with('/../../levels/1.rb').and_return(@file)
    level = Gitscrub::Level.load(1)
    level.ldifficulty.should eql(1)
    level.ldescription.should eql("A test description")
  end

  it "should return false if the level does not exist" do
    File.stub(:exists?).and_return(false)
    Gitscrub::Level.load(1).should eql(false)
  end

  it "should solve the problem" do
    @level.solve.should eql(false)
  end

  it "should return true if the requirements have been met" do
    Grit::Repo.stub(:new).and_return(true) 
    @level.solve.should eql(true)
  end
  
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
gitscrub-0.0.3 spec/gitscrub/level_spec.rb