Sha256: 0dc10fd4428d451536a203e6b1f65be7486744b73a8640554a62971a4e383f47
Contents?: true
Size: 1.58 KB
Versions: 2
Compression:
Stored size: 1.58 KB
Contents
# encoding: utf-8 require "test_helper" require "sup/util" describe "Sup's String extension" do describe "#display_length" do let :data do [ ['some words', 10,], ['δΈζ', 4,], ['Γ€', 1,], ['π±', 2], #['π³οΈβπ', 2], # Emoji ZWJ sequence not yet supported (see PR #563) ] end it "calculates display length of a string" do data.each do |(str, length)| assert_equal length, str.display_length end end end describe "#slice_by_display_length(len)" do let :data do [ ['some words', 6, 'some w'], ['δΈζ', 2, 'δΈ'], ['Γ€lpha', 3, 'Γ€lp'], ['π±π±', 2, 'π±'], #['π³οΈβπ', 2, 'π³οΈβπ'], # Emoji ZWJ sequence not yet supported (see PR #563) ] end it "slices string by display length" do data.each do |(str, length, sliced)| assert_equal sliced, str.slice_by_display_length(length) end end end describe "#wrap" do let :data do [ ['some words', 6, ['some', 'words']], ['some words', 80, ['some words']], ['δΈζ', 2, ['δΈ', 'ζ']], ['δΈζ', 5, ['δΈζ']], ['Γ€lpha', 3, ['Γ€lp', 'ha']], ['π±π±', 2, ['π±', 'π±']], #['π³οΈβππ³οΈβπ', 2, ['π³οΈβπ', 'π³οΈβπ']], # Emoji ZWJ sequence not yet supported (see PR #563) ] end it "wraps string by display length" do data.each do |(str, length, wrapped)| assert_equal wrapped, str.wrap(length) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
sup-1.2 | test/unit/util/test_string.rb |
sup-1.1 | test/unit/util/test_string.rb |