Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(514)

Unified Diff: src/platform/vboot_reference/cgptlib/tests/cgptlib_test.c

Issue 2231002: complete 'cgpt show' and refactor for incoming commands. (Closed) Base URL: ssh://git@chromiumos-git/chromeos
Patch Set: Created 10 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/platform/vboot_reference/cgptlib/tests/cgptlib_test.c
diff --git a/src/platform/vboot_reference/cgptlib/tests/cgptlib_test.c b/src/platform/vboot_reference/cgptlib/tests/cgptlib_test.c
index 73fb9efe77b4377668f6a8247f86b66416500bf9..72fb5e6c21226a5c736e07e30f884bd6fe3600c6 100644
--- a/src/platform/vboot_reference/cgptlib/tests/cgptlib_test.c
+++ b/src/platform/vboot_reference/cgptlib/tests/cgptlib_test.c
@@ -114,6 +114,8 @@ void BuildTestGptData(GptData *gpt) {
gpt->sector_bytes = DEFAULT_SECTOR_SIZE;
gpt->drive_sectors = DEFAULT_DRIVE_SECTORS;
gpt->current_kernel = CGPT_KERNEL_ENTRY_NOT_FOUND;
+ gpt->valid_headers = MASK_BOTH;
+ gpt->valid_entries = MASK_BOTH;
/* build primary */
header = (GptHeader*)gpt->primary_header;
@@ -600,6 +602,12 @@ int HeaderCrcTest() {
gpt->primary_header[primary_header->size] ^= 0x87;
EXPECT(MASK_BOTH == CheckHeaderCrc(gpt));
+ /* Very long header (actually invalid header). Expect will be ignored. */
+ primary_header->size = 0x12345678;
+ secondary_header->size = 0x87654321;
+ gpt->valid_headers = MASK_NONE;
+ EXPECT(MASK_NONE == CheckHeaderCrc(gpt));
+
return TEST_OK;
}
@@ -719,7 +727,8 @@ int SynonymousHeaderTest() {
++secondary_header->first_usable_lba;
RefreshCrc32(gpt);
EXPECT(GPT_SUCCESS == GptInit(gpt));
- EXPECT(GPT_MODIFIED_HEADER2 == gpt->modified);
+ EXPECT((gpt->modified & (GPT_MODIFIED_HEADER1 | GPT_MODIFIED_HEADER2)) ==
+ GPT_MODIFIED_HEADER2);
EXPECT(primary_header->first_usable_lba ==
secondary_header->first_usable_lba);
@@ -892,7 +901,8 @@ int CorruptCombinationTest() {
primary_header->entries_crc32 ^= 0x73;
EXPECT(GPT_SUCCESS == GptInit(gpt));
/* After header is repaired, the entries are valid actually. */
- EXPECT((GPT_MODIFIED_HEADER1) == gpt->modified);
+ EXPECT((gpt->modified & (GPT_MODIFIED_HEADER1 | GPT_MODIFIED_HEADER2)) ==
+ GPT_MODIFIED_HEADER1);
/* We expect the modified header/entries can pass GptInit(). */
EXPECT(GPT_SUCCESS == GptInit(gpt));
EXPECT(0 == gpt->modified);
« no previous file with comments | « src/platform/vboot_reference/cgptlib/cgptlib_internal.h ('k') | src/platform/vboot_reference/utility/cgpt/Makefile » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698