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

Feature/Remote Control - Allow Multiple Modules per Module Type #2984

Merged
merged 36 commits into from
Aug 30, 2019

Conversation

LitvinenkoIra
Copy link
Contributor

@LitvinenkoIra LitvinenkoIra commented Aug 5, 2019

Implements #2919

This PR is [ready] for review.

Risk

This PR makes [minor] API changes.

Testing Plan

Summary

  • Update existing RC RPCs with moduleId processing
  • Update resource allocation manager with moduleId processing
  • Update interior vehicle data caching with moduleId processing
  • Add new RPCs - GetInteriorVehicleDataConsent and ReleaseInteriorVehicleDataModule
  • Create RCCapabilities Manager for RC capabilities processing
  • Create RCConsent Manager for consents processing
Bug Fixes

Other parts of delivery:

CLA

@AStasiuk AStasiuk requested a review from mrapitis August 6, 2019 06:52
@IGapchuk IGapchuk force-pushed the feature/multiple_modules branch from 12e7315 to ff4a257 Compare August 13, 2019 07:40
@IGapchuk
Copy link
Contributor

NOTE: feature branch has been re-based onto current develop

@IGapchuk IGapchuk force-pushed the feature/multiple_modules branch from ff4a257 to 12e7315 Compare August 13, 2019 15:52
@IGapchuk
Copy link
Contributor

IGapchuk commented Aug 13, 2019

NOTE: feature branch rebase has been roll-backed. Because develop the latest commit 399f983 is failed by check style

@LitvinenkoIra LitvinenkoIra force-pushed the feature/multiple_modules branch from 12e7315 to 12f944c Compare August 15, 2019 13:53
@LitvinenkoIra
Copy link
Contributor Author

LitvinenkoIra commented Aug 15, 2019

Rebased on the latest develop 399f983.
Added temporary commit: 12f944c which fixed code style, because
in current develop code style is broken on: 399f983

@LitvinenkoIra LitvinenkoIra force-pushed the feature/multiple_modules branch from 12f944c to e5117d3 Compare August 15, 2019 15:15
@LitvinenkoIra
Copy link
Contributor Author

LitvinenkoIra commented Aug 15, 2019

Rebased on the latest develop 6f84c1a
Added temporary commit: e5117d3 which fixed code style, because
in current develop code style is broken on: 399f983

@LitvinenkoIra LitvinenkoIra force-pushed the feature/multiple_modules branch from e5117d3 to 9e95fa1 Compare August 19, 2019 09:34
@LitvinenkoIra
Copy link
Contributor Author

Rebased on the latest develop c6e9a9b

@mrapitis
Copy link
Contributor

@theresalech Ford has approved of these changes.

@theresalech theresalech requested a review from ShobhitAd August 19, 2019 18:41
@LitvinenkoIra
Copy link
Contributor Author

LitvinenkoIra commented Aug 22, 2019

On the latest develop occasional falling of Smoke ATF test scripts on policy external flow are observed - http://opensdl-jenkins.luxoft.com:8080/view/develop/job/develop_smoke_ExternalFlow/
Since this feature branch rebased on the latest develop - those falls are also observed on the feature branch - http://opensdl-jenkins.luxoft.com:8080/view/multiple_modules/
This is a known issue in ATF test scripts, and a fix already provided in smartdevicelink/sdl_atf_test_scripts#2212

@LitvinenkoIra LitvinenkoIra force-pushed the feature/multiple_modules branch 5 times, most recently from aead258 to ad32424 Compare August 27, 2019 13:25
@LitvinenkoIra
Copy link
Contributor Author

LitvinenkoIra commented Aug 27, 2019

@ShobhitAd All reviews comments have been processed.

@LitvinenkoIra LitvinenkoIra force-pushed the feature/multiple_modules branch 2 times, most recently from a257b20 to 3040261 Compare August 29, 2019 12:11
@LitvinenkoIra
Copy link
Contributor Author

@ShobhitAd Thank you for this review iteration. All your comments has been processed. If you have additional comments or questions please let me know.
Also please let me know when you finished the review so I could squash fixup commits before merge.

@IGapchuk IGapchuk force-pushed the feature/multiple_modules branch from e238ec9 to a702677 Compare August 30, 2019 08:54
@LitvinenkoIra LitvinenkoIra force-pushed the feature/multiple_modules branch from a702677 to 1312f9b Compare August 30, 2019 10:14
LitvinenkoIra and others added 21 commits August 30, 2019 22:38
Update unit tests after obtaining available resources from capabilities
…tion

Update SetGlobalPropertiesRequest

- update PrepareResponseParameters method according to third new parameter
"rc_properties";
Add period for module_id consent expiring
Update unit tests that are related to caching with moduleId processing
- add interface RCConsetnManager
- add implementation RCConsentManagerImpl
- add new rc constants
- add mock class for RCConsentManager

Remove all consents after RC disabling

Add checking ModuleConsent to RCCommandRequest

Add logic for GetInteriorVehicleDataConsentRequest from Mobile

Save the driver's decision when SDL sends the GIVDConsent request
…tipleAccess values

Add Seat Location capabilities checking and function for getting driver's location
Check if the user location area and the service area has something in common, or the user location is driver,
otherwise - reject the module reallocation request

Fix UTs after adding the location check
Add converting id to moduleId:
 If the vehicle support at least one seat control, seat control capability includes at least two items.
 1st for driver’s seat. 2nd for front passenger’s seat
Add Unit test for PrepareResultCodeForResponse method
Add Unit test for PrepareResultForMobileResponse method
* Add MockRCHelpers.

* Add ResourceAllocationManager Unit tests
Send OnRCStatus notification only in case resource allocation state was changed
Behavior for cache consents has been updated
according to the following comment:
1. If accessMode=AUTO_ALLOW, return true by default
2. If accessMode=AUTO_DENY, check if another app is using the resource
  a. If the resource is IN_USE, return false
  b. If the resource is FREE, return true
3. If accessMode=ASK_DRIVER, check if the consent is cached
  a. If it is cached, return that result
  b. If it is NOT cached, then prompt the driver for consent
@LitvinenkoIra LitvinenkoIra force-pushed the feature/multiple_modules branch from e283a65 to fa38e50 Compare August 30, 2019 19:59
@LitvinenkoIra
Copy link
Contributor Author

@ShobhitAd feature branch rebased on the latest develop

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants