I believe you still need to defined expected, also I think you have `actual` and `@second` the wrong way around in your description.
Jon Rowe --------------------------- [email protected] jonrowe.co.uk On 14 May 2019 at 09:29, Arup Rakshit wrote: > Hello Jon, > > Thanks for your reply. > > I modified it as: > > RSpec::Matchers.define :have_constant do |const| > match do |owner| > @actual = owner.const_defined?(const) && owner.const_get(const) > @expected = @second > owner.const_defined?(const) && owner.const_get(const) == @second > end > > chain :with_value do |second| > @second = second > end > > diffable > > failure_message do |actual| > "expected that #{const} would be defined with #{actual} but got #{@second}" > end > end > > > Now the error message is close, but not quiet correct. > > Failures: > > 1) FeatureService constants should have constant > :TABLE_OF_PREVIOUS_INSPECTIONS with value "3oelqiFW1" > Failure/Error: it { is_expected.to (http://expected.to) > have_constant(:TABLE_OF_PREVIOUS_INSPECTIONS).with_value('3oelqiFW1') } > > expected that TABLE_OF_PREVIOUS_INSPECTIONS would be defined with 3oelqiFW > but got 3oelqiFW1 > Diff: > @@ -1,2 +1,2 @@ > -:TABLE_OF_PREVIOUS_INSPECTIONS > +"3oelqiFW" > > > I want it to be like: > > Failures: > > 1) FeatureService constants should have constant > :TABLE_OF_PREVIOUS_INSPECTIONS with value "3oelqiFW1" > Failure/Error: it { is_expected.to (http://expected.to) > have_constant(:TABLE_OF_PREVIOUS_INSPECTIONS).with_value('3oelqiFW1') } > > expected that TABLE_OF_PREVIOUS_INSPECTIONS would be defined with 3oelqiFW > but got 3oelqiFW1 > Diff: > @@ -1,2 +1,2 @@ > -"3oelqiFW1" > +"3oelqiFW" > > > What needs to be tweaked ? > > > On Monday, May 13, 2019 at 2:39:27 PM UTC+5:30, Jon Rowe wrote: -- You received this message because you are subscribed to the Google Groups "rspec" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/rspec/dejalu-217-ff2bcffa-681d-41db-b6f5-bd148fbbe69c%40jonrowe.co.uk. For more options, visit https://groups.google.com/d/optout.
