Skip to content

Consider a Module to be displayed similar to a Class, as a "primitive" #255

@phorsuedzie

Description

@phorsuedzie

SuperDiff version: 0.12.1 (newest release available)

An inspected Module is not displayed with its name, but with its instance variables etc. (by ...::InstanceTreeBuilders::DefaultObject).

This is different from a Class, which is a SuperDiff.primitive?, and therefore displayed by ...::InstanceTreeBuilders::Primitive, with (only) its name.

The ugly output can be seen at an RSpec example description (rspec --format doc ...) that is auto-generated from a be_a matcher:

it { is_expected.to(be_a(TaskJob)) }

is shown as

is expected to be a kind of #<Module:0x00000001183d33f8 @_dependencies=[], @_included_block=#<Proc:0x000000011941db78>>

If (only) either SuperDiff.primitive? or Primitive.applies_to? is patched to (additionally) return true for a Module === value, then the output looks better:

is expected to be a kind of TaskJob

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions