Skip to content

Commit 3872397

Browse files
committed
refactor tests and split aot tests
1 parent 5c5e101 commit 3872397

File tree

4 files changed

+64
-70
lines changed

4 files changed

+64
-70
lines changed

.github/workflows/e2e-tests.yml

Lines changed: 13 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -62,11 +62,6 @@ jobs:
6262
role-to-assume: ${{ secrets.E2E_DEPLOY_ROLE }}
6363
aws-region: us-east-1
6464

65-
- name: Set up QEMU
66-
uses: docker/setup-qemu-action@53851d14592bedcffcf25ea515637cff71ef929a
67-
with:
68-
platforms: arm64
69-
7065
- name: Set up .NET
7166
uses: actions/setup-dotnet@4d6c8fcf3c8f7a60068d26b594648e99df24cee3
7267
with:
@@ -78,17 +73,10 @@ jobs:
7873
- name: Install AWS Lambda .NET CLI Tools
7974
run: dotnet tool install -g Amazon.Lambda.Tools
8075

81-
- name: Set up Docker Buildx
82-
id: builder
83-
uses: docker/setup-buildx-action@6524bf65af31da8d45b59e8c27de4bd072b392f5 # v3.8.0
84-
with:
85-
install: true
86-
driver: docker
87-
platforms: linux/amd64,linux/arm64
88-
89-
- name: Deploy AOT Stack
76+
- name: Deploy AOT Stack x86_64
9077
run: |
91-
dotnet-lambda package -pl libraries/tests/e2e/functions/core/logging/AOT-Function/src/AOT-Function -cmd ../../../ -o libraries/tests/e2e/functions/core/logging/AOT-Function/dist -f net8.0 -farch arm64 -cifb public.ecr.aws/sam/build-dotnet8:latest-arm64
78+
cd libraries/tests/e2e/infra-aot
79+
cdk deploy -c architecture=x86_64 --require-approval never
9280
9381
run-tests:
9482
runs-on: ubuntu-latest
@@ -112,7 +100,12 @@ jobs:
112100
- name: Run Core Tests
113101
run: |
114102
cd libraries/tests/e2e/functions/core
115-
dotnet test
103+
dotnet test --Filter Category!=AOT
104+
105+
- name: Run Core AOT Tests
106+
run: |
107+
cd libraries/tests/e2e/functions/core
108+
dotnet test --Filter Category=AOT
116109
117110
destroy-stack:
118111
runs-on: ubuntu-latest
@@ -140,45 +133,7 @@ jobs:
140133
cd libraries/tests/e2e/infra
141134
cdk destroy --force
142135
143-
# destroy-aot-stack:
144-
# runs-on: ubuntu-latest
145-
# needs: run-tests
146-
# if: always()
147-
# strategy:
148-
# fail-fast: false
149-
# matrix:
150-
# architecture: [ x86_64, arm64 ]
151-
# steps:
152-
# - name: Checkout code
153-
# uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332
154-
#
155-
# - name: Configure AWS credentials
156-
# uses: aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502
157-
# with:
158-
# role-to-assume: ${{ secrets.E2E_DEPLOY_ROLE }}
159-
# aws-region: us-east-1
160-
# mask-aws-account-id: true
161-
#
162-
# - name: Install CDK
163-
# run: npm install -g aws-cdk
164-
#
165-
# - name: Install AWS Lambda .NET CLI Tools
166-
# run: dotnet tool install -g Amazon.Lambda.Tools
167-
#
168-
# - name: Set up QEMU
169-
# uses: docker/setup-qemu-action@53851d14592bedcffcf25ea515637cff71ef929a
170-
# with:
171-
# platforms: ${{ matrix.architecture }}
172-
#
173-
# - name: Set up Docker Buildx
174-
# id: builder
175-
# uses: docker/setup-buildx-action@6524bf65af31da8d45b59e8c27de4bd072b392f5 # v3.8.0
176-
# with:
177-
# install: true
178-
# driver: docker
179-
# platforms: linux/amd64,linux/arm64
180-
#
181-
# - name: Destroy Core AOT Stack
182-
# run: |
183-
# cd libraries/tests/e2e/infra-aot
184-
# cdk destroy -c architecture=${{ matrix.architecture }} --force
136+
- name: Destroy AOT Core Stack
137+
run: |
138+
cd libraries/tests/e2e/infra-aot
139+
cdk destroy -c architecture=x86_64 --force

libraries/tests/e2e/functions/core/logging/Function/test/Function.Tests/FunctionTest.cs renamed to libraries/tests/e2e/functions/core/logging/Function/test/Function.Tests/FunctionTests.cs

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,24 +9,37 @@
99
namespace Function.Tests;
1010

1111
[Trait("Category", "E2E")]
12-
public class FunctionTest
12+
public class FunctionTests
1313
{
1414
private readonly ITestOutputHelper _testOutputHelper;
1515
private readonly AmazonLambdaClient _lambdaClient;
1616

17-
public FunctionTest(ITestOutputHelper testOutputHelper)
17+
public FunctionTests(ITestOutputHelper testOutputHelper)
1818
{
1919
_testOutputHelper = testOutputHelper;
2020
_lambdaClient = new AmazonLambdaClient();
2121
}
22+
23+
[Trait("Category", "AOT")]
24+
[Theory]
25+
[InlineData("E2ETestLambda_X64_AOT_NET8_logging")]
26+
// [InlineData("E2ETestLambda_ARM_AOT_NET8_metrics")]
27+
public async Task AotFunctionTest(string functionName)
28+
{
29+
await TestFunction(functionName);
30+
}
2231

2332
[Theory]
2433
[InlineData("E2ETestLambda_X64_NET6_logging")]
2534
[InlineData("E2ETestLambda_ARM_NET6_logging")]
2635
[InlineData("E2ETestLambda_X64_NET8_logging")]
2736
[InlineData("E2ETestLambda_ARM_NET8_logging")]
28-
// [InlineData("E2ETestLambda_ARM_AOT_NET8_logging")]
29-
public async Task TestFunction(string functionName)
37+
public async Task FunctionTest(string functionName)
38+
{
39+
await TestFunction(functionName);
40+
}
41+
42+
internal async Task TestFunction(string functionName)
3043
{
3144
var request = new InvokeRequest
3245
{

libraries/tests/e2e/functions/core/metrics/Function/test/Function.Tests/FunctionTest.cs renamed to libraries/tests/e2e/functions/core/metrics/Function/test/Function.Tests/FunctionTests.cs

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,24 +9,37 @@
99
namespace Function.Tests;
1010

1111
[Trait("Category", "E2E")]
12-
public class FunctionTest
12+
public class FunctionTests
1313
{
1414
private readonly ITestOutputHelper _testOutputHelper;
1515
private readonly AmazonLambdaClient _lambdaClient;
1616

17-
public FunctionTest(ITestOutputHelper testOutputHelper)
17+
public FunctionTests(ITestOutputHelper testOutputHelper)
1818
{
1919
_testOutputHelper = testOutputHelper;
2020
_lambdaClient = new AmazonLambdaClient();
2121
}
2222

23+
[Trait("Category", "AOT")]
24+
[Theory]
25+
[InlineData("E2ETestLambda_X64_AOT_NET8_metrics")]
26+
// [InlineData("E2ETestLambda_ARM_AOT_NET8_metrics")]
27+
public async Task AotFunctionTest(string functionName)
28+
{
29+
await TestFunction(functionName);
30+
}
31+
2332
[Theory]
2433
[InlineData("E2ETestLambda_X64_NET6_metrics")]
2534
[InlineData("E2ETestLambda_ARM_NET6_metrics")]
2635
[InlineData("E2ETestLambda_X64_NET8_metrics")]
2736
[InlineData("E2ETestLambda_ARM_NET8_metrics")]
28-
// [InlineData("E2ETestLambda_ARM_AOT_NET8_metrics")]
29-
public async Task TestFunction(string functionName)
37+
public async Task FunctionTest(string functionName)
38+
{
39+
await TestFunction(functionName);
40+
}
41+
42+
internal async Task TestFunction(string functionName)
3043
{
3144
var request = new InvokeRequest
3245
{

libraries/tests/e2e/functions/core/tracing/Function/test/Function.Tests/FunctionTest.cs renamed to libraries/tests/e2e/functions/core/tracing/Function/test/Function.Tests/FunctionTests.cs

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,27 +9,40 @@
99
namespace Function.Tests;
1010

1111
[Trait("Category", "E2E")]
12-
public class FunctionTest
12+
public class FunctionTests
1313
{
1414
private readonly ITestOutputHelper _testOutputHelper;
1515
private readonly AmazonLambdaClient _lambdaClient;
1616

17-
public FunctionTest(ITestOutputHelper testOutputHelper)
17+
public FunctionTests(ITestOutputHelper testOutputHelper)
1818
{
1919
_testOutputHelper = testOutputHelper;
2020
_lambdaClient = new AmazonLambdaClient(new AmazonLambdaConfig
2121
{
2222
Timeout = TimeSpan.FromSeconds(7)
2323
});
2424
}
25+
26+
[Trait("Category", "AOT")]
27+
[Theory]
28+
[InlineData("E2ETestLambda_X64_AOT_NET8_tracing")]
29+
// [InlineData("E2ETestLambda_ARM_AOT_NET8_tracing")]
30+
public async Task AotFunctionTest(string functionName)
31+
{
32+
await TestFunction(functionName);
33+
}
2534

2635
[Theory]
2736
[InlineData("E2ETestLambda_X64_NET6_tracing")]
2837
[InlineData("E2ETestLambda_ARM_NET6_tracing")]
2938
[InlineData("E2ETestLambda_X64_NET8_tracing")]
3039
[InlineData("E2ETestLambda_ARM_NET8_tracing")]
31-
// [InlineData("E2ETestLambda_ARM_AOT_NET8_tracing")]
32-
public async Task TestToUpperFunction(string functionName)
40+
public async Task FunctionTest(string functionName)
41+
{
42+
await TestFunction(functionName);
43+
}
44+
45+
internal async Task TestFunction(string functionName)
3346
{
3447
var request = new InvokeRequest
3548
{

0 commit comments

Comments
 (0)