Sha256: 6ff9b53a26940fa06a08fa935bffa04d80a54f0729f3ef727ed9dd637437a297
Contents?: true
Size: 838 Bytes
Versions: 3
Compression:
Stored size: 838 Bytes
Contents
require 'fileutils' require 'jekyll' require 'key_value_parser' require 'shellwords' require_relative '../lib/jekyll_plugin_template' RSpec.describe(KeyValueParser) do it 'parses arguments' do argv = 'param0 param1=value1 param2=\'value2\' param3="value3\'s tricky" remainder of line'.shellsplit parser = KeyValueParser.new options = parser.parse(argv) # puts options.map { |k, v| "#{k} = #{v}" }.join("\n") expect(options[:param0]).to eq(true) expect(options[:param1]).to eq('value1') expect(options[:param2]).to eq('value2') expect(options[:param3]).to eq("value3's tricky") expect(options[:unknown]).to be_nil %i[param0 param1 param2 param3].each { |key| options.delete key } remainder_of_line = options.keys.join(' ') expect(remainder_of_line).to eq('remainder of line') end end
Version data entries
3 entries across 3 versions & 1 rubygems