Rspec-core: 'рд▓реЗрдЯ' рдмреНрд▓реЙрдХ рдХреЗ рдЕрдВрджрд░ рдХрд▓реНрдкрдирд╛ рдХрд╛ рдирд╛рдо рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 28 рдордИ 2020  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: rspec/rspec-core

рд╣рд╛рдп рд╣рдореЗрд╢рд╛ рдХреА рддрд░рд╣ рд╢рд╛рдирджрд╛рд░ рдордгрд┐ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж :)

рдореИрдВ рд▓реЗрдЯ рдмреНрд▓реЙрдХ рдХреЗ рдЕрдВрджрд░ рд╕реНрдкреЗрдХ рдХрд╛ рдирд╛рдо (= рд╕рдВрджрд░реНрдн рдирд╛рдо?) рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рдЖрдИрдбреАрдХреЗ рдЕрдЧрд░ рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдпрд╛ рдирд╣реАрдВ рддреЛ рдорджрдж рдХрд░реЗрдЧрд╛ рдпрджрд┐ рдЖрдк ЁЯЩМ рдзрдиреНрдпрд╡рд╛рдж рдХрд╛ рдЬрд╡рд╛рдм рджреЗ рд╕рдХрддреЗ рд╣реИрдВред

RSpec.describe Foo do
  describe 'bar' do
    context 'when something is happening' do
      let(:spec_name) { # would be awesome if I can get "Foo bar when something is happening returns true" here }

      it 'returns true' do
      end
    end
  end
end

рд╕рднреА 5 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╣рд╛рдп @рдЯреЗрдХ
рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдпрд╣ рд╕рдВрднрд╡ рд╣реИ:

      let(:spec_name) do |example|
        example.metadata[:full_description] # => "Foo bar when something is happening returns true"

      end

рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЖрдк рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рд╣реА рдРрд╕реА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП it рд▓рд┐рдП рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдФрд░ рднреА рдмрд╣реБрдд рд╕реА рдЪреАрдЬреЗрдВ рд╣реИрдВ рдЬреЛ рд╡рд╣рд╛рдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВред

рдЖрдкрдХрд╛ рд╣рдореЗрд╢рд╛рдБ рд╕реНрд╡рд╛рдЧрдд рд╣реИ!

рдЖрд╣ рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж! рдореИрдВ

@рдкреАрд░рдЬ

рдХреНрдпрд╛ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ rspec-core рдХреЗ рдХрд┐рд╕ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рд╢рд╛рдорд┐рд▓ рд╣реИ? :рдЖрдВрдЦреЗрдВ:

рдореЗрд░реЗ рдЖрд░рдПрд╕рдкреАрдИрд╕реА-рдХреЛрд░ 3.9.2 рдРрдк рдореЗрдВ, рдореБрдЭреЗ рдирд┐рдореНрди рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ

Failure/Error: example.metadata[:full_description]

NoMethodError:
  undefined method `metadata' for nil:NilClass

@take рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдереЛрдбрд╝рд╛ рдФрд░ рд╕рдВрджрд░реНрдн рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдХрд╛ рдХреЛрдб рдХреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ?
рдХреБрдВрдЬреА do |example| рдореЗрдВ let(:spec_name) do |example| ред

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЧрдИ рд╣реИ, рдорджрдж рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж! рдореИрдВ

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕