Sha256: 07c1b1ef0c8d3d0e902e32a11422acbb239aff7833e039c9457e618e8f18a67b

Contents?: true

Size: 838 Bytes

Versions: 23

Compression:

Stored size: 838 Bytes

Contents

require 'rspec'
require 'cucumber/messages/message/dummy_messages'

describe Cucumber::Messages::Message::Deserialization do
  describe '#from_json' do
    subject { Cucumber::Messages::Message.from_json(json_document) }

    let(:json_document) { '' }

    context 'with a valid JSON document' do
      let(:json_document) { '{"simpleMessage":{"isString":"answer"}}' }

      it 'deserialize the message using #from_h' do
        allow(Cucumber::Messages::Message).to receive(:from_h)

        subject

        expect(Cucumber::Messages::Message)
          .to have_received(:from_h)
          .with({ simpleMessage: { isString: "answer" } })
      end
    end

    context 'with an invalid JSON document' do
      let(:json_document) { '{foo: bar}' }

      it { expect { subject }.to raise_error(JSON::ParserError) }
    end
  end
end

Version data entries

23 entries across 23 versions & 4 rubygems

Version Path
honeybadger-5.4.0 vendor/bundle/ruby/3.2.0/gems/cucumber-messages-22.0.0/spec/cucumber/messages/message/deserialization_spec.rb
cucumber-messages-23.0.0 spec/cucumber/messages/message/deserialization_spec.rb
honeybadger-5.3.0 vendor/bundle/ruby/3.2.0/gems/cucumber-messages-21.0.1/spec/cucumber/messages/message/deserialization_spec.rb
rubypitaya-3.12.5 ./lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/cucumber-messages-18.0.0/spec/cucumber/messages/message/deserialization_spec.rb
cucumber-messages-22.0.0 spec/cucumber/messages/message/deserialization_spec.rb
rubypitaya-3.12.4 ./lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/cucumber-messages-18.0.0/spec/cucumber/messages/message/deserialization_spec.rb
rubypitaya-3.12.3 ./lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/cucumber-messages-18.0.0/spec/cucumber/messages/message/deserialization_spec.rb
rubypitaya-3.12.2 ./lib/rubypitaya/app-template/vendor/bundle/ruby/3.1.0/gems/cucumber-messages-18.0.0/spec/cucumber/messages/message/deserialization_spec.rb
cucumber-messages-21.0.1 spec/cucumber/messages/message/deserialization_spec.rb
cucumber-messages-21.0.0 spec/cucumber/messages/message/deserialization_spec.rb
cucumber-messages-20.0.0 spec/cucumber/messages/message/deserialization_spec.rb
cucumber-messages-19.1.4 spec/cucumber/messages/message/deserialization_spec.rb
cucumber-messages-19.1.3 spec/cucumber/messages/message/deserialization_spec.rb
cucumber-messages-19.1.2 spec/cucumber/messages/message/deserialization_spec.rb
cucumber-messages-19.1.1 spec/cucumber/messages/message/deserialization_spec.rb
cucumber-messages-19.1.0 spec/cucumber/messages/message/deserialization_spec.rb
cucumber-messages-19.0.0 spec/cucumber/messages/message/deserialization_spec.rb
cucumber-messages-18.0.0 spec/cucumber/messages/message/deserialization_spec.rb
phillipug-foodie-0.1.0 .vendor/ruby/3.0.0/gems/cucumber-messages-17.1.1/spec/cucumber/messages/message/deserialization_spec.rb
cucumber-messages-17.1.1 spec/cucumber/messages/message/deserialization_spec.rb