Skip to content
Snippets Groups Projects
  1. Oct 07, 2020
    • Matthias Urhahn's avatar
      Introduce VM injection for home screen and enable screen testing... · b4f32951
      Matthias Urhahn authored
      Introduce VM injection for home screen and enable screen testing (EXPOSUREAPP-2946, EXPOSUREAPP-2948) (#1320)
      
      * Rename "MainFragment" to "HomeFragment"
      Add VM injection.
      Move initial logic into VM.
      
      TODO: Move more code, write more tests.
      
      * Additional refactoring, moving logic out of the Fragment.
      Moving code into their own encapsulated routines/components.
      Use composition to reuse TracingViewModel, SettingsViewModel and SubmissionViewModel
      
      * Introduce @AppContext annotation to prevent anyone mistaking it for something else.
      
      * Add VM to RiskDetailsFragment
      
      * Simplify nested viewmodels, here: TracingViewModel.kt
      
      * Add skeletons instrumentation test skeleton for single fragments with injection and mocking.
      
      * Address PR comments.
      
      * Introduce sealed events class, + some refactoring.
      
      * Make the linter happy.
      b4f32951
  2. Oct 01, 2020
    • Matthias Urhahn's avatar
      Solve unreliable tests (#1266) · 5001d7a9
      Matthias Urhahn authored
      * Fix unreliable test.
      Random could be randomly 0 which would fail the test.
      
      * Create types for buildflavors to prevent string comparison.
      Use these build variants for specific tests.
      
      * Don't assign the times variable to a final value as it breaks tests.
      Until refactored, it's okay to recalculate this.
      
      * Remove a few sonar code smells.
      
      * Fix broken instrumentation test for key verification.
      Add matching binary, signature and pubkey from pod.
      5001d7a9
  3. Sep 18, 2020
    • Matthias Urhahn's avatar
      Revert "Interoperability to 1.5.X (#1173)" · c419ae66
      Matthias Urhahn authored
      This reverts commit 6054bf57.
      c419ae66
    • Jakob Möller's avatar
      Interoperability to 1.5.X (#1173) · 6054bf57
      Jakob Möller authored
      
      * Added first set of country flags
      
      Signed-off-by: default avatarKolya 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: default avatarKolya 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: default avatarMert Safter <mert.safter@sap.com>
      Co-authored-by: default avatarMatthias 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: default avatarMatthias 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: default avatarKolya Opahle <k.opahle@sap.com>
      
      * Fail tests on unexpected null.
      
      Co-authored-by: default avatarMatthias Urhahn <matthias.urhahn@sap.com>
      
      Co-authored-by: default avatarKolya Opahle <k.opahle@sap.com>
      Co-authored-by: default avatarapopovsap <66370584+apopovsap@users.noreply.github.com>
      Co-authored-by: default avatarMert Safter <69803294+MertSafter@users.noreply.github.com>
      Co-authored-by: default avatarMert Safter <mert.safter@sap.com>
      Co-authored-by: default avatarMatthias Urhahn <matthias.urhahn@sap.com>
      Co-authored-by: default avatarMatthias Urhahn <darken@darken.eu>
      6054bf57
  4. Sep 11, 2020
    • Matthias Urhahn's avatar
      Overhaul of DiagnosisKey related Download and Caching Mechanisms (EXPOSUREAPP-2469) (#1136) · f7f185a3
      Matthias Urhahn authored
      
      * 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: default avatarMatthias Urhahn <matthias.urhahn@sap.com>
      f7f185a3
  5. Jun 11, 2020
  6. Jun 09, 2020
  7. Jun 07, 2020
  8. Jun 04, 2020
    • ksergeevit's avatar
      Tests/util (#167) · afc10b9e
      ksergeevit authored
      * util tests
      
      * util tests
      
      * util tests + persistence tests
      
      * more persistence tests
      afc10b9e
    • ksergeevit's avatar
      Tests/util (#162) · 72847c74
      ksergeevit authored
      * util tests
      
      * util tests
      
      * util tests + persistence tests
      72847c74
  9. Jun 02, 2020
  10. May 30, 2020
Loading