Skip to content

Commit 311bbc7

Browse files
authored
[0.74] Prevent race condition in ConnectSucceeds WS unit test (#14408)
* Prevent race condition in ConnectSucceeds WS unit test (#14405) * Prevent race condition in ConnectSucceeds * Change files * Remove change file * Change files
1 parent 6fcdf8f commit 311bbc7

File tree

2 files changed

+11
-2
lines changed

2 files changed

+11
-2
lines changed
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
{
2+
"type": "patch",
3+
"comment": "Prevent race condition in ConnectSucceeds WS unit test (#14405)",
4+
"packageName": "react-native-windows",
5+
"email": "julio.rocha@microsoft.com",
6+
"dependentChangeType": "patch"
7+
}

vnext/Desktop.UnitTests/WinRTWebSocketResourceUnitTest.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,19 +55,21 @@ TEST_CLASS (WinRTWebSocketResourceUnitTest) {
5555
auto imws{winrt::make<MockMessageWebSocket>()};
5656

5757
// Set up mocks
58+
auto callingQueue = Mso::DispatchQueue::MakeSerialQueue();
5859
auto mws{imws.as<MockMessageWebSocket>()};
5960
// TODO: Mock Control()
6061
mws->Mocks.ConnectAsync = [](const Uri &) -> IAsyncAction { return DoNothingAsync(); };
6162

6263
// Test APIs
63-
auto rc = make_shared<WinRTWebSocketResource2>(
64-
std::move(imws), MockDataWriter{}, CertExceptions{}, Mso::DispatchQueue::MakeSerialQueue());
64+
auto rc = make_shared<WinRTWebSocketResource2>(std::move(imws), MockDataWriter{}, CertExceptions{}, callingQueue);
6565
rc->SetOnConnect([&connected]() { connected = true; });
6666
rc->SetOnError([&errorMessage](Error &&error) { errorMessage = error.Message; });
6767

6868
rc->Connect(testUrl, {}, {});
6969
rc->Close(CloseCode::Normal, {});
7070

71+
callingQueue.AwaitTermination();
72+
7173
Assert::AreEqual({}, errorMessage);
7274
Assert::IsTrue(connected);
7375
}

0 commit comments

Comments
 (0)