require 'minitest_helper' module SlideHero describe Code do it "takes an optional base path of where to look for files" do code = Code.new(:ruby, File.join(Dir.pwd,"test","fixtures")) do "testclass.rb" end code.location.must_equal(File.join(Dir.pwd,"test","fixtures","code", "testclass.rb")) end it "exposes language from initialization value" do code = Code.new(:ruby, File.join(Dir.pwd,"test","fixtures")) do "testclass.rb" end code.language.must_equal :ruby end it "exposes source from initialization value" do code = Code.new(:ruby, File.join(Dir.pwd,"test","fixtures")) do "testclass.rb" end code.source.must_include "class Working" end it "formats code properly" do code = Code.new(:ruby, File.join(Dir.pwd,"test","fixtures")) do "testclass.rb" end code.compile.strip.must_equal '
class Working
def some_method
"woot!"
end
end
'
end
it "exits if file is not found" do
lambda do
code = Code.new(:ruby) do
"dont_exists.rb"
end
end.must_raise SystemExit
end
end
end