Skip to content

Commit

Permalink
Use table test to make diff readable
Browse files Browse the repository at this point in the history
  • Loading branch information
manicmaniac committed Feb 17, 2025
1 parent 49ccb37 commit 7464d38
Showing 1 changed file with 34 additions and 32 deletions.
66 changes: 34 additions & 32 deletions spec/periphery/json_parser_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -138,38 +138,40 @@
describe '#display_name' do
subject(:display_name) { parser.send(:display_name, kind) }

context 'with valid kinds' do
table = {
'class' => 'class',
'protocol' => 'protocol',
'struct' => 'struct',
'enum' => 'enum',
'enumelement' => 'enum case',
'typealias' => 'typealias',
'associatedtype' => 'associatedtype',
'function.constructor' => 'initializer',
'extension' => 'extension',
'extension.enum' => 'extension',
'extension.class' => 'extension',
'extension.struct' => 'extension',
'extension.protocol' => 'extension',
'function.method.class' => 'function',
'function.method.static' => 'function',
'function.method.instance' => 'function',
'function.free' => 'function',
'function.operator' => 'function',
'function.subscript' => 'function',
'var.static' => 'property',
'var.instance' => 'property',
'var.class' => 'property',
'var.global' => 'property',
'var.local' => 'property',
'var.parameter' => 'parameter',
'generic_type_param' => 'generic type parameter'
}

it 'returns human-readable name' do
expect(table.keys.map { |kind| parser.send(:display_name, kind) }).to eq table.values
table = {
'class' => 'class',
'protocol' => 'protocol',
'struct' => 'struct',
'enum' => 'enum',
'enumelement' => 'enum case',
'typealias' => 'typealias',
'associatedtype' => 'associatedtype',
'function.constructor' => 'initializer',
'extension' => 'extension',
'extension.enum' => 'extension',
'extension.class' => 'extension',
'extension.struct' => 'extension',
'extension.protocol' => 'extension',
'function.method.class' => 'function',
'function.method.static' => 'function',
'function.method.instance' => 'function',
'function.free' => 'function',
'function.operator' => 'function',
'function.subscript' => 'function',
'var.static' => 'property',
'var.instance' => 'property',
'var.class' => 'property',
'var.global' => 'property',
'var.local' => 'property',
'var.parameter' => 'parameter',
'generic_type_param' => 'generic type parameter'
}

table.each do |key, value|
context "with #{key.dump}" do
let(:kind) { key }

it { is_expected.to eq value }
end
end

Expand Down

0 comments on commit 7464d38

Please sign in to comment.