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

dev -> staging [NON-RELEASE] #165

Merged
merged 9 commits into from
Oct 14, 2024
Merged

dev -> staging [NON-RELEASE] #165

merged 9 commits into from
Oct 14, 2024

Conversation

timkimadobe
Copy link
Contributor

@timkimadobe timkimadobe commented Oct 1, 2024

Description

This PR merges updates to:

  1. Adopt AEPTestUtils:
    1. Unit test AEPTestUtils update (part 1) #153
    2. Unit test AEPTestUtils update (part 2) #154
    3. Integration test AEPTestUtils migration #158
    4. Functional test AEPTestUtils update #159
    5. Update AEPTestUtils to 3.0.0 #164
    6. Integration test dynamic Edge domain #166
    7. Integration test workflow updates #167
  2. Improve integration test workflow
    1. Add cron job and parameterized environment file ID: Integration test - parameterized mobile property ID #163

Related Issue

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

  • I have signed the Adobe Open Source CLA.
  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

kevinlind and others added 8 commits April 2, 2024 13:06
Merge to Main for v3.0.0 release
* Update AEPTestUtils dependency version to latest

* Update EdgeEventHandleTests.java to use JSON comparison APIs

* Update AEPTestUtils to latest version

* Update EdgeExtensionTest.java to use JSON comparison APIs

* Update EdgePublicAPITests.java to use JSON comparison APIs

* Update EventUtilsTests.java to use JSON comparison APIs

* Update AEPTestUtils to latest version

* Update ExperienceEventSerializerTest.java to use JSON comparison APIs

* Apply lint formatting

* Apply lint formatting

* Update NetworkResponseHandlerTest.java to use JSON comparison APIs

* Apply lint formatting

* Remove unused var

* Revert test utils dependency change for functional tests

* Update AEPTestUtils to latest version

* Update path option constructor usage to new format

Static import Subtree scope for simplified usage

* Remove redundant assertions from testSerialize_returnsValidMap_whenEventWithoutCustomData

* Apply lint formatting

* Update comparison condition for testSendEvent_whenValidData_sendsEvent to constrain top level collection key count

* Remove unneeded throws InterruptedException
* Update RequestBuilderTest.java test cases to use JSON comparison APIs pt1

* Update RequestBuilderTest.java test cases to use JSON comparison pt2

Also remove newline chars in JSON string construction for less visual clutter
Replace custom time formatting helper logic with standard provided by Core

* Apply lint formatting

* Convert assertExactMatch to static import

* Update AEPTestUtils to latest

* Update EdgeNetworkServiceTest.java to use MockNetworkService and MockConnection from AEPTestUtils

* Remove jackson-databind dependency and update usages in RequestBuilderTest.java
* Replace local test utils dependency with AEPTestUtils

* Update UpstreamIntegrationTests.kt to use latest JSON comparison APIs

* Update ConfigOverridesIntegrationTests.kt to use JSON comparison assertEquals

Import the junit.Assert.assertEquals method so prefix is not required

* Fix UpstreamIntegrationTests.kt usage of JSON comparison APIs to explicitly use AnyOrderMatch where required

Fix testSendEvent_withPriorState_receivesExpectedStateStoreEventHandle test setup by adding expectation assertion

* Update AEPTestUtils to latest version

* Fix JSON assertion to use assertExactMatch in testSendEvent_withInvalidDatastreamIdOverride_receivesErrorResponse

* Update tearDown to reset all helpers in UpstreamIntegrationTests.kt

* Clean up code comments

* Update AEPTestUtils to latest version

* Update JSON comparison API to use default mode with more cases

* Update test case logic to better reflect intent and update comment

* Static import junit assertion methods and update usages
* Functional test AEPTestUtils update (part 1) (#155)

* Replace local test utils with AEPTestUtils

* Update ConfigOverridesFunctionalTests.kt to use AEPTestUtils

* Remove local test-utils files

* Update CompletionHandlerFunctionalTests.java to use AEPTestUtils

* Update ConsentStatusChangeFunctionalTests.java to use AEPTestUtils

Apply lint formatting

* Update ConfigOverridesFunctionalTests.kt to use static assertExactMatch

* Update AEPTestUtils to the latest version

* Remove unconverted functional tests

* Revert "Remove unconverted functional tests"

This reverts commit 2d0013a.

* Update AEPTestUtils to latest version

* Update CompletionHandlerFunctionalTests.java to use TestableNetworkRequest

* Update ConsentStatusChangeFunctionalTests.java to use TestableNetworkRequest type

Update list get operations to safe versions

* Update ConsentStatusChangeFunctionalTests.java to use TestableNetworkRequest

* ConsentStatusChangeFunctionalTests.java add collection size check before access

* Remove Long conversion for result list size check in ConfigOverridesFunctionalTests.kt

* Functional test AEPTestUtils update (part 2) (#156)

* Update EdgeFunctionalTests.java to use AEPTestUtils

* Apply lint formatting to EdgeFunctionalTests.java

* Update EdgePathOverwriteTests.java to use JSON comparison APIs

* Apply lint formatting for EdgePathOverwriteTests.java

* Update EdgeFunctionalTests.java to use TestableNetworkRequest

Replace local getPayloadJson method and usages

* Update EdgePathOverwriteTests.java to use TestableNetworkRequest

Replace usage of local getPayloadJson

* Update testSendEvent_withXDMDataAndNullData_sendsCorrectRequestEvent to update testValue for clarity

* Apply lint formatting for EdgeFunctionalTests.java and EdgePathOverwriteTests.java

* Update to use stringValue for test case strings in event payloads

* Update EdgeFunctionalTests and TestXDMSchema to use "test" prefixed property names

Add code comments for ElementCount cases to make assertion logic clearer

* Remove test case comments for JSON assertions with actual expected payloads

* Functional test AEPTestUtils update (part 3) (#157)

* Update IdentityStateFunctionalTests.java to use JSON comparison APIs

* Apply lint formatting to IdentityStateFunctionalTests.java

* Update NetworkResponseHandlerFunctionalTests.java to use JSON comparison APIs

* Apply lint formatting for NetworkResponseHandlerFunctionalTests.java

* Update NoConfigFunctionalTests.java to use JSON comparison APIs

* Apply lint formatting for NoConfigFunctionalTests.java

* Update RestartFunctionalTests.java to use AEPTestUtils

* Apply lint formatting to RestartFunctionalTests.java

* Update SampleFunctionalTests.java to use JSON comparison APIs

* Apply lint formatting for SampleFunctionalTests.java

* Update converted test classes to use TestableNetworkRequest and remove local getJsonPayload method

* Add missing step to verify the request is not sent because the configuration state is pending and not because the identity state is not set

* Functional test AEPTestUtils update (part 2) (#156)

* Update EdgeFunctionalTests.java to use AEPTestUtils

* Apply lint formatting to EdgeFunctionalTests.java

* Update EdgePathOverwriteTests.java to use JSON comparison APIs

* Apply lint formatting for EdgePathOverwriteTests.java

* Update EdgeFunctionalTests.java to use TestableNetworkRequest

Replace local getPayloadJson method and usages

* Update EdgePathOverwriteTests.java to use TestableNetworkRequest

Replace usage of local getPayloadJson

* Update testSendEvent_withXDMDataAndNullData_sendsCorrectRequestEvent to update testValue for clarity

* Apply lint formatting for EdgeFunctionalTests.java and EdgePathOverwriteTests.java

* Update to use stringValue for test case strings in event payloads

* Update EdgeFunctionalTests and TestXDMSchema to use "test" prefixed property names

Add code comments for ElementCount cases to make assertion logic clearer

* Remove test case comments for JSON assertions with actual expected payloads

* Update AEPTestUtils to latest version

* Update test case setup for testHandleExperienceEventRequest_withPendingConfigurationState_expectEventsQueueIsBlocked to set an identity state beforehand

* Apply lint formatting for NoConfigFunctionalTests.java

* Add test case comments for clarity

* RestartFunctionalTests.java - update tearDown to reset all test helpers
* Add cron to integration test workflow

* Update integration test workflow and makefile to use new mobile property ID param

Update action versions in workflow

* Rename environment var to MOBILE_PROPERTY_ID

* Update integration tests to use programmatic mobile property ID

Clean up implementation to make better use of reusable logic

* Remove unused method and add documentation for new props and func

* Update Edge Consent version to 3.0.0

* Rename to tags mobile property and usages

Simplify location hint case logic

* Add special location hint cases
* Update AEPTestUtils to 3.0.0

* Fix missing param error

* Clean up location hint options
* Enable dynamic Edge domain fetched from config shared state

* Update createInteractURL to use default edge domain
* Test runner changes

* More test steps

* Update location hint values to be more shell friendly

* Add --info flag to integration test make rule

* Add no metrics flag

* Remove info option and add upload logcat

* Always capture logs

* Try logcat as part of emulator script

* Better log capture?

* Add caching and log output fixes

* Trying to fix switch case

* trying every permutation

* Try matching AVD config

* Try different logic

* disable gradle cache

* Remove all caching

* Bring back caching

* Add branch mismatch warning

* Rename step

* Workflow updates

* Revert location hint helper changes

* Remove unnecessary type and import
@timkimadobe timkimadobe merged commit f737601 into staging Oct 14, 2024
6 checks passed
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.

3 participants