Skip to content
Commit 80010e6d authored by Lee Shombert's avatar Lee Shombert
Browse files

Validate Computer functions

Bug: 186654390

Add a validation function to perform some basic checks on the
structure of functions that are part of the Computer interface. The
checks are:

1. Every function in Computer must have an @Live annotation.  The
   annotation indicates if the function is locked or not.

2. If function is locked then there must be an override in
   ComputerLocked.

3. If the function is not locked then there may not be an override in
  ComputerLocked.

4. Every function in ComputerLocked must be an override of a function
   declared in Computer.

Test: atest
 * PackageManagerServiceTests#testComputerStructure

The test is run once on the candidate image - no failures  are
reported.  The test is then run on modified builds, exercising the
following five cases, to verify that errors are properly detected.

Manual testing with the following three cases:

1. A function in Computer that does not have an @LiveImplementation
   annotation.

2. A function in Computer that has an invalid
   LiveImplementation.override annotation.

3. A locked function that is not overridden in ComputerLocked.

4. A not-locked function that is is overridden in ComputerLocked.

5. A function that is defined for the first time in ComputerLocked.

Change-Id: Ic34aac67fe40aa4fec2d343fe4babdf1c565ce85
parent 6a6b9eff
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment