// Copyright 2015 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 content.mojom;

interface TestMojoService {
  // Doesn't actually do anything, just responds.
  DoSomething() => ();

  // Terminates the current process to cause a connection error. Meant to test
  // a connection error for the utility process.
  DoTerminateProcess() => ();

  // Tries to create a temporary folder. Requires a sandbox to succeed.
  CreateFolder() => (bool succeeded);

  // Retrieve the requestor name as seen by the test app providing this service.
  GetRequestorName() => (string name);
};
