// 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.

module mojo.test {

interface TestService {
  Ping() => ();
  // Connect to a TestTimeService at |app_url| and ferry the data back
  // in |response|.
  ConnectToAppAndGetTime(string? app_url) => (int64 time_usec);
  StartTrackingRequests() => ();
};

interface TestTimeService {
  // Provides a constant time value.
  GetPartyTime() => (int64 time_usec);
  StartTrackingRequests() => ();
};

}  // module mojo.test
