Sha256: 95514cb5e6dffd7b3b662ccf7857f685f50c9f05a437e3f335916f2a0df766d5
Contents?: true
Size: 1.46 KB
Versions: 112
Compression:
Stored size: 1.46 KB
Contents
# encoding: utf-8 require 'spec_helper' require 'tbpgr_utils' describe String do context :surround do cases = [ { case_no: 1, case_title: 'single line, no option case', input: 'hoge', expected: <<-EOS ------ |hoge| ------ EOS }, { case_no: 2, case_title: 'multi line, no option case', input: "hoge\na", expected: <<-EOS ------ |hoge| |a | ------ EOS }, { case_no: 3, case_title: 'empty, no option case', input: '', expected: <<-EOS -- -- EOS }, { case_no: 4, case_title: 'single line, both option case', input: 'hoge', options: { top_bottom: '=', side: '!' }, expected: <<-EOS ====== !hoge! ====== EOS }, ] cases.each do |c| it "|case_no=#{c[:case_no]}|case_title=#{c[:case_title]}" do begin case_before c # -- given -- # nothing # -- when -- actual = c[:options] ? c[:input].surround(c[:options]) : c[:input].surround # -- then -- expect(actual).to eq(c[:expected].chop) ensure case_after c end end def case_before(c) # implement each case before end def case_after(c) # implement each case after end end end end
Version data entries
112 entries across 112 versions & 1 rubygems