lib/lapidarius/cutter.rb in lapidarius-1.1.0 vs lib/lapidarius/cutter.rb in lapidarius-1.1.1
- old
+ new
@@ -3,18 +3,21 @@
module Lapidarius
class Cutter
DEVELOPMENT = "development"
+ class GemNotCreatedError < StandardError; end
+
def initialize(gem:, cmd_klass: Command)
@gem = gem
@cmd = cmd_klass.new
end
def call(src = cmd, gem = nil)
tokens = tokenize(src)
token = tokens.shift
gem ||= Gem.factory(token)
+ fail GemNotCreatedError, "unable to create a gem from #{token}" unless gem
tokens.each do |t|
dep = Gem.factory(t)
next unless dep
gem << dep
call(cmd(dep.name), dep)