Skip to content

Commit e7d2917

Browse files
Merge pull request #3870 from SFDO-Tooling/W-17621812/select_validations
@W-17621812: Update _get_required_permission_types to handle SELECT operations
2 parents 1d90c46 + fe9173e commit e7d2917

5 files changed

Lines changed: 9 additions & 7 deletions

cumulusci/tasks/bulkdata/mapping_parser.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -338,7 +338,10 @@ def _get_required_permission_types(
338338
self, operation: DataOperationType
339339
) -> T.Tuple[str]:
340340
"""Return a tuple of the permission types required to execute an operation"""
341-
if operation is DataOperationType.QUERY:
341+
if (
342+
operation is DataOperationType.QUERY
343+
or self.action is DataOperationType.SELECT
344+
):
342345
return ("queryable",)
343346
if (
344347
operation is DataOperationType.INSERT

cumulusci/tasks/bulkdata/step.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
from contextlib import contextmanager
1010
from itertools import tee
1111
from typing import Any, Dict, List, NamedTuple, Optional, Union
12+
from urllib.parse import quote
1213

1314
import requests
1415
import salesforce_bulk
@@ -955,9 +956,7 @@ def _determine_limit_clause(self, total_num_records):
955956
def _execute_soql_query(self, select_query, query_fields):
956957
"""Executes the SOQL query and returns the flattened records."""
957958
query_records = []
958-
response = self.sf.restful(
959-
requests.utils.requote_uri(f"query/?q={select_query}"), method="GET"
960-
)
959+
response = self.sf.restful(f"query/?q={quote(select_query)}", method="GET")
961960
query_records.extend(self._flatten_response_records(response, query_fields))
962961

963962
while not response["done"]:

cumulusci/tasks/bulkdata/tests/cassettes/TestSelect.test_select_similarity_select_and_insert_strategy.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -225,7 +225,7 @@ interactions:
225225

226226
- request:
227227
method: GET
228-
uri: https://orgname.my.salesforce.com/services/data/v62.0/query/?q=SELECT%20Id,%20TYPEOF%20Who%20WHEN%20Contact%20THEN%20LastName,%20Email%20WHEN%20Lead%20THEN%20LastName,%20Company%20ELSE%20Id%20END,%20TYPEOF%20What%20WHEN%20Account%20THEN%20Name,%20Description,%20Phone,%20AccountNumber%20ELSE%20Id%20END,%20Subject,%20DurationInMinutes,%20ActivityDateTime%20FROM%20Event
228+
uri: https://orgname.my.salesforce.com/services/data/v62.0/query/?q=SELECT%20Id%2C%20TYPEOF%20Who%20WHEN%20Contact%20THEN%20LastName%2C%20Email%20WHEN%20Lead%20THEN%20LastName%2C%20Company%20ELSE%20Id%20END%2C%20TYPEOF%20What%20WHEN%20Account%20THEN%20Name%2C%20Description%2C%20Phone%2C%20AccountNumber%20ELSE%20Id%20END%2C%20Subject%2C%20DurationInMinutes%2C%20ActivityDateTime%20FROM%20Event
229229
body: null
230230
headers: *id004
231231
response:

cumulusci/tasks/bulkdata/tests/cassettes/TestSelect.test_select_similarity_select_and_insert_strategy_bulk.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -225,7 +225,7 @@ interactions:
225225

226226
- request:
227227
method: GET
228-
uri: https://orgname.my.salesforce.com/services/data/v62.0/query/?q=SELECT%20Id,%20TYPEOF%20Who%20WHEN%20Contact%20THEN%20LastName,%20Email%20WHEN%20Lead%20THEN%20LastName,%20Company%20ELSE%20Id%20END,%20TYPEOF%20What%20WHEN%20Account%20THEN%20Name,%20Description,%20Phone,%20AccountNumber%20ELSE%20Id%20END,%20Subject,%20DurationInMinutes,%20ActivityDateTime%20FROM%20Event
228+
uri: https://orgname.my.salesforce.com/services/data/v62.0/query/?q=SELECT%20Id%2C%20TYPEOF%20Who%20WHEN%20Contact%20THEN%20LastName%2C%20Email%20WHEN%20Lead%20THEN%20LastName%2C%20Company%20ELSE%20Id%20END%2C%20TYPEOF%20What%20WHEN%20Account%20THEN%20Name%2C%20Description%2C%20Phone%2C%20AccountNumber%20ELSE%20Id%20END%2C%20Subject%2C%20DurationInMinutes%2C%20ActivityDateTime%20FROM%20Event
229229
body: null
230230
headers: *id004
231231
response:

cumulusci/tasks/bulkdata/tests/cassettes/TestSelect.test_select_similarity_strategy.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ interactions:
4848

4949
- request:
5050
method: GET
51-
uri: https://orgname.my.salesforce.com/services/data/v62.0/query/?q=SELECT%20Id,%20Name,%20Description,%20Phone,%20AccountNumber%20FROM%20Account
51+
uri: https://orgname.my.salesforce.com/services/data/v62.0/query/?q=SELECT%20Id%2C%20Name%2C%20Description%2C%20Phone%2C%20AccountNumber%20FROM%20Account
5252
body: null
5353
headers: *id004
5454
response:

0 commit comments

Comments
 (0)