1# Copyright 2021 The Chromium OS Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5AUTHOR = "hbarnor, Chromium OS"
6NAME = "autoupdate_InvalidateUpdateBeforeReboot.full"
7TIME = "MEDIUM"
8PURPOSE = "Tests invalidate last update with Nebraska."
9TEST_CATEGORY = "Functional"
10TEST_CLASS = "platform"
11TEST_TYPE = "server"
12ATTRIBUTES = "suite:au-perbuild"
13PY_VERSION = 3
14DOC = """
15This tests the invalidate last update feature.
16
17This test ensures that Update Engine checks for and invalidates a previous
18update if it has not rebooted into it. This is achieved by feeding a full update
19to the update_engine followed by a request to invalidate the update.
20
21We supply a job_repo_url to the test when running locally. In the lab this will
22be passed directly. The job_repo_url is a link to the autotest packages on a
23devserver. The test uses it to find the correct payload to use.
24
25Example usage:
26test_that autoupdate_InvalidateUpdateBeforeReboot.full <DUT> --board=<board> --args="job_repo_url='http://<devserver IP>:8082/static/<board>-release/RXX-XXXXX.X.X/autotest/packages', running_at_desk=True"
27"""
28
29from autotest_lib.client.common_lib import utils
30args_dict = utils.args_to_dict(args)
31
32def run(machine):
33    host = hosts.create_host(machine)
34    job.run_test('autoupdate_InvalidateUpdateBeforeReboot', host=host, **args_dict)
35
36job.parallel_simple(run, machines)
37