Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update SCM to workaround Sync 3 bug with media capabilities #1987

Merged

Conversation

joeljfischer
Copy link
Contributor

@joeljfischer joeljfischer commented May 11, 2021

Fixes #1152

Risk

This PR makes no API changes.

Testing Plan

  • I have verified that I have not introduced new warnings in this PR (or explain why below)
  • I have run the unit tests with this PR
  • I have tested this PR against Core and verified behavior (if applicable, if not applicable, explain why below).

Unit Tests

Unit tests were updated for all affected classes

Core Tests

Regression testing was performed to ensure that the graphic showed up in the relevant scenario. An affected Sync 3.0 head unit was not available to test the fix.

Core version / branch / commit hash / module tested against:

  • v7.0 (Manticore)
  • Sync v3.4

HMI name / version / branch / commit hash / module tested against:

  • Generic HMI v0.9.0 (Manticore)
  • Sync 3.4

Summary

  • SCM now has a public property set from the lifecycle manager to know what the next SetDisplayLayout template name will be
  • ConnectionManagerType now has a configuration property used by the SCM to know the app types of the app
  • SCM now stores the RAIR display capability if the app has app type MEDIA
  • SCM now replaces the SetDisplayLayout response displayCapabilities with the RAIR displayCapabilities if the target of the SetDisplayLayout is the MEDIA template
  • Changed some LifecycleManager public properties (the class is private) to be readonly to prevent outside classes from accidentally messing with them.

Changelog

Bug Fixes
  • Workaround for a Ford Sync 3 bug where doing SetDisplayLayout to the MEDIA template would result in incorrect display capabilities being returned that claim the primaryGraphic is not supported.

Tasks Remaining:

  • Unit test updates
  • Smoke test updates

CLA

* SCM now has a public property set from the lifecycle manager to know what the next SetDisplayLayout template name will be
* ConnectionManagerType now has a configuration property used by the SCM to know the app types of the app
* SCM now stores the RAIR display capability if the app has app type MEDIA
* SCM now replaces the SetDisplayLayout response displayCapabilities with the RAIR displayCapabilities if the target of the SetDisplayLayout is the MEDIA template
@joeljfischer joeljfischer added bug A defect in the library manager-lifecycle Relating to the manager layer - lifecycle manager manager-system-capability Relating to the manager layer - system capability labels May 11, 2021
@joeljfischer joeljfischer self-assigned this May 11, 2021
@codecov
Copy link

codecov bot commented May 11, 2021

Codecov Report

Merging #1987 (d96ce01) into develop (1b2c80b) will increase coverage by 0.00%.
The diff coverage is 81.08%.

❗ Current head d96ce01 differs from pull request most recent head cef7e02. Consider uploading reports for the commit cef7e02 to get more accurate results

@@           Coverage Diff            @@
##           develop    #1987   +/-   ##
========================================
  Coverage    85.96%   85.96%           
========================================
  Files          441      441           
  Lines        22584    22599   +15     
========================================
+ Hits         19414    19427   +13     
- Misses        3170     3172    +2     

@joeljfischer joeljfischer marked this pull request as ready for review May 12, 2021 17:35
Copy link
Contributor

@FrankElias77 FrankElias77 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Update needed please for sdl_createDisplayCapabilityListFromSetDisplayLayoutResponse func L181:

return [self sdl_createDisplayCapabilityListFromDeprecatedDisplayCapabilities:self.displayCapabilities buttons:rpc.buttonCapabilities softButtons:rpc.softButtonCapabilities];

@joeljfischer joeljfischer merged commit 464e3e9 into develop May 25, 2021
@joeljfischer joeljfischer deleted the bugfix/issue-1152-primary-graphic-media-ford-bug branch May 25, 2021 19:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug A defect in the library manager-lifecycle Relating to the manager layer - lifecycle manager manager-system-capability Relating to the manager layer - system capability
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants