mirror of
https://github.com/discourse/discourse.git
synced 2025-02-21 04:10:22 +08:00
37 lines
1.3 KiB
Ruby
37 lines
1.3 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
RSpec.describe Encodings do
|
|
def to_utf8(filename)
|
|
string = File.read("#{Rails.root}/spec/fixtures/encodings/#{filename}").chomp
|
|
Encodings.to_utf8(string)
|
|
end
|
|
|
|
describe "unicode" do
|
|
let(:expected) do
|
|
"Το σύστημα γραφής είναι ένα συμβολικό, οπτικό σύστημα καταγραφής της γλώσσας."
|
|
end
|
|
|
|
it "correctly encodes UTF-8 as UTF-8" do
|
|
expect(to_utf8("utf-8.txt")).to eq(expected)
|
|
end
|
|
|
|
it "correctly encodes UTF-8 with BOM as UTF-8" do
|
|
expect(to_utf8("utf-8-bom.txt")).to eq(expected)
|
|
end
|
|
|
|
it "correctly encodes UTF-16LE with BOM as UTF-8" do
|
|
expect(to_utf8("utf-16le.txt")).to eq(expected)
|
|
end
|
|
|
|
it "correctly encodes UTF-16BE with BOM as UTF-8" do
|
|
expect(to_utf8("utf-16be.txt")).to eq(expected)
|
|
end
|
|
end
|
|
|
|
it "correctly encodes ISO-8859-5 as UTF-8" do
|
|
expect(to_utf8("iso-8859-5.txt")).to eq(
|
|
"Письменность отличается от других существующих или возможных систем символической коммуникации тем, что всегда ассоциируется с некоторым языком и устной речью на этом языке",
|
|
)
|
|
end
|
|
end
|