Dart lang: Как вы тестируете функции браузера для API загрузки и чтения файлов?

Как вы тестируете поддержку браузера с помощью Dart? Вещи, которые обычно тестируются в Javascript. К сожалению, это все еще необходимое зло.

Например, как написать тест, если браузер поддерживает «XMLHttpRequestUpload», чтобы можно было вернуться к поддерживаемым функциям?

Кроме того, как вы тестируете «FileReader», «Worker», «ArrayBuffer», «DataView», «Uint8Array», «Float32Array», ...?

В Javascript вы можете проверить, доступны ли объекты в глобальном пространстве имен (Window и т. д.).


person user1354399    schedule 19.04.2013    source источник


Ответы (1)


Чтобы проверить, есть ли у вас доступ к файловой системе, используйте FileSystem.supported< /а> поле. Аналогично для рабочих см. Worker.supported.

Поскольку Dart нацелен на IE9+, я думаю, что другие перечисленные вами API уже поддерживаются в разных браузерах.

person Greg Lowe    schedule 20.04.2013
comment
Попался. Спасибо. Это элегантно. Можно ли как-то проверить вещи, которые не имеют этого поддерживаемого значения? Я пытаюсь оценить, могу ли я использовать Dart для создания веб-приложений, которые работают в браузере, отличном от целевых браузеров Dart. - person user1354399; 20.04.2013
comment
Вы можете использовать js-взаимодействие. dartlang.org/articles/js-dart-interop Предположим, что IE8, на который вы ориентируетесь, заставить код Dart работать в IE8, скорее всего, будет болезненным опытом. Также стоит отметить, что в этом году XP официально превращается в тыкву. Это означает, что помимо Китая, скорее всего, произойдет резкое сокращение числа пользователей IE8. - person Greg Lowe; 20.04.2013
comment
Ценится. Я использую Google Closure Library/Compiler. Много болезненных опытов, делающих вещи для совместимости. При этом даже Firefox не поддерживал DataView до августа прошлого года. Похоже, что сейчас Dart достаточно зрелый, чтобы рассматривать его для производства. Оценка того, что я теряю и получаю при переходе с Closure. - person user1354399; 20.04.2013