Conversation
Merge to `main` for 4.2.0 release
Downmerge `main` to `dev` after v4.2.0 release
* Implement TestableNetworkRequest using @testable import for access to NetworkRequest Override Equatable and Hashable implementations for use in testing comparisons * Refactor NetworkRequestHelper data properties to use new TestableNetworkRequest as keys Refactor usages to use TestableNetworkRequest methods Rename setResponseFor to addResponseFor to more accurately reflect what the method does * Refactor Mock and RealNetworkService based on changes to NetworkServiceHelper * Refactor UpstreamIntegrationTests based on changes to RealNetworkService * Add convenience init to TestableNetworkRequest and update usages * Update implementation to use lowercased string comparison and hash for alignment * Reorder operations to avoid race condition in MockNetworkService By doing the countdown AFTER notifying the completion handler, awaits on the expected network request can properly gate the rest of the test case logic (for example, if the test case resets the mock network service, there isn't a race condition between the reset and the get mock response, due to prematurely ungated await) * Remove unused NetworkService isCustomEquals method * Update docs to reflect actual method name * Align the logical implementations of isEqual and hash * Refactor networkResponses data struct to be 1:1 request to response Refactor related logic for getting and setting, and usage sites * Add method and class docs for TestableNetworkRequest * Remove defaultMockResponse property, and place it inline with only place it is used * Update method doc for getResponseFor
* Update method names and params to be more Swiftlike # Conflicts: # Tests/TestUtils/MockNetworkService.swift # Tests/TestUtils/NetworkRequestHelper.swift # Tests/TestUtils/RealNetworkService.swift # Tests/UpstreamIntegrationTests/UpstreamIntegrationTests.swift * Rename setMockResponse to addMockResponse due to underlying behavior Rename setExpectationForNetworkRequest to be more Swifty # Conflicts: # Tests/TestUtils/MockNetworkService.swift * Add method documentation for NetworkService testing classes Rename timeout to expectationTimeout to clarify timeout intent Refactor logic to remove waiting in getResponses, and rely on await in assertAllNetworkRequestExpectations # Conflicts: # Tests/TestUtils/MockNetworkService.swift # Tests/TestUtils/NetworkRequestHelper.swift # Tests/TestUtils/RealNetworkService.swift # Tests/UpstreamIntegrationTests/UpstreamIntegrationTests.swift * Reapply the method naming Update method documentation * Method naming consistency * Doc wording standardization * Update method doc wording
* Refactor NetworkRequestHelper networkResponses to be 1:many request to responses Rename set method to add to better reflect actual logic Refactor usages * Refactor NetworkRequestHelper getResponse to getResponses * Refactor RealNetworkService getResponse to getResponses Refactor usages * Create new method for NetworkRequestHelper to remove all responses for a given request * Refactor MockNetworkService set and get network response methods Use new clear all responses helper method to clear existing mocks
* JSON comparison parity (utility only) (#401) * Remove custom helper enums and refactor usages Update documentation and code logic to match Android implementation * Apply lint autocorrect * Revert "Apply lint autocorrect" This reverts commit 7f38d19. * Apply lint autocorrect * Reduce wordiness of file and line param descriptions * Update documentation null to nil * Update file and line param descriptions * Add method documentation to all helper methods Update param name of extractArrayStyleComponents to be more intuitively descriptive * JSON comparison parity - test cases (#402) * Achieves parity with the Android Edge test setup for JSON comparison Splits coverage into parameterized and special case tests, and update provides more comprehensive systematic coverage * Add additional test cases to validate type mismatch detection and all boolean cases Update index helper comments based on changed values * Update failure cases to check for unintended type casting * Fix comment typo * Extract inline actual AnyCodable creation to separate line for clarity * Refactor wildcard index logic (#416) * Refactor wildcard index access to flatten logic since different condition and replacement groups are not needed * Reformat method documentation to bring them all together * Rename variables to better reflect what each one stores * Refactor wildcard array index extraction to strictly validate format Extract wildcard array index extraction logic into separate function Update usages, test cases, and method documentation * Update test failure message to include example format * Rename `extractArrayStyleComponents` and update method docs (#418) * Rename the extractArrayStyleComponents -> extractArrayFormattedComponents to better reflect actual behavior Update method documentation to reflect the rename and to better explain the logic * Update parameter description * Update method description * Include information about removing escape character
* Add cron schedule to integration test job * Remove unused cron schedule Update doc to mention how to convert back to PST
* Update Experience Event class for Datastream Config Override Feature (#397) * Modify Experience event class to add datastreamIdOverride and datastreamConfigOverride fields. * Updates based on reviews * format fixes * Review updates * Add more unit test --------- Co-authored-by: Kevin Lind <40409666+kevinlind@users.noreply.github.com> * Update documentation for Datastream Override Feature (#399) * Update documentation for datastream override feature * Added objective c sample and made changes based on reviews * Formatting fixes * Updates based on reviews * Datastream Id Override and Datastream Config Override Implementation (#398) * Implemented Datastream Id override and Datastream config override feature. Refactored processHit function for readability and swift lint warnings. * Added unit tests for the override feature * Add Functional tests * formatting fix * Refactored code based on reviews * Updates based on reviews * More review updates * Test update * Updates based on reviews * Update Codecov configuration * Added upstream integration tests for configOverrides feature (#413) * Added upstream integration tests for configOverrides feature * Updates based on reviews * Assert errors * format fixes * Moved ConfigOverrides test in a separate file. Moved helpers to TestBase and TestHelpers. Refactored some helper code to make it extensible and reusable. * Move edge helpers to a separate extension of TestBase * Updates based on reviews * Updates based on reviews * More updates based on reviews * Skipping tests till Konductor issue PDCL-11131 is fixed --------- Co-authored-by: Kevin Lind <40409666+kevinlind@users.noreply.github.com> Co-authored-by: Emilia Dobrin <33132425+emdobrin@users.noreply.github.com>
* Bump version for 4.3.0 release * Update pods
emdobrin
approved these changes
Oct 25, 2023
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Related Issue
Motivation and Context
How Has This Been Tested?
Screenshots (if appropriate):
Types of changes
Checklist: