mirror of
https://github.com/tianocore/edk2
synced 2026-08-27 00:23:19 -04:00
BaseTools/Tests: Update TC6 for backward-compatible rebase behavior
Update the test decision matrix and TC6 expected result to reflect the backward-compatible ForceRebase logic: when ForceRebase=TRUE and no files have the ,XIP suffix (XipFileCount==0), all files are rebased using the legacy behavior rather than skipping all files. Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com>
This commit is contained in:
parent
0347d3b711
commit
ae023dbe99
1 changed files with 11 additions and 10 deletions
|
|
@ -9,13 +9,14 @@
|
|||
# FfsRebase() in GenFvInternalLib.c decides whether to rebase each PE/COFF
|
||||
# image in an FV based on three inputs: ForceRebase, BaseAddress, and XipFile[].
|
||||
#
|
||||
# ForceRebase BaseAddress XipFile[] Result
|
||||
# ----------- ----------- --------- ---------------------------------
|
||||
# -1 (unset) 0 any No rebase (early return)
|
||||
# 0 (FALSE) any any No rebase (early return)
|
||||
# 1 (TRUE) any FALSE No rebase (skip non-XIP file)
|
||||
# 1 (TRUE) any TRUE Rebase (XIP file selected)
|
||||
# -1 (unset) != 0 any Rebase ALL files (legacy path)
|
||||
# ForceRebase BaseAddress XipFileCount XipFile[] Result
|
||||
# ----------- ----------- ------------ --------- ---------------------------------
|
||||
# -1 (unset) 0 any any No rebase (early return)
|
||||
# 0 (FALSE) any any any No rebase (early return)
|
||||
# 1 (TRUE) any 0 any Rebase ALL files (legacy compat)
|
||||
# 1 (TRUE) any > 0 FALSE No rebase (skip non-XIP file)
|
||||
# 1 (TRUE) any > 0 TRUE Rebase (XIP file selected)
|
||||
# -1 (unset) != 0 any any Rebase ALL files (legacy path)
|
||||
#
|
||||
# Unit Tests (TestDetermineXipEnabled):
|
||||
# 11 parameterized subtests calling FfsInfStatement.DetermineXipEnabled()
|
||||
|
|
@ -35,7 +36,7 @@
|
|||
# TC3: ForceRebase=FALSE, Base!=0 -> no rebase
|
||||
# TC4: ForceRebase=TRUE, all Xip=TRUE -> rebase all
|
||||
# TC5: ForceRebase=TRUE, selective Xip -> rebase only Xip=TRUE
|
||||
# TC6: ForceRebase=TRUE, no Xip -> no rebase
|
||||
# TC6: ForceRebase=TRUE, no Xip -> rebase all (legacy compat)
|
||||
# TC7: ForceRebase=TRUE, mixed Xip -> rebase Xip=TRUE only
|
||||
# TC8: ForceRebase=TRUE, Base=0, Xip -> rebase (force overrides)
|
||||
#
|
||||
|
|
@ -802,9 +803,9 @@ INF TestXipRebasePkg/TestDxeDriver/TestDxeDriver.inf
|
|||
('TESTFV5', '0x00800000', 'TRUE', 'TRUE', 'TRUE', None,
|
||||
(True, True, False), 'TC5: ForceRebase=TRUE, selective Xip -> rebase Xip only'),
|
||||
# TC6: ForceRebase=TRUE, no files have Xip keyword.
|
||||
# All files have XipFile==FALSE, so none are rebased.
|
||||
# XipFileCount==0, so legacy behavior is preserved: rebase all files.
|
||||
('TESTFV6', '0x00800000', 'TRUE', None, None, None,
|
||||
(False, False, False), 'TC6: ForceRebase=TRUE, no Xip -> no rebase'),
|
||||
(True, True, True), 'TC6: ForceRebase=TRUE, no Xip -> rebase all (legacy compat)'),
|
||||
# TC7: ForceRebase=TRUE, PEIM1 has Xip=TRUE, PEIM2 has Xip=FALSE.
|
||||
# Mixed XIP within same module type via RuleOverride.
|
||||
# Only PEIM1 is rebased; PEIM2 and DXE are skipped.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue