lib/card/fetch.rb in card-1.101.4 vs lib/card/fetch.rb in card-1.101.5

- old
+ new

@@ -8,11 +8,10 @@ attr_reader :card, :mark, :opts # see arg options in all/fetch def initialize *args normalize_args args - absolutize_mark validate_opts! end def retrieve_or_new retrieve_existing @@ -29,18 +28,22 @@ end def normalize_args args @opts = args.last.is_a?(Hash) ? args.pop : {} @mark = Card.id_or_name args + normalize_mark end - def absolutize_mark - return unless mark.name? && (supercard = opts.dig(:new, :supercard)) - @mark = mark.absolute_name supercard.name + def normalize_mark + return unless mark.name? + + supercard = opts.dig :new, :supercard + @mark = mark.absolute_name supercard.name if supercard end def validate_opts! return unless opts[:new] && opts[:skip_virtual] + raise Card::Error, "fetch called with new args and skip_virtual" end def look_in_trash? @opts[:look_in_trash]