Skip to content
Snippets Groups Projects
  1. Dec 08, 2020
  2. Dec 07, 2020
    • chris-cwa's avatar
      Fixed: fields without values are visible (EXPOSUREAPP-3988) (#1808) · 20baacc9
      chris-cwa authored
      
      * fixed: fields without values are visible; + logs
      
      * detect version update, force recalc on 1.7 -> 1.8
      
      * detect version update in diagnosis keys task only
      
      * no connection type ignoring
      
      * Add test to ensure that parsing old configs from 1.7.x fails and the default fallback for 1.8.x is used.
      
      * Fix logging typo.
      
      * no wasLastDetectionPerformedRecently abort on app update
      
      * Fix lint issues
      
      * fixed condition
      
      * used shared settings
      
      * get last encounter at from enf v1 to display second line after app update while risk level calc is not finished
      
      * fixed di
      
      * fixed tests
      
      * fixed tests
      
      * fixed tests
      
      * Add unit tests for DownloadDiagnosisKeysTask.kt
      
      * fixed tests
      
      * Add tests for DownloadDiagnosisKeysSettingsTest
      
      Co-authored-by: default avatarMatthias Urhahn <matthias.urhahn@sap.com>
      20baacc9
  3. Dec 03, 2020
    • Matthias Urhahn's avatar
      Submission upload (EXPOSUREAPP-3748) (#1794) · 950653c1
      Matthias Urhahn authored
      * Submission upload, first draft.
      Storing Symptoms and TEKs.
      
      TODO:
      * Change upload task to use stored data.
      * Blocking upload task
      * Tests
      
      * Update symptoms on each screen.
      Integrate permission request and automatic TEK history update.
      
      TODO:
      * Cancel dialog
      * Blocking upload task
      * Tests
      
      * Add submission on cancel behavior.
      
      * LINTs and unit tests.
      
      * Hooking up navigation and first break through on TAN based submission.
      
      * Hook up navigation for QR Code to test result without consent.
      
      * Fix positive result consent given submission: Abort to Main Screen
      
      * Restore default environment.
      
      * Adjust notification target fragment.
      
      * Address LINTs
      
      * Clean up symptoms introduction nav actions.
      
      * Fix tests
  4. Dec 02, 2020
    • Rituraj Sambherao's avatar
      Submission flow no consent keys Submission Screen (EXPOSUREAPP-4064) (#1783) · 9d7c8906
      Rituraj Sambherao authored
      * Andere Warnen screen added
      
      * Merge conflict resolve and screen stability improvement
      
      * string text header added to ensure translation
      
      * using submitTaskState instead of API request state
      
      * onDataPrivacyClick() function added in the relevant viewModel
      
      * long strings divided
      
      * legal strings updated
      
      * added navigation to mainfragment
      removed unnecessary cases
      fixed colors for under16 layout
      fixed country list in layout
      added onDataPrivacyClick method in own ViewModel
      refactored color value
      
      * minor changes in navigation
      9d7c8906
  5. Dec 01, 2020
  6. Nov 30, 2020
  7. Nov 27, 2020
  8. Nov 26, 2020
  9. Nov 25, 2020
  10. Nov 24, 2020
  11. Nov 23, 2020
  12. Nov 20, 2020
  13. Nov 19, 2020
  14. Nov 18, 2020
  15. Nov 17, 2020
  16. Nov 16, 2020
  17. Nov 13, 2020
  18. Nov 11, 2020
    • Matthias Urhahn's avatar
      New quota error (EXPOSUREAPP-3511) (#1569) · 0753c49c
      Matthias Urhahn authored
      
      * Show more specific error message when quota limit is reached and remove "Update ever 24h text".
      
      * Show custom title in error dialog and make stack trace selectable.
      
      * LINTs
      
      * Add a log statement so that in all cases the the base error reporting is made visible.
      
      Co-authored-by: default avatarharambasicluka <64483219+harambasicluka@users.noreply.github.com>
      0753c49c
    • Matthias Urhahn's avatar
      Update Risk Score more than once a day (EXPOSUREAPP-3455) (#1550) · 3e6e7b28
      Matthias Urhahn authored
      
      * Replaced KeyFileDownloader.kt in favor of KeyFileSyncTool.kt.
      Supports new logic for more frequent downloads
      First draft.
      
      * Change "country" to location, which is more fitting.
      
      * Split sync success tracking into days and hours, track them separately.
      
      * Fix stale location data not being cleaned up.
      
      * Test fragment, first drafts.
      Remove 24 hour mode options, no longer used.
      
      * Implemented metered connection check for hourly key download.
      
      * Provide timeout values for download transaction and individual downloads via app config.
      
      * Add clear+download actions, and current network state display to the key download test fragment.
      
      * Complete unit tests for KeyDownloadTool.kt
      
      * Complete unit tests for FlowPreference and DownloadConfigMapper-
      
      * Unit tests for day and hour sync tool.
      
      * Complete tests for KeyPackageSyncTool.kt
      
      * klint & detekt <3
      
      * Fix tags and commented out code (the deletion behavior is covered by `getting completed keys`
      
      * Fix text typo.
      
      * Sync tools need to tell what (if) new packages have been downloaded.
      
      * Interval checks for exposure detection.
      
      * Use the ENFClient, avoid direct access to the calculation tracker.
      
      * Remove defensive check "wanted countries"/"available countries" to reduce server hits.
      
      * CalculationTracker's timeout should come from the AppConfig (androidExposureDetectionParameters.overallTimeoutInSeconds)
      
      * Add test to confirm that we delete stale locations.
      
      * Finished key packages test screen.
      Introduced some boilerplate code to make async diffutils easier to use (will help us with the homefragment later on).
      
      * Remove ETag fallback behavior, missing ETag is such an edge case that we should throw.
      
      * Check valid max and min config values.
      
      * Fix linting issues.
      
      * Address PR comments.
      
      * EXPECT_NEW_*_PACKAGES should be based on the package time data, not the download creation timestamp.
      The downloads creation timestamp can be subject to race conditions.
      
      * Fix overflow due to time addition with Long.MAX_VALUE
      
      * Clean up tests
      
      * Don't crash the task if we can't get today's hour index.
      (Makes timetravel testing difficult, and a real abort reason would be a crash on the day index)
      
      * Display errors (don't crash) when running manual keysync from the test menu.
      
      * Fix last day/hour sync result success state not being updated.
      
      * Change Key download task collision mode from ENQUEUE to SKIP_IF_SIBLING_RUNNING.
      
      * Rename CalculationTracker to ExposureDetectionTracker
      
      * Rename `forceSync` to `forceIndexLookup`.
      
      * Remove outdated comments.
      
      * Spell out viewholder.
      
      * Move `maxExposureDetectionsPerUTCDay == 0` into it's own check.
      
      * Change test menu metered connection button behavior. It's now a button that "fakes" the connection status to metered.
      It's now also part of the `TestSettings` and the connection state is faked for the `NetworkStateProvider` class which may be reused.
      
      * Change test menu metered connection button behavior. It's now a button that "fakes" the connection status to metered.
      It's now also part of the `TestSettings` and the connection state is faked for the `NetworkStateProvider` class which may be reused.
      
      * Dry sync/error logging call.
      
      * Improve parameter naming, it's target locations, not available locations.
      The app config alone determines which locations we try to sync.
      
      Co-authored-by: default avatarBMItter <46747780+BMItter@users.noreply.github.com>
      3e6e7b28
  19. Nov 10, 2020
    • Matthias Urhahn's avatar
      Improved app config handling (Identifier, local fallback) (DEV) (#1553) · 22f36224
      Matthias Urhahn authored
      
      * Add default app config as last resort fallback.
      
      * Change config type names and improve logging for HotDataFlow.kt
      
      * Run the app config retrieval on the app scope, otherwise UI unsubscription could cancel the app config retrieval.
      
      * Offer "identifier" property that can identify app configs such that subscribers know when it is considered changed.
      
      * Behavior change AppConfigProvider.kt, there is no caching/replay grace period, once the last subscription is gone, it's  last value is cleared.
      
      * Klint ;)
      
      * Add a unit test specifically for checking the default configs checkum and parsability.
      
      * Fix test breaking on CI.
      
      * Don't check the checksum for the config loaded from assets.
      
      Co-authored-by: default avatarharambasicluka <64483219+harambasicluka@users.noreply.github.com>
      22f36224
  20. Nov 09, 2020
  21. Nov 06, 2020
  22. Nov 05, 2020
    • Matthias Urhahn's avatar
      Improved AppConfig logic for 1.7.x and 1.8.x (EXPOSUREAPP-3455) (#1520) · 647848d6
      Matthias Urhahn authored
      
      * Split and hide the protobuf config behind interfaces with individual mappers responsible for creating the desired formats.
      
      * Merge branch 'release/1.7.x' into feature/3455-more-frequent-riskscore-updates-configs
      
      # Conflicts:
      #	Corona-Warn-App/src/deviceForTesters/java/de/rki/coronawarnapp/test/risklevel/ui/TestRiskLevelCalculationFragmentCWAViewModel.kt
      #	Corona-Warn-App/src/main/java/de/rki/coronawarnapp/transaction/RiskLevelTransaction.kt
      #	Corona-Warn-App/src/test/java/de/rki/coronawarnapp/transaction/RiskLevelTransactionTest.kt
      
      * Make the AppConfig observable.
      Provide the server time offset.
      Offer a lastUpdatedAt timestamp.
      Add an app config specific test screen.
      Clean up test screens a bit and move debug options out of API test options.
      
      * Fix test regression due to refactoring (moved code around).
      
      * Store the server timestamp and offset at retrieval.
      Switch to config storage via json to be able to store additional meta data fields (i.e. time).
      
      * KLint and Me have a hate relationship based on both mutual admiration.
      
      * Fix time offset parsing being locale dependent.
      
      * Fix broken unit tests.
      
      * Improve offset accuracy, move before unzipping.
      
      * Fix overly long livedata subscription to results (viewmodel scope vs observer scope)
      
      * Add mapping for the new protobuf configs + tests.
      
      * For cached (retrofit) response, we need to check the cacheResponse and its timestamps
      to determine an accurate time offset.
      
      * Exposure a boolean property to tell us when a fallback config is being used.
      
      * Hide the observable flow<ConfigData> behind a method that can automatically triggers refreshes.
      
      * Use a common mapper interface.
      
      * Address PR comments and KLints.
      
      * Fix refactoring regression.
      
      * Improve config unzipping code.
      
      * Add flag to forward exception thrown during HotDataFlow.kt initialization.
      
      * Don't specify a default context via singleton.
      
      * Move download and fallback logic into it's own class just responsible for sourcing the config: "AppConfigSource".
      "AppConfigProvider" is now only responsible for making it available.
      
      * Simplify current concepts for making the app config observable until we have a default configuration.
      
      * Improve app config test screen, delete options, better feedback.
      Show toast instead of crash on errors.
      
      * Fixed GSON serialization not encoding/decoding the byte array correctly.
      Added specific type adapters for instant and duration to get cleaner json.
      
      * Remove type adapters from base gson due to conflict with CalculationTrackerStorage.
      
      * We want to default to forced serialization of instant by our converters, instead of using the default serialization which will differ
      between Java8.Instant and JodaTime.Instant, to prevent future headaches there, register explicit converters by default,
      and overwrite them if necessary (currently only needed for CalculationTrackerStorage.kt).
      
      * Improve AppConfigServer code readability by moving code into extensions.
      
      * Fix merge conflicts
      
      * Throw a more specific exception if gson type decoding fails due to malformed base64 encoding.
      
      * Add unit test for Gson ByteArrayAdapter.
      
      Co-authored-by: default avatarharambasicluka <64483219+harambasicluka@users.noreply.github.com>
      647848d6
Loading