# Copyright 2020 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

AUTHOR = "jkop@google.com"
NAME = "dummy_SynchronousOffloadServer"
PURPOSE = "Verify tests can offload output from servers."
TIME = "SHORT"
TEST_CATEGORY = "General"
TEST_CLASS = "dummy"
TEST_TYPE = "server"

DOC = """
This test creates a file in $SYNCHRONOUS_OFFLOAD_DIR on the server and succeeds.
The task will fail only if the creation or offload of that file fails.
"""

def run(machine):
    job.run_test('dummy_SynchronousOffloadServer',
                 host=hosts.create_host(machine))

parallel_simple(run, machines)
