[Fetch API] Body mix-in text() should decode data as UTF-8
https://bugs.webkit.org/show_bug.cgi?id=161372

Patch by Youenn Fablet <youenn@apple.com> on 2016-08-30
Reviewed by Sam Weinig.

LayoutTests/imported/w3c:

* web-platform-tests/fetch/api/basic/text-utf8-expected.txt: Added.
* web-platform-tests/fetch/api/basic/text-utf8.html: Added.
* web-platform-tests/fetch/api/resources/status.py: Added.
(main):

Source/WebCore:

Test: imported/w3c/web-platform-tests/fetch/api/basic/text-utf8.html

UsingTextResourceDecoder to decode data as UTF-8.
Making sure to prepend BOM if there is none, as specified in https://encoding.spec.whatwg.org/#utf-8-decode.

* Modules/fetch/FetchBodyConsumer.cpp:
(WebCore::shouldPrependBOM):
(WebCore::textFromUTF8):
(WebCore::FetchBodyConsumer::resolveWithData):
(WebCore::FetchBodyConsumer::takeAsText):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@205188 268f45cc-cd09-0410-ab3c-d52691b4dbfc
6 files changed