1
1
#include < aws/core/client/ClientConfiguration.h>
2
+ #include < aws/core/utils/Array.h>
2
3
#include < aws/core/utils/Outcome.h>
3
4
#include < aws/core/utils/memory/stl/AWSString.h>
4
5
#include < aws/core/utils/memory/stl/AWSStringStream.h>
12
13
#include < aws/lambda/model/DeleteFunctionRequest.h>
13
14
#include < aws/lambda/model/InvokeRequest.h>
14
15
#include " gtest/gtest.h"
16
+ #include < cstdio>
17
+ #include < sys/stat.h>
15
18
#include < unistd.h>
16
19
17
20
extern std::string aws_prefix;
@@ -20,8 +23,7 @@ namespace {
20
23
21
24
using namespace Aws ::Lambda;
22
25
23
- constexpr auto S3BUCKET = " aws-lambda-cpp-tests" ;
24
- constexpr auto S3KEY = " lambda-test-fun.zip" ;
26
+ constexpr auto ZIP_FILE_PATH = " resources/lambda-test-fun.zip" ;
25
27
constexpr auto REQUEST_TIMEOUT = 15 * 1000 ;
26
28
27
29
struct LambdaRuntimeTest : public ::testing::Test {
@@ -79,9 +81,18 @@ struct LambdaRuntimeTest : public ::testing::Test {
79
81
create_function_request.SetFunctionName (function_name);
80
82
// I ran into eventual-consistency issues when creating the role dynamically as part of the test.
81
83
create_function_request.SetRole (get_role_arn (" integration-tests" ));
84
+
85
+ struct stat s;
86
+ auto rc = stat (ZIP_FILE_PATH, &s);
87
+ ASSERT_EQ (rc, 0 ) << std::string (" file does not exist: " ) + ZIP_FILE_PATH;
88
+ Aws::Utils::CryptoBuffer zip_file_bytes (s.st_size );
89
+ auto * zip_file = fopen (ZIP_FILE_PATH, " r" );
90
+ fread (zip_file_bytes.GetUnderlyingData (), sizeof (unsigned char ), s.st_size , zip_file);
91
+ fclose (zip_file);
92
+
82
93
Model::FunctionCode funcode;
83
- funcode.WithS3Bucket (S3BUCKET). WithS3Key ( build_resource_name (S3KEY ));
84
- create_function_request.SetCode (funcode);
94
+ funcode.SetZipFile ( std::move (zip_file_bytes ));
95
+ create_function_request.SetCode (std::move ( funcode) );
85
96
create_function_request.SetRuntime (Aws::Lambda::Model::Runtime::provided);
86
97
87
98
auto outcome = m_lambda_client.CreateFunction (create_function_request);
0 commit comments