diff options
author | Michael Jones <jonesmi@google.com> | 2013-11-15 13:34:02 -0800 |
---|---|---|
committer | Michael Jones <jonesmi@google.com> | 2013-11-15 13:34:02 -0800 |
commit | 8e6baabe8974710db1401368a16a4140a532319f (patch) | |
tree | a942a4e07a8d1d16a7e8b8bfa85b58985abe8285 | |
parent | 5dae7e1b8a4830798a052fd981abbd58e8483069 (diff) | |
download | loganalysis-8e6baabe8974710db1401368a16a4140a532319f.tar.gz |
added unit test for selinux parsing in KernelLogParser
Change-Id: I822d4bc8e5ea26e8deaca79b7052f9e9fbece1de
-rw-r--r-- | tests/src/com/android/loganalysis/parser/KernelLogParserTest.java | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/src/com/android/loganalysis/parser/KernelLogParserTest.java b/tests/src/com/android/loganalysis/parser/KernelLogParserTest.java index 514b5d8..5c8af03 100644 --- a/tests/src/com/android/loganalysis/parser/KernelLogParserTest.java +++ b/tests/src/com/android/loganalysis/parser/KernelLogParserTest.java @@ -155,4 +155,31 @@ public class KernelLogParserTest extends TestCase { KernelLogParser.KERNEL_RESET, patternUtil.checkMessage(pattern)); } } + + /** + * Test that an SELinux Denial can be parsed out of a list of log lines. + */ + public void testSelinuxDenialParse() { + final String SELINUX_DENIAL_STACK = "type=1400 audit(1384544483.730:10): avc: denied " + + "{ getattr } for pid=797 comm=\"Binder_5\" path=\"/dev/pts/1\" + " + + "dev=devpts ino=4 scontext=u:r:system_server:s0 " + + "tcontext=u:object_r:devpts:s0 tclass=chr_file"; + List<String> lines = Arrays.asList( + "<4>[ 0.000000] Memory policy: ECC disabled, Data cache writealloc", + "<7>[ 7.896355] SELinux: initialized (dev cgroup, type cgroup)" + + ", uses genfs_contexts", + "<5>[ 43.399164] " + SELINUX_DENIAL_STACK); + KernelLogItem kernelLog = new KernelLogParser().parse(lines); + + assertNotNull(kernelLog); + assertEquals(0.0, kernelLog.getStartTime(), 0.0000005); + assertEquals(43.399164, kernelLog.getStopTime(), 0.0000005); + assertEquals(1, kernelLog.getEvents().size()); + assertEquals(1, kernelLog.getMiscEvents(KernelLogParser.SELINUX_DENIAL).size()); + + MiscKernelLogItem item = kernelLog.getMiscEvents(KernelLogParser.SELINUX_DENIAL).get(0); + assertEquals(43.399164, item.getEventTime(), 0.0000005); + assertEquals(KernelLogParser.SELINUX_DENIAL, item.getCategory()); + assertEquals(SELINUX_DENIAL_STACK, item.getStack()); + } } |