- Sep 18, 2020
-
-
Jakob Möller authored
* Added first set of country flags Signed-off-by:
Kolya Opahle <k.opahle@sap.com> * Added first implementation of Submission Country Selection Screen. (Currently not part of nav graph). Moved stuff inside of submission package into subpackages Signed-off-by:
Kolya Opahle <k.opahle@sap.com> * Added missing changes to nav_graph file * Test Menu options for Country selection and Measurement (EXPOSUREAPP-2229) (#1086) * Implement country filter (#2229) * Implement measure for Risk calculation and Key Retrieval (#2229) * Some code cleanup for measureRiskLevelAndKeyRetrieval * Some code cleanup (#2229) * Implement usage of AppConfig usage for country codes (#2229) * change CURRENT_COUNTRY val to var * Suppress "LongMethod" warning (#2229) * Adjust unit tests to respect new country filter * Align with backend for app config country property name * Display total file size of keys in results (#2229) * Fix linting issue * Update strings.xml files * Do refactoring and some code clean up * Move RiskLevel and Key retrieval measurement in own class * Move code in logical classes. Remove translation in test fragment * Fix linting and Unit tests * Remove 3hour boolean check from debug class. * Refactor CountryWrapper and missing dates check. * Fix linting and Unit tests * Add Unit test for getMissingDates * Code cleanup * Hide keyboard on action * Extend statistics for api submission * Set callback to null after invoked Co-authored-by:
Mert Safter <mert.safter@sap.com> Co-authored-by:
Matthias Urhahn <matthias.urhahn@sap.com> * Overhaul of DiagnosisKey related Download and Caching Mechanisms (EXPOSUREAPP-2469) (#1136) * Rework of keyfile download and caching. * Supports interop * More modular for better testing and build flavour based behavior adjustments * More resilient handling of failed downloads * Preperations for future hourly download and serverside checksums TODO: Finish unit tests, keycache migration and cache health check * First batch of unit tests and some fixes for incorrect behavior that the tests surfaced. * Added unit tests for the KeyCacheRepository TODO: Tests for downloader and migration. * Implemented POC for migration old key files. * Fixed legacy file migration and cleanup, improved logging. * Added unit tests for legacy key file migration. * Add fallback for different file hashes in the header. * Yes kLint, we know it's a long method, but for this it's better to read it in one block vs jumping to extra methods. * More linting issues, adjusting project code style prevent a few of these in the future. * Added missing unit tests for `KeyFileDownloader` and fixed faulty behavior that was noticed during testing. * CRUD (instrumentation) test for `KeyCacheDatabase` * Remove unused `FileStorageHelper` and related constants+tests. * Fix last3Hours unit test in deviceRelease mode, we need to explicitly enable debug for these tests. * Until we have more information about the hashsum's format in the header, default to `ETag * Split app config server API from diagnosis key download API, and reintroduce caching for the app config download. * Add test to check that the cache is used on flaky connections. * Code changes based on PR comment, part #1. * Code fluff, formatting. * Handle download errors correctly. * Refactoring: * Remove unnecessary `currentDate` we always start with the newest date from the servers index. * Make a specialised class for header validation * Let legacy cache migration abort early, depending on whether the key dir exists. * If we can't create the base directory for the key repo, throw an exception. * Delete cache entry if a download fails. * Fixed test regression due to refactoring. * Consolidate staleness check into `getStale` * Consolidate clean up for failed downloads into the download method. Added tests to check that we delete the keycache entry if the download fails (which we didn't for hours :O!) * Because the hour-mode uses caching too, we add an explicit button to the test menu that clears the cache. * Add comment with reference to ticket regarding follow up on the other headers. * Move expected storage size per country into a named constant. Co-authored-by:
Matthias Urhahn <matthias.urhahn@sap.com> * Implementation of tests for the interoperability countries selection screen (EXPOSUREAPP-2439) (#1140) * Added initial set of viewModel tests Signed-off-by:
Kolya Opahle <k.opahle@sap.com> * Fail tests on unexpected null. Co-authored-by:
Matthias Urhahn <matthias.urhahn@sap.com> Co-authored-by:
Kolya Opahle <k.opahle@sap.com> Co-authored-by:
apopovsap <66370584+apopovsap@users.noreply.github.com> Co-authored-by:
Mert Safter <69803294+MertSafter@users.noreply.github.com> Co-authored-by:
Mert Safter <mert.safter@sap.com> Co-authored-by:
Matthias Urhahn <matthias.urhahn@sap.com> Co-authored-by:
Matthias Urhahn <darken@darken.eu>
-
- Sep 17, 2020
-
-
Matthias Urhahn authored
* Reduce boilerplate code for fragment view setup. * Fix klint issue + change codestyle to match klint. * Fixed regressions in `MainFragment` in `device` buildflavor * Fix kotlin upgrade regression * Disable KotlinNothingValueException in Kotlin 1.4 until kotest/mockk can handle it. * Make "binding.lifecycleOwner = this" automatic. * Addressed PR comments. * build issue to due mixing branches Co-authored-by:
Matthias Urhahn <matthias.urhahn@sap.com>
-
Matthias Urhahn authored
* DI: ViewModel (VDC) injection wiring + example in TestRiskLevelCalculation.kt * Refactoring the TestRiskLevel fragment to demo our new viewmodel approach. Part1 * Refactoring the TestRiskLevel fragment to demo our new viewmodel approach. Part2 * Fix `Unexpected indentation (expected 4, actual 8)` * Code fluff * klint * Remove empty test + klint * Rename VDC to CWAViewModel * Add example unit tests for the TestFragment's ViewModel. * Revert AppInjector renaming. * Comments explaining the code. * Rename class to make it's purpose less confusing. * Revert "Rename class to make it's purpose less confusing." This reverts commit c80298bb * Rename class to make it's purpose less confusing. * Simpler ViewModel Injection example. * klint <3 Co-authored-by:
Matthias Urhahn <matthias.urhahn@sap.com>
-
- Sep 01, 2020
-
-
Oliver Zimmerman authored
* Removed blanked internet connection UI state. New Dev base for pipeline issues Removed the blanket internet connection status: Removed the connection state from TracingStatusHelper Adjusted formatters which use the adjusted TracingStatusHelper Removed connection logic from various fragments (SettingsTracingFragment, etc.) Adjusted XML views (Settings Fragment: no connection card, etc.) Adjusted automated tests that previously included the connection state. Closes JIRA task EXPOSUREAPP-1572 * Update FormatterSettingsHelperTest.kt * Update fragment_main.xml deviceForTesters was still using connection state. * Update Project.xml * Update FormatterSettingsHelperTest.kt Co-authored-by:
harambasicluka <64483219+harambasicluka@users.noreply.github.com>
-
- Aug 26, 2020
-
-
Matthias Urhahn authored
* Disable klint debug output to make it easier to find the actual error in the log. * Setup jUnit5 & kotest. * Add base classes for testing to setup log output. * Introduce class `DeviceStorage` to check (or request on newer APIs) free space. Rel. EXPOSUREAPP-2259 * Add test cases for failure modes. * Make it obvious that the check should not be executed on the ui thread. * Try fall back to legacy method if the API26+ version fails. If that also fails, throw the exception and let the caller handle it. * Wire up injection annotations. * Remove unused mockito testing dependency. * klint... Co-authored-by:
Matthias Urhahn <matthias.urhahn@sap.com> Co-authored-by:
Jakob Möller <jakob.moeller@sap.com>
-
- Aug 24, 2020
-
-
Matthias Urhahn authored
* Ship a common codeStyle that matches KLint. * The config for newlines at end of files should also have a new line at it's end :D. Co-authored-by:
Matthias Urhahn <matthias.urhahn@sap.com> Co-authored-by:
Jakob Möller <jakob.moeller@sap.com>
-