| == Camel Quarkus Salesforce Integration Tests |
| |
| By default, the Salesforce integration tests use WireMock to stub the API interactions. |
| |
| IMPORTANT: Note that when using Wiremock, the Change Data Capture Events test, and the Platform event test are disabled. |
| |
| To run `camel-quarkus-salesforce` integration tests using Salesforce API interactions, you must first create a Salesforce developer account https://developer.salesforce.com/. |
| |
| Next create a new 'Connected App' by visiting Apps -> App Manager page. In the form, enable OAuth Settings, and set those fields. |
| * Set a value for the callback URL (example : https://login.salesforce.com/oauth2/callback](https://login.salesforce.com/oauth2/callback) |
| * Add OAuth Scopes: (example Full access (Full)) |
| |
| You may need to adjust the OAuth policy settings for `Permitted Users` and also `IP Relaxation` rules, depending on your needs. If needed, this can be achieved by visiting Apps -> Connected Apps -> Manage connected apps page. |
| |
| IMPORTANT: If you use defaults settings of a developer account : set `Permitted Users` to `Admin approved users are pre-authorized` and `IP Relaxation` rules to `Relax IP restrictions`. |
| |
| Next add your profile to the list of authorized profiles. Go to App -> App Manager page. Select your connected app, and click on Manage. Scroll to Profiles, and select Manage Profiles. Add your profile to the list. |
| |
| Next enable 'Change Data Capture' for the 'Account' entity by visiting the Integrations -> Change Data Capture page. |
| |
| Next create a new 'Platform Event' named `TestEvent` by visiting the Integrations -> Platform Events. Set Publish Behavior to `Publish Immediately`. Update the Platform Event, add a new Custom Field of type `Text`, named `Test_Field`. Set its length to 30. |
| |
| Next create a document named 'test'. This can be accessed from the Global Actions menu. In case you can't find it, you can switch to Salesforce classical view. |
| |
| You can find the app OAuth settings by choosing the 'view' option from the app manager page. Then set the following environment variables. |
| |
| [source,shell] |
| ---- |
| export SALESFORCE_CLIENTID=your-salesforce-client-id |
| export SALESFORCE_CLIENTSECRET=your-salesforce-client-secret |
| export SALESFORCE_USERNAME=your-salesforce-username |
| export SALESFORCE_PASSWORD=your-salesforce-password |
| ---- |
| |
| To regenerate the Salesforce DTO classes, run `mvn clean generate-sources -Pgenerate-salesforce-dtos`. |