Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(279)

Unified Diff: extensions/test/data/data_sender_unittest.js

Issue 2410743002: Remove the mojo serial interfaces and related infrastructure. (Closed)
Patch Set: Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « extensions/test/data/data_receiver_unittest.js ('k') | extensions/test/data/serial_unittest.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: extensions/test/data/data_sender_unittest.js
diff --git a/extensions/test/data/data_sender_unittest.js b/extensions/test/data/data_sender_unittest.js
deleted file mode 100644
index 484ee5ef79b25d2a901c56be0c5795640e772804..0000000000000000000000000000000000000000
--- a/extensions/test/data/data_sender_unittest.js
+++ /dev/null
@@ -1,291 +0,0 @@
-// Copyright 2014 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Tests launched by extensions/renderer/api/serial/data_sender_unittest.cc
-
-var test = require('test').binding;
-var unittestBindings = require('test_environment_specific_bindings');
-
-var BUFFER_SIZE = 11;
-var FATAL_ERROR = 2;
-
-function generateData(size, pattern) {
- if (!pattern)
- pattern = 'a';
- var buffer = new ArrayBuffer(size);
- var intView = new Int8Array(buffer);
- for (var i = 0; i < size; i++) {
- intView[i] = pattern.charCodeAt(i % pattern.length);
- }
- return buffer;
-}
-
-// Returns a promise to a newly created DataSender.
-function createSender() {
- return Promise.all([
- requireAsync('content/public/renderer/frame_interfaces'),
- requireAsync('data_sender'),
- requireAsync('device/serial/data_stream.mojom'),
- ]).then(function(modules) {
- var frameInterfaces = modules[0];
- var dataSender = modules[1];
- var dataStream = modules[2];
- return new dataSender.DataSender(
- frameInterfaces.getInterface(dataStream.DataSink.name),
- BUFFER_SIZE,
- FATAL_ERROR);
- });
-}
-
-// Returns a function that sends data to a provided DataSender |sender|,
-// checks that the send completes successfully and returns a promise that will
-// resolve to |sender|.
-function sendAndExpectSuccess(data) {
- return function(sender) {
- return sender.send(data).then(function(bytesSent) {
- test.assertEq(data.byteLength, bytesSent);
- return sender;
- });
- };
-}
-
-// Returns a function that sends data to a provided DataSender |sender|,
-// checks that the send fails with the expected error and expected number of
-// bytes sent, and returns a promise that will resolve to |sender|.
-function sendAndExpectError(data, expectedError, expectedBytesSent) {
- return function(sender) {
- return sender.send(data).catch(function(result) {
- test.assertEq(expectedError, result.error);
- test.assertEq(expectedBytesSent, result.bytesSent);
- return sender;
- });
- };
-}
-
-// Returns a function that cancels sends on the provided DataSender |sender|
-// with error |cancelReason|, returning a promise that will resolve to |sender|
-// once the cancel completes.
-function cancelSend(cancelReason) {
- return function(sender) {
- return sender.cancel(cancelReason).then(function() {
- return sender;
- });
- };
-}
-
-// Checks that attempting to start a send with |sender| fails.
-function sendAfterClose(sender) {
- test.assertThrows(sender.send, sender, [], 'DataSender has been closed');
-}
-
-// Checks that the provided promises resolve in order, returning the result of
-// the first.
-function expectOrder(promises) {
- var nextIndex = 0;
- function createOrderChecker(promise, expectedIndex) {
- return promise.then(function(sender) {
- test.assertEq(nextIndex, expectedIndex);
- nextIndex++;
- return sender;
- });
- }
- var wrappedPromises = [];
- for (var i = 0; i < promises.length; i++) {
- wrappedPromises.push(createOrderChecker(promises[i], i));
- }
- return Promise.all(wrappedPromises).then(function(results) {
- return results[0];
- });
-}
-
-// Serializes and deserializes the provided DataSender |sender|, returning a
-// promise that will resolve to the newly deserialized DataSender.
-function serializeRoundTrip(sender) {
- return Promise.all([
- sender.serialize(),
- requireAsync('data_sender'),
- ]).then(function(promises) {
- var serialized = promises[0];
- var dataSenderModule = promises[1];
- return dataSenderModule.DataSender.deserialize(serialized);
- });
-}
-
-function closeSender(sender) {
- sender.close();
- return sender;
-}
-
-unittestBindings.exportTests([
- function testSend() {
- var sender = createSender();
- expectOrder([
- sender.then(sendAndExpectSuccess(generateData(1))),
- sender.then(sendAndExpectSuccess(generateData(1))),
- ])
- .then(closeSender)
- .then(test.succeed, test.fail);
- },
-
- function testLargeSend() {
- createSender()
- .then(sendAndExpectSuccess(generateData(BUFFER_SIZE * 3, '123')))
- .then(closeSender)
- .then(test.succeed, test.fail);
- },
-
- function testSendError() {
- createSender()
- .then(sendAndExpectError(generateData(BUFFER_SIZE * 3, 'b'), 1, 0))
- .then(sendAndExpectSuccess(generateData(1)))
- .then(closeSender)
- .then(test.succeed, test.fail);
- },
-
- function testSendErrorPartialSuccess() {
- createSender()
- .then(sendAndExpectError(generateData(BUFFER_SIZE * 3, 'b'), 1, 5))
- .then(sendAndExpectSuccess(generateData(1)))
- .then(closeSender)
- .then(test.succeed, test.fail);
- },
-
- function testSendErrorBetweenPackets() {
- var sender = createSender();
- expectOrder([
- sender.then(sendAndExpectError(generateData(2, 'b'), 1, 2)),
- sender.then(sendAndExpectError(generateData(2, 'b'), 1, 0)),
- ])
- .then(sendAndExpectSuccess(generateData(1)))
- .then(closeSender)
- .then(test.succeed, test.fail);
- },
-
- function testSendErrorInSecondPacket() {
- var sender = createSender();
- expectOrder([
- sender.then(sendAndExpectSuccess(generateData(2, 'b'))),
- sender.then(sendAndExpectError(generateData(2, 'b'), 1, 1)),
- ])
- .then(sendAndExpectSuccess(generateData(1)))
- .then(closeSender)
- .then(test.succeed, test.fail);
- },
-
- function testSendErrorInLargeSend() {
- createSender()
- .then(sendAndExpectError(
- generateData(BUFFER_SIZE * 3, '1234567890'), 1, 12))
- .then(sendAndExpectSuccess(generateData(1)))
- .then(closeSender)
- .then(test.succeed, test.fail);
- },
-
- function testSendErrorBeforeLargeSend() {
- var sender = createSender();
- expectOrder([
- sender.then(sendAndExpectError(generateData(5, 'b'), 1, 2)),
- sender.then(sendAndExpectError(
- generateData(BUFFER_SIZE * 3, '1234567890'), 1, 0)),
- ])
- .then(sendAndExpectSuccess(generateData(1)))
- .then(closeSender)
- .then(test.succeed, test.fail);
- },
-
- function testCancelWithoutSend() {
- createSender()
- .then(cancelSend(3))
- .then(closeSender)
- .then(test.succeed, test.fail);
- },
-
- function testCancel() {
- var sender = createSender();
- expectOrder([
- sender.then(sendAndExpectError(generateData(1, 'b'), 3, 0)),
- sender.then(cancelSend(3)),
- ])
- .then(closeSender)
- .then(test.succeed, test.fail);
- sender.then(function(sender) {
- test.assertThrows(
- sender.cancel, sender, [], 'Cancel already in progress');
- test.assertThrows(sender.send, sender, [], 'Cancel in progress');
- });
- },
-
- function testClose() {
- var sender = createSender();
- expectOrder([
- sender.then(sendAndExpectError(generateData(1, 'b'), FATAL_ERROR, 0)),
- sender.then(cancelSend(3)),
- ]);
- sender
- .then(closeSender)
- .then(sendAfterClose)
- .then(test.succeed, test.fail);
- },
-
- function testSendAfterSerialization() {
- var sender = createSender().then(serializeRoundTrip);
- expectOrder([
- sender.then(sendAndExpectSuccess(generateData(1))),
- sender.then(sendAndExpectSuccess(generateData(1))),
- ])
- .then(closeSender)
- .then(test.succeed, test.fail);
- },
-
- function testSendErrorAfterSerialization() {
- createSender()
- .then(serializeRoundTrip)
- .then(sendAndExpectError(generateData(BUFFER_SIZE * 3, 'b'), 1, 0))
- .then(sendAndExpectSuccess(generateData(1)))
- .then(closeSender)
- .then(test.succeed, test.fail);
- },
-
-
- function testCancelAfterSerialization() {
- var sender = createSender().then(serializeRoundTrip);
- expectOrder([
- sender.then(sendAndExpectError(generateData(1, 'b'), 4, 0)),
- sender.then(cancelSend(4)),
- ])
- .then(closeSender)
- .then(test.succeed, test.fail);
- },
-
- function testSerializeCancelsSendsInProgress() {
- var sender = createSender();
- expectOrder([
- sender.then(sendAndExpectError(generateData(1, 'b'), FATAL_ERROR, 0)),
- sender.then(sendAndExpectError(generateData(1, 'b'), FATAL_ERROR, 0)),
- sender.then(serializeRoundTrip),
- ])
- .then(closeSender)
- .then(test.succeed, test.fail);
- },
-
- function testSerializeWaitsForCancel() {
- var sender = createSender();
- expectOrder([
- sender.then(sendAndExpectError(generateData(1, 'b'), 3, 0)),
- sender.then(cancelSend(3)),
- sender.then(serializeRoundTrip),
- ])
- .then(closeSender)
- .then(test.succeed, test.fail);
- },
-
- function testSerializeAfterClose() {
- createSender()
- .then(closeSender)
- .then(serializeRoundTrip)
- .then(sendAfterClose)
- .then(test.succeed, test.fail);
- },
-
-], test.runTests, exports);
« no previous file with comments | « extensions/test/data/data_receiver_unittest.js ('k') | extensions/test/data/serial_unittest.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698