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

feat: test-suite #1315

Merged
merged 112 commits into from
Feb 8, 2024
Merged
Changes from 1 commit
Commits
Show all changes
112 commits
Select commit Hold shift + click to select a range
3dede8d
chore!: Require Swift 5.7, fix deprecation warnings (#1173)
jbelkins Oct 11, 2023
67bc08d
feat: support initial-response in RPC based event streams (#1165)
dayaffe Oct 12, 2023
e2c3de2
chore: bump models (#1178)
sichanyoo Oct 12, 2023
3c5aeac
chore: Updates version to 0.28.0
aws-sdk-swift-automation Oct 12, 2023
a0ce157
add visionOS support to useragent (#1182)
dayaffe Oct 20, 2023
181256b
chore: Remove all models before copying in latest versions (#1185)
jbelkins Oct 23, 2023
1b7cc13
chore: update models (#1187)
jbelkins Oct 24, 2023
868e13b
chore: Update to aws-crt-swift 0.15.0 (#1188)
jbelkins Oct 24, 2023
5366bfc
chore: Updates version to 0.29.0
aws-sdk-swift-automation Oct 25, 2023
8d8baca
chore: Update swiftlint to 0.53.0 (#1192)
jbelkins Oct 26, 2023
7a25895
chore: End the SDK package manifest with a newline (#1203)
jbelkins Oct 30, 2023
d41d7ea
fix: Update CRT dependency to 0.17.0 (#1210)
sichanyoo Oct 31, 2023
668c5ce
chore: Updates version to 0.30.0
aws-sdk-swift-automation Oct 31, 2023
14f3c16
chore: Clean up unnecessary TODOs + move test functions to a better l…
dayaffe Oct 31, 2023
acc51fc
feat: expose presign / presignURL methods in Models.swift to service …
sichanyoo Nov 6, 2023
f3c1413
chore: Bump models in prep for release 0.31.0 (#1218)
jbelkins Nov 7, 2023
387016f
chore: Updates version to 0.31.0
aws-sdk-swift-automation Nov 7, 2023
268a4e2
fix: add s3 control to list of service clients that should have useSi…
dayaffe Nov 9, 2023
dac90d1
Add customizations to auth resolve process.
Oct 4, 2023
dc605a3
Fix swiftlint.
Nov 10, 2023
34e6333
Fix swiftlint.
Nov 10, 2023
47ab250
Refactor setUpBidirectionalStreaming in HttpContext extension to make…
Nov 14, 2023
ee3c28c
Add SigV4Util and refactor signing properties customization of SigV4 …
Nov 14, 2023
75fc81a
Remove duplicate presign flag logic.
Nov 14, 2023
aa43d72
Refactor eventstream message signing to accept any custom signer that…
Nov 14, 2023
eeda38c
Fix swiftlint.
Nov 14, 2023
f06febd
Fix method name in SigV4Util and update usage in auth schemes accordi…
Nov 14, 2023
54639ce
Add tests for SigV4AuthScheme signing properties customization, as we…
Nov 14, 2023
8257784
Refactor or delete deprecated signing components and tests.
Nov 15, 2023
cdd579e
Delete SigV4Config and SigV4Middleware.
Nov 15, 2023
e81e655
SigV4Signer tests - wip.
Nov 16, 2023
1732f96
update SQS to latest model that uses aws json protocol + add integrat…
dayaffe Nov 22, 2023
a4998bc
fix: Fix tests related to operation doc header (#1231)
jbelkins Nov 22, 2023
c23f658
fix: Codegen issues re: recursion, Swift keywords in unions (#1237)
jbelkins Nov 28, 2023
bc62ab4
fix: Integration test crashes on failure, build warning (#1239)
jbelkins Nov 28, 2023
1d63993
feat!: Replace the XML encoder with a custom Smithy implementation (#…
jbelkins Nov 29, 2023
387c62c
chore: Modernize the codegen-build-test CI workflow (#1240)
jbelkins Nov 29, 2023
6b7ac02
chore: Modernize the codegen-build-test-on-comment CI workflow (#1243)
jbelkins Nov 29, 2023
d0db2f3
fix: Fix ref used for smithy-swift checkout in codegen-build-test-on-…
jbelkins Nov 29, 2023
7624f1e
feat!: Use closures for processing HTTP response (#1242)
jbelkins Nov 30, 2023
05cd31f
add IsTruncated pagination customization for S3 ListParts (#1245)
dayaffe Dec 1, 2023
96136a3
feat: Publish documentation to public distribution (#1232)
jbelkins Dec 1, 2023
f3c37d2
fix: Fix script for extracting version from GH ref (#1247)
jbelkins Dec 1, 2023
88779ff
chore: Codegen dev script takes args for manifest generator (#1246)
jbelkins Dec 1, 2023
9b8834b
fix: Use bash to run doc generator version step (#1248)
jbelkins Dec 1, 2023
32fb3c8
chore: Update models (#1252)
jbelkins Dec 5, 2023
3d2cfde
chore: Updates version to 0.32.0
aws-sdk-swift-automation Dec 5, 2023
e3347c1
fix: DocC post-testing fixes (#1249)
jbelkins Dec 5, 2023
460138e
chore: Run tvOS old & new in CI (#1253)
jbelkins Dec 6, 2023
85761ff
feat: Package manifest generator improvements (#1250)
jbelkins Dec 6, 2023
f188dd7
fix: Use new manifest generator options to run protocol & unit tests …
jbelkins Dec 7, 2023
30a9660
chore: remove use of HttpBody and replace with ByteStream (#1254)
dayaffe Dec 7, 2023
cb365e8
fix: Remove codegen-build-test-on-comment workflow (#1262)
jbelkins Dec 11, 2023
35a86e4
chore: update smithy to 1.42.0 (#1261)
dayaffe Dec 13, 2023
58bc3e5
feat: Add codegen-build-test workflow to pull requests (#1263)
jbelkins Dec 13, 2023
b07d672
fix: codegen-build-test with workflow dispatch & custom branch names …
jbelkins Dec 14, 2023
fb45f1f
fix integration tests (#1268)
dayaffe Dec 20, 2023
50628c6
chore: bump models (#1270)
dayaffe Dec 20, 2023
b0ff4a7
chore: Updates version to 0.33.0
aws-sdk-swift-automation Dec 20, 2023
8bfa5ef
fix: Batch documentation modules properly (#1274)
jbelkins Dec 22, 2023
b497522
chore: Update to aws-crt-swift 0.20.0 (#1275)
dayaffe Dec 22, 2023
a383887
fix: update partitions to latest fixes failing endpoints tests (#1277)
dayaffe Dec 22, 2023
a6b7f12
feat: handle errors in 200 response from S3 (#1266)
dayaffe Jan 4, 2024
05c08f5
chore: Use Xcode 15.1 as CI latest version (#1286)
jbelkins Jan 4, 2024
ed21c50
Delete unnecessary TODO item. (#1288)
sichanyoo Jan 5, 2024
cfa1728
feat!: Use Foundation-based HTTP client on Apple platforms (#1282)
jbelkins Jan 9, 2024
688e599
fix integration tests to conform to latest HTTPClient change (#1295)
dayaffe Jan 10, 2024
df5eaec
chore: update to CRT 0.22.0 (#1296)
dayaffe Jan 11, 2024
6cc7c53
chore: Update smithy-swift to 0.38.0 (#1298)
jbelkins Jan 11, 2024
7e35fb0
chore: Update .spi.yml (#1297)
finestructure Jan 11, 2024
f05c7ef
Delete bundle region provider. (#1290)
sichanyoo Jan 12, 2024
8044d5f
fix!: Refactor resolveRegion method name to getRegion for consistency…
sichanyoo Jan 12, 2024
2b85bdb
Merge old test suite branch to new test suite branch.
Jan 16, 2024
77f50fa
Add tests for SigV4Util::setS3SpecificFlags method.
Jan 16, 2024
6b157b5
Add do-catch to tests for changed method header.
Jan 16, 2024
cda28a1
Add in missing try keyword.
Jan 16, 2024
c10fb50
Add a way to fix a date for AWSSigV4Signer::signRequest, and add test…
Jan 16, 2024
d1f55b5
Add SigV4 x Presigned Request integration tests using STS::getCallerI…
Jan 18, 2024
e5dad5e
Rename integration test directory and file for STS to be more specific.
Jan 18, 2024
e93b266
Update S3ErrorWith200 middleware to fix S3XCTestCase::tearDown(). Del…
Jan 18, 2024
77ebe70
chore: Update models (#1301)
jbelkins Jan 18, 2024
014fa3c
fix: Preserve data after reading response body stream in S3/200 middl…
jbelkins Jan 18, 2024
36821c2
chore: Updates version to 0.34.0
aws-sdk-swift-automation Jan 18, 2024
432a731
Add EventStream Sigv4A integration test & add a test target dependenc…
Jan 19, 2024
45ab4bb
Improve comments and variable names on the EventBridge integration test.
Jan 19, 2024
a354d88
Update documentation comment to mention correct description of the te…
Jan 19, 2024
6b1aa55
Remove unncessary string literal in code.
Jan 19, 2024
ddc1e1c
Increase pause timer to prevent spurious failures.
Jan 19, 2024
ca7b8df
Add SigV4A integration test that uses S3's multi-region access point.
Jan 19, 2024
ce9f5a0
feat: Add integration tests to CI (#1308)
jbelkins Jan 22, 2024
b2e5d3c
Finish SigV4A integration tests that use S3 MRAP.
Jan 22, 2024
e36aad5
Add SigV4A signing flow integration test that uses CloudFrontKeyValue…
Jan 23, 2024
dcae71c
Fix SQS interation test that wasn't working in main branch either; cl…
Jan 24, 2024
e7b69fe
Add auth scheme resolving step for convenience inits of client config…
Jan 24, 2024
5fa67de
Fix ktlint.
Jan 24, 2024
f9be5af
feat!: Provide HTTP request components by closure instead of protocol…
jbelkins Jan 26, 2024
663ccc5
Address PR comments from Josh.
Jan 26, 2024
70a8b7c
Merge main into feat/test-suite, with merge conflicts in aws-model sm…
Jan 26, 2024
edc643f
Update models to match ones in main branch.
Jan 26, 2024
a9699aa
Add newly necessary services to integration test sdk.properties.
Jan 26, 2024
65ba140
Fix undefined variable.
Jan 26, 2024
0f3c3ea
Add conditional import for URLRequest.
Jan 26, 2024
d8af401
Fix SigV4A EventBridge integration test.
Jan 26, 2024
de3d774
Add time buffer between MRAP deletion completion and deleting buckets…
Jan 29, 2024
15f4a53
Fix data type.
Jan 29, 2024
923d210
Fix method used to check MRAP deletion completion from checking again…
Jan 29, 2024
ff1da4d
Copy generated SDK code from feat/sra-identity-and-auth so it doesn't…
Feb 6, 2024
0d7c710
Merge feat/sra-identity-and-auth into feat/test-suite to eliminate ch…
Feb 6, 2024
fcaaf49
Address Josh's PR comments.
Feb 7, 2024
bdac2cb
Fix typo on variable name.
Feb 7, 2024
6f97dd1
Fix swiftlint.
Feb 8, 2024
95397a1
Merge updated CRT version from main into feat/test-suite.
Feb 8, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
chore: Clean up unnecessary TODOs + move test functions to a better l…
…ocation (#1209)
  • Loading branch information
dayaffe authored Oct 31, 2023
commit 14f3c16d226a005a4c99a61acd33f10716396b52
Original file line number Diff line number Diff line change
@@ -41,7 +41,4 @@ class SSOCredentialsProviderTests: XCTestCase {
)
// SUCCESS: creation didn't throw error
}

// TODO: add integration tests that automatically test that SSO crednetials provider correctly exchanges SSO token for temporary AWS credentails.
// Manual integration testing confirmed SSOCredentialsProvider works as of 081723.
}
2 changes: 1 addition & 1 deletion Tests/Services/AWSS3Tests/EndpointResolverTest.swift
Original file line number Diff line number Diff line change
@@ -3428,7 +3428,7 @@ class EndpointResolverTest: XCTestCase {
}
}

/// FIPS + path-only (TODO: consider making this an error)
/// FIPS + path-only
func testResolve123() throws {
let endpointParams = EndpointParams(
bucket: "bucket!",
1 change: 0 additions & 1 deletion codegen/smithy-aws-swift-codegen/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -7,7 +7,6 @@ plugins {
jacoco
}

// TODO: remove once we have all the dependencies in the maven-publish plugin
configurations.implementation {
exclude(group = "brazil")
}
Original file line number Diff line number Diff line change
@@ -27,8 +27,6 @@ import software.amazon.smithy.swift.codegen.model.expectShape
data class PresignableOperation(
val serviceId: String,
val operationId: String,
// TODO ~ Implementation of embedded presigned URLs is TBD
// val presignedParameterId: String?
)

class PresignerGenerator : SwiftIntegration {
Original file line number Diff line number Diff line change
@@ -31,7 +31,6 @@ class InputTypeGETQueryItemMiddleware(

val memberTargetShape = ctx.model.expectShape(member.target)
if (memberTargetShape is IntegerShape || memberTargetShape is TimestampShape) {
// TODO: We should support all types in our presignable operations
continue
}
writer.openBlock("if let $memberName = input.operationInput.$memberName {", "}") {
Original file line number Diff line number Diff line change
@@ -16,8 +16,6 @@ class AWSHttpProtocolRestXMLCustomizations : AWSHttpProtocolCustomizations() {
val properties = mutableListOf<ClientProperty>()
val requestEncoderOptions = mutableMapOf<String, String>()
val responseDecoderOptions = mutableMapOf<String, String>()
// TODO: Subject to change when we figure out which strategy to use for XML
// TODO: Subject to change if Foundation dependency is removed
requestEncoderOptions["dateEncodingStrategy"] = ".secondsSince1970"
requestEncoderOptions["nonConformingFloatEncodingStrategy"] = ".convertToString(positiveInfinity: \"Infinity\", negativeInfinity: \"-Infinity\", nan: \"NaN\")"
responseDecoderOptions["dateDecodingStrategy"] = ".secondsSince1970"
Original file line number Diff line number Diff line change
@@ -10,18 +10,12 @@ import org.junit.jupiter.api.Test
import software.amazon.smithy.aws.swift.codegen.awsjson.AwsJson1_0_ProtocolGenerator
import software.amazon.smithy.aws.swift.codegen.middleware.AWSXAmzTargetMiddleware
import software.amazon.smithy.aws.traits.auth.UnsignedPayloadTrait
import software.amazon.smithy.build.MockManifest
import software.amazon.smithy.codegen.core.SymbolProvider
import software.amazon.smithy.model.Model
import software.amazon.smithy.model.shapes.OperationShape
import software.amazon.smithy.model.shapes.ServiceShape
import software.amazon.smithy.model.shapes.ShapeId
import software.amazon.smithy.model.shapes.StructureShape
import software.amazon.smithy.swift.codegen.SwiftCodegenPlugin
import software.amazon.smithy.swift.codegen.SwiftDelegator
import software.amazon.smithy.swift.codegen.SwiftSettings
import software.amazon.smithy.swift.codegen.SwiftWriter
import software.amazon.smithy.swift.codegen.integration.ProtocolGenerator

class AWSXAmzTargetMiddlewareTests {
@Test
@@ -62,33 +56,3 @@ stack.serializeStep.intercept(position: .before, middleware: AWSClientRuntime.XA
contents.shouldContainOnlyOnce(expectedContents)
}
}

// TODO: move to proper location once we figure out where that should be
fun Model.newTestContext(
serviceShapeId: String = "com.test#Example",
generator: ProtocolGenerator
): TestContext {
return newTestContext(MockManifest(), serviceShapeId, generator)
}

fun Model.newTestContext(
manifest: MockManifest,
serviceShapeId: String,
generator: ProtocolGenerator
): TestContext {
val settings = SwiftSettings.from(this, TestContextGenerator.buildDefaultSwiftSettingsObjectNode("com.test#Example"))
val provider: SymbolProvider = SwiftCodegenPlugin.createSymbolProvider(this, settings)
val service = this.getShape(ShapeId.from(serviceShapeId)).get().asServiceShape().get()
val delegator = SwiftDelegator(settings, this, manifest, provider)

val ctx = ProtocolGenerator.GenerationContext(
settings,
this,
service,
provider,
listOf(),
generator.protocol,
delegator
)
return TestContext(ctx, manifest)
}
Original file line number Diff line number Diff line change
@@ -8,6 +8,7 @@ package software.amazon.smithy.aws.swift.codegen
import org.junit.jupiter.api.Assertions
import software.amazon.smithy.build.MockManifest
import software.amazon.smithy.build.PluginContext
import software.amazon.smithy.codegen.core.SymbolProvider
import software.amazon.smithy.model.Model
import software.amazon.smithy.model.node.Node
import software.amazon.smithy.model.node.ObjectNode
@@ -139,3 +140,32 @@ fun String.toSmithyModel(sourceLocation: String? = null, serviceShapeId: String?
}
return model
}

fun Model.newTestContext(
serviceShapeId: String = "com.test#Example",
generator: ProtocolGenerator
): TestContext {
return newTestContext(MockManifest(), serviceShapeId, generator)
}

fun Model.newTestContext(
manifest: MockManifest,
serviceShapeId: String,
generator: ProtocolGenerator
): TestContext {
val settings = SwiftSettings.from(this, TestContextGenerator.buildDefaultSwiftSettingsObjectNode("com.test#Example"))
val provider: SymbolProvider = SwiftCodegenPlugin.createSymbolProvider(this, settings)
val service = this.getShape(ShapeId.from(serviceShapeId)).get().asServiceShape().get()
val delegator = SwiftDelegator(settings, this, manifest, provider)

val ctx = ProtocolGenerator.GenerationContext(
settings,
this,
service,
provider,
listOf(),
generator.protocol,
delegator
)
return TestContext(ctx, manifest)
}
Loading