| /* Copyright (c) 2010 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. |
| */ |
| |
| /* Common definitions for test programs. |
| */ |
| |
| #ifndef TLCL_TESTS_H |
| #define TLCL_TESTS_H |
| |
| /* Standard testing indexes. */ |
| #define INDEX0 0xcafe |
| #define INDEX1 0xcaff |
| |
| /* Prints error and returns on failure */ |
| #define TPM_CHECK(tpm_command) TPM_EXPECT(tpm_command, TPM_SUCCESS) |
| |
| #define TPM_EXPECT(tpm_command, expected_result) do { \ |
| uint32_t _result = (tpm_command); \ |
| uint32_t _exp = (expected_result); \ |
| if (_result != _exp) { \ |
| printf("TEST FAILED: line %d: " #tpm_command ": 0x%x" \ |
| " (expecting 0x%x)\n", __LINE__, _result, _exp); \ |
| return _result; \ |
| } \ |
| } while (0) |
| |
| |
| /* Executes TlclStartup(), but ignores POSTINIT error if the |
| * TLCL_RESILIENT_STARTUP environment variable is set. |
| */ |
| uint32_t TlclStartupIfNeeded(void); |
| |
| #endif // TLCL_TESTS_H |