#932. HttpRequestUpload tests fixed
diff --git a/LibTest/html/HttpRequestUpload/onAbort_A01_t01.dart b/LibTest/html/HttpRequestUpload/onAbort_A01_t01.dart
index 5ef971d..eafdda9 100644
--- a/LibTest/html/HttpRequestUpload/onAbort_A01_t01.dart
+++ b/LibTest/html/HttpRequestUpload/onAbort_A01_t01.dart
@@ -6,18 +6,37 @@
/// Stream of abort events handled by this HttpRequestEventTarget.
/// @description Checks the state an event is fired when the request is aborted.
/// @Issue https://github.com/dart-lang/co19/issues/932
-
import "dart:html";
import "../../../Utils/expect.dart";
+int get crossOriginPort {
+ var searchUrl = window.location.search!;
+ var crossOriginStr = 'crossOriginPort=';
+ var index = searchUrl.indexOf(crossOriginStr);
+ var nextArg = searchUrl.indexOf('&', index);
+ return int.parse(searchUrl.substring(index + crossOriginStr.length,
+ nextArg == -1 ? searchUrl.length : nextArg));
+}
+
+var port = crossOriginPort;
+var host = '${window.location.protocol}//${window.location.hostname}:$port';
+
main() {
- var request = new HttpRequest();
- HttpRequestUpload upload = request.upload;
- request.open('GET', "test.dart");
- upload.onAbort.listen((event) {
+ FormData data = FormData();
+ List<String> file_contents = ["Lily was here"];
+ Blob blob = new Blob(file_contents, 'text/plain', 'native');
+ data.appendBlob("uploadData", blob);
+
+ var url = '$host/upload';
+ final r = new HttpRequest();
+ r.open("POST", url);
+ HttpRequestUpload upload = r.upload;
+ asyncStart();
+ upload.onAbort.listen((ProgressEvent event) {
+ Expect.isNotNull(event.loaded);
+ Expect.isTrue(event.loaded! == 0);
asyncEnd();
});
- asyncStart();
- request.send();
- request.abort();
+ r.send(data);
+ r.abort();
}
diff --git a/LibTest/html/HttpRequestUpload/onError_A01_t01.dart b/LibTest/html/HttpRequestUpload/onError_A01_t01.dart
new file mode 100644
index 0000000..f8825c1
--- /dev/null
+++ b/LibTest/html/HttpRequestUpload/onError_A01_t01.dart
@@ -0,0 +1,44 @@
+// Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+/// @assertion Stream<ProgressEvent> get onError
+/// Stream of error events handled by this HttpRequestEventTarget.
+/// @description Checks that an error events issued when attemt to FET unexistent
+/// resourse is made and error 404 returned.
+/// @Issue #16757
+/// @Issue https://github.com/dart-lang/co19/issues/932
+
+import "dart:html";
+import "../../../Utils/expect.dart";
+
+int get crossOriginPort {
+ var searchUrl = window.location.search!;
+ var crossOriginStr = 'crossOriginPort=';
+ var index = searchUrl.indexOf(crossOriginStr);
+ var nextArg = searchUrl.indexOf('&', index);
+ return int.parse(searchUrl.substring(index + crossOriginStr.length,
+ nextArg == -1 ? searchUrl.length : nextArg));
+}
+
+var port = crossOriginPort;
+var host = '${window.location.protocol}//${window.location.hostname}:$port';
+
+main() {
+ FormData data = FormData();
+ List<String> file_contents = ["Lily was here"];
+ Blob blob = new Blob(file_contents, 'text/plain', 'native');
+ data.appendBlob("uploadData", blob);
+
+ var url = '$host/IntentionallyMissingFile';
+ final r = new HttpRequest();
+ r.open("POST", url);
+ HttpRequestUpload upload = r.upload;
+ asyncStart();
+ upload.onError.listen((ProgressEvent event) {
+ Expect.isNotNull(event.loaded);
+ Expect.isTrue(event.loaded! == 0);
+ asyncEnd();
+ });
+ r.send(data);
+}
diff --git a/LibTest/html/HttpRequestUpload/onError_A01_t02.dart b/LibTest/html/HttpRequestUpload/onError_A01_t02.dart
deleted file mode 100644
index aa12a03..0000000
--- a/LibTest/html/HttpRequestUpload/onError_A01_t02.dart
+++ /dev/null
@@ -1,24 +0,0 @@
-// Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
-// for details. All rights reserved. Use of this source code is governed by a
-// BSD-style license that can be found in the LICENSE file.
-
-/// @assertion Stream<ProgressEvent> get onError
-/// Stream of error events handled by this HttpRequestEventTarget.
-/// @description Checks that an error events issued when attemt to FET unexistent
-/// resourse is made and error 404 returned.
-/// @Issue #16757
-/// @Issue https://github.com/dart-lang/co19/issues/932
-
-import "dart:html";
-import "../../../Utils/expect.dart";
-
-main() {
- HttpRequest request = new HttpRequest();
- HttpRequestUpload upload = request.upload;
- request.open('GET', "IntentionallyMissingFile");
- asyncStart();
- upload.onError.listen((event) {
- asyncEnd();
- });
- request.send();
-}
diff --git a/LibTest/html/HttpRequestUpload/onLoadEnd_A01_t01.dart b/LibTest/html/HttpRequestUpload/onLoadEnd_A01_t01.dart
index db926c4..190f171 100644
--- a/LibTest/html/HttpRequestUpload/onLoadEnd_A01_t01.dart
+++ b/LibTest/html/HttpRequestUpload/onLoadEnd_A01_t01.dart
@@ -5,21 +5,39 @@
/// @assertion Stream<ProgressEvent> get onLoadEnd
/// Stream of loadend events handled by this HttpRequestEventTarget.
/// @description Checks that only single event is fired.
+/// @author sgrekhov@unipro.ru
/// @Issue https://github.com/dart-lang/co19/issues/932
import "dart:html";
import "../../../Utils/expect.dart";
+int get crossOriginPort {
+ var searchUrl = window.location.search!;
+ var crossOriginStr = 'crossOriginPort=';
+ var index = searchUrl.indexOf(crossOriginStr);
+ var nextArg = searchUrl.indexOf('&', index);
+ return int.parse(searchUrl.substring(index + crossOriginStr.length,
+ nextArg == -1 ? searchUrl.length : nextArg));
+}
+
+var port = crossOriginPort;
+var host = '${window.location.protocol}//${window.location.hostname}:$port';
+
main() {
- HttpRequest request = new HttpRequest();
- HttpRequestUpload upload = request.upload;
- bool first = true;
- request.open('GET', "test.dart");
+ FormData data = FormData();
+ List<String> file_contents = ["Lily was here"];
+ Blob blob = new Blob(file_contents, 'text/plain', 'native');
+ data.appendBlob("uploadData", blob);
+
+ var url = '$host/upload';
+ final r = new HttpRequest();
+ r.open("POST", url);
+ HttpRequestUpload upload = r.upload;
asyncStart();
- upload.onLoadEnd.listen((event) {
- Expect.isTrue(first);
- first = false;
+ upload.onLoadEnd.listen((ProgressEvent event) {
+ Expect.isNotNull(event.loaded);
+ Expect.isTrue(event.loaded! > 0);
asyncEnd();
});
- request.send();
+ r.send(data);
}
diff --git a/LibTest/html/HttpRequestUpload/onLoadStart_A01_t01.dart b/LibTest/html/HttpRequestUpload/onLoadStart_A01_t01.dart
index f0e6089..96e4449 100644
--- a/LibTest/html/HttpRequestUpload/onLoadStart_A01_t01.dart
+++ b/LibTest/html/HttpRequestUpload/onLoadStart_A01_t01.dart
@@ -5,21 +5,39 @@
/// @assertion Stream<ProgressEvent> get onLoadStart
/// Stream of loadstart events handled by this HttpRequestEventTarget.
/// @description Checks that only single event is fired.
+/// @author sgrekhov@unipro.ru
/// @Issue https://github.com/dart-lang/co19/issues/932
import "dart:html";
import "../../../Utils/expect.dart";
+int get crossOriginPort {
+ var searchUrl = window.location.search!;
+ var crossOriginStr = 'crossOriginPort=';
+ var index = searchUrl.indexOf(crossOriginStr);
+ var nextArg = searchUrl.indexOf('&', index);
+ return int.parse(searchUrl.substring(index + crossOriginStr.length,
+ nextArg == -1 ? searchUrl.length : nextArg));
+}
+
+var port = crossOriginPort;
+var host = '${window.location.protocol}//${window.location.hostname}:$port';
+
main() {
- HttpRequest request = new HttpRequest();
- HttpRequestUpload upload = request.upload;
- bool first = true;
- request.open('GET', "test.dart");
+ FormData data = FormData();
+ List<String> file_contents = ["Lily was here"];
+ Blob blob = new Blob(file_contents, 'text/plain', 'native');
+ data.appendBlob("uploadData", blob);
+
+ var url = '$host/upload';
+ final r = new HttpRequest();
+ r.open("POST", url);
+ HttpRequestUpload upload = r.upload;
asyncStart();
- upload.onLoadStart.listen((event) {
- Expect.isTrue(first);
- first = false;
+ upload.onLoadStart.listen((ProgressEvent event) {
+ Expect.isNotNull(event.loaded);
+ Expect.isTrue(event.loaded! == 0);
asyncEnd();
});
- request.send();
+ r.send(data);
}
diff --git a/LibTest/html/HttpRequestUpload/onLoad_A01_t01.dart b/LibTest/html/HttpRequestUpload/onLoad_A01_t01.dart
index ec88c3b..61f1571 100644
--- a/LibTest/html/HttpRequestUpload/onLoad_A01_t01.dart
+++ b/LibTest/html/HttpRequestUpload/onLoad_A01_t01.dart
@@ -5,6 +5,7 @@
/// @assertion final Stream<ProgressEvent> onLoad
/// Stream of load events handled by this HttpRequestEventTarget.
/// @description Checks the state of request at various moments of time.
+/// @author sgrekhov@unipro.ru
/// @Issue https://github.com/dart-lang/co19/issues/932
import "dart:html";
@@ -12,7 +13,6 @@
int get crossOriginPort {
var searchUrl = window.location.search!;
- print("SearchURL=" + searchUrl);
var crossOriginStr = 'crossOriginPort=';
var index = searchUrl.indexOf(crossOriginStr);
var nextArg = searchUrl.indexOf('&', index);
@@ -24,34 +24,20 @@
var host = '${window.location.protocol}//${window.location.hostname}:$port';
main() {
- HttpRequest request = new HttpRequest();
- var url = '$host/root_dart/tests/co19/src/LibTest/html/xhr_cross_origin_data.txt';
- request.open('GET', url);
- Expect.equals(HttpRequest.OPENED, request.readyState, "after open");
- print("Log 1");
- HttpRequestUpload upload = request.upload;
+ FormData data = FormData();
+ List<String> file_contents = ["Lily was here"];
+ Blob blob = new Blob(file_contents, 'text/plain', 'native');
+ data.appendBlob("uploadData", blob);
+
+ var url = '$host/upload';
+ final r = new HttpRequest();
+ r.open("POST", url);
+ HttpRequestUpload upload = r.upload;
asyncStart();
- print("Log 2");
- upload.onLoad.listen((event) {
- print("Log 5");
- switch (request.readyState) {
- case HttpRequest.DONE:
- asyncEnd();
- break;
- case HttpRequest.HEADERS_RECEIVED:
- break;
- case HttpRequest.LOADING:
- break;
- default:
- Expect.fail(
- "request.onLoad.listen: unexpected readyState:${request.readyState}");
- }
- }, onError: (Object error) {
- print("Log 6");
- Expect.fail("request.onLoad.listen:onError($error)");
+ upload.onLoad.listen((ProgressEvent event) {
+ Expect.isNotNull(event.loaded);
+ Expect.isTrue(event.loaded! > 0);
+ asyncEnd();
});
- print("Log 3");
- request.send();
- print("Log 4");
- Expect.equals(HttpRequest.OPENED, request.readyState, "after send");
+ r.send(data);
}