New issue
Advanced search Search tips

Issue 872068 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Oct 17
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Bug

Blocking:
issue 866708



Sign in to add a comment

DeviceSyncClientImplTest failures with Mojo changes

Project Member Reported by roc...@chromium.org, Aug 8

Issue description

The failing tests are (in chromeos_unittests):

  DeviceSyncClientImplTest.TestOnEnrollmentFinished
  DeviceSyncClientImplTest
      .TestCompleteInitialEnrollmentBeforeInitialSync
      _WaitForLocalDeviceMetadata
  DeviceSyncClientImplTest.TestOnNewDevicesSynced
 
See blocked bug for details and motivation regarding what's changing in Mojo. Likely the failures are caused by incorrect task ordering assumptions.

 
Description: Show this description
Cc: khorimoto@chromium.org hansberry@chromium.org
+ device_sync folks in case you have any cycles to help look into this
Hey Ken, can you post the test failures here?
Labels: -Pri-3 Pri-1
And just to clarify, these failures appear when applying this CL[1]. The CL does not break any guarantees made by Mojo bindings, but it can affect the timing of arbitrary events. The failures therefore strongly imply that incorrect ordering assumptions being made somewhere, and this has been the case for all other blocking bugs which have been fixed so far.

[1] https://chromium-review.googlesource.com/c/chromium/src/+/1145692
Cc: roc...@chromium.org
Owner: hansberry@chromium.org
Status: Assigned (was: Started)
hansberry@ (original implementer of that class) is going to take on this issue.
Status: Started (was: Assigned)
Cc: -roc...@chromium.org
Owner: rockot@google.com
Gonna just knock this out since I see the problem.
Project Member

Comment 10 by bugdroid1@chromium.org, Oct 17

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/14e46b5f85c5c219013de33e21ff23f7c6d1efb3

commit 14e46b5f85c5c219013de33e21ff23f7c6d1efb3
Author: Ken Rockot <rockot@chromium.org>
Date: Wed Oct 17 00:17:56 2018

[device_sync] Fix some test expectations

Changes some tests to run a RunLoop until idle rather than simply
flushing a single Mojo interface pipe once. Due to changes in Mojo
message dispatch timing, these tests break without this change.

Flushing the interface in this case is *not* sufficient to guarantee
that all of the expected work has completed by the time
FlushForTesting returns. Rather than going through and doing a
holistic refactor of these tests, this CL just fixes the few tests
that happen to fail when making the necessary changes to Mojo
bindings behavior.

Bug:  872068 
Change-Id: Ia869917715cedbec62e57cdcbac3d4b946232d38
Reviewed-on: https://chromium-review.googlesource.com/c/1285516
Reviewed-by: Kyle Horimoto <khorimoto@chromium.org>
Commit-Queue: Ken Rockot <rockot@chromium.org>
Cr-Commit-Position: refs/heads/master@{#600207}
[modify] https://crrev.com/14e46b5f85c5c219013de33e21ff23f7c6d1efb3/chromeos/services/device_sync/public/cpp/device_sync_client_impl_unittest.cc

Status: Fixed (was: Started)

Sign in to add a comment