Skip to content
README.md 2.12 KiB
Newer Older
Jeff Booher-Kaeding's avatar
Jeff Booher-Kaeding committed
# SCT_Parser
This is an external Parser script for UEFI SCT. (WIP)
It's designed to read a `.ekl` results log from an UEFI SCT run, and a generated `.seq` from UEFI SCT configurator.
Jeff Booher-Kaeding's avatar
Jeff Booher-Kaeding committed

It will proceed to generate a Markdown file listing number of failures, passes, each test from the sequence file set that was Silently dropped, and a list of all failures and warnings.
## Usage
Usage to generate a "result md" is such. `python3 parser.py <log_file.ekl> <seq_file.seq>` 
If you do no provided any command line arguments it will use `sample.ekl` and `sample.seq`.
Jeff Booher-Kaeding's avatar
Jeff Booher-Kaeding committed

Jeff Booher-Kaeding's avatar
Jeff Booher-Kaeding committed
For a custom Key:value search, the next two arguments *MUST be included together.* The program will search and display files that met that constraint, without the crosscheck, and display the names, guid, and key:value to the command line. `python3 Parser.py <file.ekl> <file.seq> <search key> <search value>`

you can use the `test_dict` below to see available keys. 
Jeffrey Booher-Kaeding's avatar
Jeffrey Booher-Kaeding committed
## Notes
### Known Issues:
Jeff Booher-Kaeding's avatar
Jeff Booher-Kaeding committed
* "comment" is currently not implemented, as formatting is not currently consistent, should reflect the comments from the test.
* some SCT tests have shared GUIDs,
* some lines in ekl file follow Different naming Conventions
* some tests in the sequence file are not strongly Associated with the test spec. 
### TODO:
* double check concatenation of all `.ekl` logs, preliminary tests show small Divergence between them and `summary.ekl` found in `Overall` folder. Cat.sh will generate this file.
* look into large number of dropped tests.
tests = [
    test_dict,
    est_dict2...
]
Jeff Booher-Kaeding's avatar
Jeff Booher-Kaeding committed

test_dict = {
   "name": "some test",
   "result": "pass/fail",
   "group": "some group",
   "test set": "some set",  
   "sub set": "some subset",
   "set guid": "XXXXXX",
   "guid": "XXXXXX",
Jeff Booher-Kaeding's avatar
Jeff Booher-Kaeding committed
   "comment": "some comment",
Jeff Booher-Kaeding's avatar
Jeff Booher-Kaeding committed
seqs = { 
    <guid> : seq_dict
    <guid2> : seq_dict2...
}

seq_dict = {
                "name": "set name",
                "guid": "set guid",
                "Iteration": "some hex/num of how many times to run",
                "rev": "some hex/numb",
                "Order": "some hex/num"
Jeff Booher-Kaeding's avatar
Jeff Booher-Kaeding committed
}
```