diff options
Diffstat (limited to 'tests/vb2_recovery_reasons_tests.c')
-rw-r--r-- | tests/vb2_recovery_reasons_tests.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/tests/vb2_recovery_reasons_tests.c b/tests/vb2_recovery_reasons_tests.c new file mode 100644 index 00000000..c1cb95b6 --- /dev/null +++ b/tests/vb2_recovery_reasons_tests.c @@ -0,0 +1,31 @@ +/* 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. + * + * Tests for recovery reasons. + */ + +#include "2recovery_reasons.h" +#include "test_common.h" + +static void get_recovery_reason_string_tests(void) +{ + int i; + + /* Recovery string should be non-null for any code */ + for (i = 0; i < 0x100; i++) + TEST_PTR_NEQ(vb2_get_recovery_reason_string(i), NULL, + "Non-null reason"); + + /* Sanity check on one of the strings */ + TEST_EQ(strcmp(vb2_get_recovery_reason_string(VB2_RECOVERY_GBB_HEADER), + "Error parsing GBB header"), 0, + "Recovery reason sanity check"); +} + +int main(void) +{ + get_recovery_reason_string_tests(); + + return gTestSuccess ? 0 : 255; +} |