Skip to content

Unused code in instance#method_missing? #62

@leonelgalan

Description

@leonelgalan

# Called for dynamically-defined keys, and also the first key deferenced at the top-level, if load! is not used.

  # Called for dynamically-defined keys, and also the first key deferenced at the top-level, if load! is not used.
  # Otherwise, create_accessors! (called by new) will have created actual methods for each key.
  def method_missing(name, *args, &block)
    key = name.to_s
    return missing_key("Missing setting '#{key}' in #{@section}") unless has_key? key
    value = fetch(key)
    create_accessor_for(key)
    value.is_a?(Hash) ? self.class.new(value, "'#{key}' section in #{@section}") : value
  end

I notice the code after the return is not covered in tests and I wasn't able to hit it on my own. Anyway I tried, private method instance is called in the Settingslogic class, which creates accessors for fields that do exist, for keys that don't exist the method returns.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions