Sha256: 1a05a7490d8619c39e5c1406d0bc384152237d101dc064109291681ae4de8383

Contents?: true

Size: 1.73 KB

Versions: 19

Compression:

Stored size: 1.73 KB

Contents

require 'pact_broker/client/cli/version_selector_options_parser'

module PactBroker
  module Client
    module CLI
      describe VersionSelectorOptionsParser do

        TEST_CASES = [
          [
            ["--pacticipant", "Foo", "--version", "1.2.3"],
            [{ pacticipant: "Foo", version: "1.2.3" } ]
          ],[
            ["-a", "Foo", "-e", "1.2.3"],
            [{ pacticipant: "Foo", version: "1.2.3" } ]
          ],[
            ["--pacticipant", "Foo"],
            [{ pacticipant: "Foo" } ]
          ],[
            ["--pacticipant", "Foo", "Bar"],
            [{ pacticipant: "Bar" } ]
          ],[
            ["--pacticipant", "Foo", "--pacticipant", "Bar", "--version", "1.2.3"],
            [{ pacticipant: "Foo" }, { pacticipant: "Bar", version: "1.2.3" } ]
          ],[
            ["--pacticipant", "Foo", "--wrong", "Bar", "--version", "1.2.3"],
            [{ pacticipant: "Foo", version: "1.2.3" } ]
          ],[
            ["--pacticipant", "the-thing", "--version", "1.2.3"],
            [{ pacticipant: "the-thing", version: "1.2.3" } ]
          ],[
            ["--version", "1.2.3"],
            [{ pacticipant: nil, version: "1.2.3" } ]
          ],[
            ["--pacticipant", "Foo", "--latest", "--pacticipant", "Bar"],
            [{ pacticipant: "Foo", latest: true }, { pacticipant: "Bar" } ]
          ],[
            ["--pacticipant", "Foo", "--latest", "prod", "--pacticipant", "Bar"],
            [{ pacticipant: "Foo", latest: true, tag: "prod"}, { pacticipant: "Bar" } ]
          ]
        ]

        TEST_CASES.each do | input, output |

          it "parses #{input.join(' ')}" do
            expect(VersionSelectorOptionsParser.call(input)).to eq output
          end

        end
      end
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
pact_broker-client-1.22.3 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.22.2 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.22.1 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.21.0 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.20.0 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.19.0 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.18.0 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.17.0 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.16.2 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.16.1 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.16.0 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.15.1 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.15.0 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.14.1 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.14.0 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.13.1 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.13.0 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.12.0 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb
pact_broker-client-1.11.0 spec/lib/pact_broker/client/cli/version_selector_options_parser_spec.rb