From 0b94afb0757e02deccced2d85b8478b78f269e0b Mon Sep 17 00:00:00 2001 From: Matthew Draper Date: Thu, 28 Jan 2016 21:19:10 +1030 Subject: Be more patient while gathering the expected responses --- actioncable/test/client_test.rb | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'actioncable/test') diff --git a/actioncable/test/client_test.rb b/actioncable/test/client_test.rb index 7617e93426..66fa79afd6 100644 --- a/actioncable/test/client_test.rb +++ b/actioncable/test/client_test.rb @@ -154,10 +154,10 @@ class ClientTest < ActionCable::TestCase msg end - def read_messages + def read_messages(expected_size = 0) list = [] loop do - @has_messages.wait(WAIT_WHEN_NOT_EXPECTING_EVENT) + @has_messages.wait(list.size < expected_size ? WAIT_WHEN_EXPECTING_EVENT : WAIT_WHEN_NOT_EXPECTING_EVENT) if @has_messages.set? list << read_message else @@ -222,8 +222,7 @@ class ClientTest < ActionCable::TestCase barrier_1.wait WAIT_WHEN_EXPECTING_EVENT c.send_message command: 'message', identifier: JSON.dump(channel: 'EchoChannel'), data: JSON.dump(action: 'bulk', message: 'hello') barrier_2.wait WAIT_WHEN_EXPECTING_EVENT - sleep 1 - assert_equal clients.size, c.read_messages.size + assert_equal clients.size, c.read_messages(clients.size).size } }.each(&:wait!) clients.map {|c| Concurrent::Future.execute { c.close } }.each(&:wait!) -- cgit v1.2.3