require_relative 'shared/chars' require_relative 'shared/grapheme_clusters' require_relative 'shared/each_char_without_block' describe "String#each_grapheme_cluster" do it_behaves_like :string_chars, :each_grapheme_cluster it_behaves_like :string_grapheme_clusters, :each_grapheme_cluster it_behaves_like :string_each_char_without_block, :each_grapheme_cluster ruby_version_is '3.0' do it "yields String instances for subclasses" do a = [] StringSpecs::MyString.new("abc").each_grapheme_cluster { |s| a << s.class } a.should == [String, String, String] end end end