about summary refs log tree commit diff
path: root/spec/lib/atom_serializer_spec.rb
blob: 0009e41a9488a3ad908d7caca824d67145c8b042 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
require 'rails_helper'

RSpec.describe AtomSerializer do
  describe '#author' do
    it 'returns dumpable XML with emojis' do
      account = Fabricate(:account, display_name: '💩')
      xml     = AtomSerializer.render(AtomSerializer.new.author(account))

      expect(xml).to be_a String
      expect(xml).to match(/<poco:displayName>💩<\/poco:displayName>/)
    end

    it 'returns dumpable XML with invalid characters like \b and \v' do
      account = Fabricate(:account, display_name: "im l33t\b haxo\b\vr")
      xml     = AtomSerializer.render(AtomSerializer.new.author(account))

      expect(xml).to be_a String
      expect(xml).to match(/<poco:displayName>im l33t haxor<\/poco:displayName>/)
    end
  end
end