1234567891011121314151617181920212223242526272829 |
- # frozen_string_literal: true
- require 'rails_helper'
- describe HashtagNormalizer do
- subject { described_class.new }
- describe '#normalize' do
- it 'converts full-width Latin characters into basic Latin characters' do
- expect(subject.normalize('Synthwave')).to eq 'synthwave'
- end
- it 'converts half-width Katakana into Kana characters' do
- expect(subject.normalize('シーサイドライナー')).to eq 'シーサイドライナー'
- end
- it 'converts modified Latin characters into basic Latin characters' do
- expect(subject.normalize('BLÅHAJ')).to eq 'blahaj'
- end
- it 'strips out invalid characters' do
- expect(subject.normalize('#foo')).to eq 'foo'
- end
- it 'keeps valid characters' do
- expect(subject.normalize('a·b')).to eq 'a·b'
- end
- end
- end
|