startbootstrap icon indicating copy to clipboard operation
startbootstrap copied to clipboard

Add plist parser for iOS CarPlayApp.plist file

Open studiawan opened this issue 2 years ago • 5 comments

One line description of pull request

Add plist parser for iOS CarPlayApp.plist file

Description:

I add/edit several files:

  • Add ios_carplay to init.py
  • Add plaso/parsers/plist_plugins/ios_carplay.py
  • Add test_data/com.apple.CarPlayApp.plist
  • Add tests/parsers/plist_plugins/ios_carplay.py

Related issue (if applicable): fixes #4155

Notes:

All contributions to Plaso undergo code review. This makes sure that the code has appropriate test coverage and conforms to the Plaso style guide.

One of the maintainers will examine your code, and may request changes. Check off the items below in order, and then a maintainer will review your code.

Checklist:

  • [ ] Automated checks (Travis, Codecov, Codefactor )pass
  • [ ] No new new dependencies are required or l2tdevtools has been updated
  • [ ] Reviewer assigned

studiawan avatar Jul 17 '22 05:07 studiawan

@studiawan please fix the linter warnings https://github.com/log2timeline/plaso/runs/7375412875?check_suite_focus=true

joachimmetz avatar Jul 17 '22 05:07 joachimmetz

I am working on this issue. I am still reading the pylint manual. Thanks.

studiawan avatar Jul 17 '22 12:07 studiawan

This might be an useful reference then https://plaso.readthedocs.io/en/latest/sources/developer/Style-guide.html you can run pylint locally with conditions similar to the CI tests with tox -elint

joachimmetz avatar Jul 17 '22 12:07 joachimmetz

Hi @joachimmetz, I have fixed the linter warnings. Please have a look. Thanks.

studiawan avatar Jul 17 '22 15:07 studiawan

Codecov Report

Base: 85.72% // Head: 85.73% // Increases project coverage by +0.01% :tada:

Coverage data is based on head (92cbb3e) compared to base (450b21d). Patch coverage: 100.00% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4156      +/-   ##
==========================================
+ Coverage   85.72%   85.73%   +0.01%     
==========================================
  Files         406      407       +1     
  Lines       34859    34884      +25     
==========================================
+ Hits        29882    29907      +25     
  Misses       4977     4977              
Impacted Files Coverage Δ
plaso/parsers/plist_plugins/ios_carplay.py 100.00% <100.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

codecov[bot] avatar Jul 18 '22 05:07 codecov[bot]

FYI CI tests are failing with:

======================================================================
FAIL: testProcess (parsers.plist_plugins.ios_carplay.IOSCarPlayPluginTest)
Tests the Process function.
----------------------------------------------------------------------
Traceback (most recent call last):
  File "C:\projects\plaso\tests\parsers\plist_plugins\ios_carplay.py", line 42, in testProcess
    self.CheckEventValues(storage_writer, events[0], expected_event_values)
  File "C:\projects\plaso\.\tests\parsers\test_lib.py", line 203, in CheckEventValues
    self.assertEqual(value, expected_value, error_message)
AssertionError: None != 'com.apple.mobilecal' : event value: "desc" does not match expected value
----------------------------------------------------------------------

joachimmetz avatar Aug 17 '22 03:08 joachimmetz

@studiawan took another look. Looks like most of the comments I have are related to PlistTimeEventData, I'll consider this out of scope of this PR and have created https://github.com/log2timeline/plaso/issues/4231

joachimmetz avatar Sep 11 '22 07:09 joachimmetz