@@ -4,25 +4,27 @@ correctly convert between resource/client shapes for all operations
4
4
supported by DBESDK.
5
5
6
6
The only shapes that require conversion are
7
- * ` AttributeValue ` s (DDB items or keys)
8
- * Client format example: ` {"S": "some string"} `
9
- * Resource format example: ` "some string" `
10
- * ConditionExpressions (` KeyConditionExpression ` or ` FilterExpression ` ; only resource-to-client)
11
- * Client shape ex.:
12
- * KeyConditionExpression: ` "attr : :value" `
13
- * ExpressionAttributeValues: ` {":value" : {"S" : "some value}} `
14
- * Resource shape ex.:
15
- * KeyConditionExpression: ` Attr("attr").eq("some value") `
16
- * (Resources also support the client-style string expression)
7
+
8
+ - ` AttributeValue ` s (DDB items or keys)
9
+ - Client format example: ` {"S": "some string"} `
10
+ - Resource format example: ` "some string" `
11
+ - ConditionExpressions (` KeyConditionExpression ` or ` FilterExpression ` ; only resource-to-client)
12
+ - Client shape ex.:
13
+ - KeyConditionExpression: ` "attr : :value" `
14
+ - ExpressionAttributeValues: ` {":value" : {"S" : "some value}} `
15
+ - Resource shape ex.:
16
+ - KeyConditionExpression: ` Attr("attr").eq("some value") `
17
+ - (Resources also support the client-style string expression)
17
18
18
19
The conversion logic will recursively traverse inpuyt/output shapes to find shapes that require conversion, then convert them.
19
20
(ex. for boto3 Table [ put_item] ( https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/dynamodb/table/put_item.html ) ),
20
21
the following kwargs MUST be converted from resource to client format:
21
- * ` ["Item"] `
22
- * ` ["Expected"][<table_name>]["Value"] `
23
- * ` ["Expected"][<table_name>]["AttributeValueList"] `
24
- * ` ["ConditionExpression"] `
25
- * ` ["ExpressionAttributeValues"] `
22
+
23
+ - ` ["Item"] `
24
+ - ` ["Expected"][<table_name>]["Value"] `
25
+ - ` ["Expected"][<table_name>]["AttributeValueList"] `
26
+ - ` ["ConditionExpression"] `
27
+ - ` ["ExpressionAttributeValues"] `
26
28
27
29
The requests, responses, and items in the parent directory are shared between the integ tests and these unit tests.
28
30
The integ tests send the exact request that whose client/resource conversion is tested in the unit tests,
0 commit comments