From 086c044dc34dfc0f74fbe41f4ecb402b2cd34884 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 03:13:33 +0200 Subject: Merging upstream version 125.0.1. Signed-off-by: Daniel Baumann --- ipc/ipdl/test/gtest/PTestCancel.ipdl | 39 ++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 ipc/ipdl/test/gtest/PTestCancel.ipdl (limited to 'ipc/ipdl/test/gtest/PTestCancel.ipdl') diff --git a/ipc/ipdl/test/gtest/PTestCancel.ipdl b/ipc/ipdl/test/gtest/PTestCancel.ipdl new file mode 100644 index 0000000000..b0af04bae7 --- /dev/null +++ b/ipc/ipdl/test/gtest/PTestCancel.ipdl @@ -0,0 +1,39 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +namespace mozilla { +namespace _ipdltest { + +[NestedUpTo=inside_sync, ChildProc=any, ChildImpl=virtual, ParentImpl=virtual] +sync protocol PTestCancel +{ + // Immediate Cancel: child sync function cancels immediately, both ends check after cancellation. +child: + [Nested=inside_sync] sync ImmediateCancel(); + + + // Nested Cancel: child nested sync function cancels +child: + async StartNestedCancel(); + [Nested=inside_sync] sync NestedCancel(); +parent: + [Nested=inside_sync] sync CallNestedCancel(); + + + // Nested Cancel Parent: parent nested sync function cancels +child: + [Nested=inside_sync] sync StartNestedCancelParent(); +parent: + [Nested=inside_sync] sync NestedCancelParent(); + + +// Common functions to check that sync messages still work. +child: + [Nested=inside_sync] sync CheckChild() returns (uint32_t reply); +parent: + [Nested=inside_sync] sync CheckParent() returns (uint32_t reply); +}; + +} // namespace _ipdltest +} // namespace mozilla -- cgit v1.2.3