mechanicalrock / beady-eye Goto Github PK
View Code? Open in Web Editor NEWBehaviour Driven Infrastructure testing library for AWS
License: Apache License 2.0
Behaviour Driven Infrastructure testing library for AWS
License: Apache License 2.0
In order to get started quickly
As a Beady Eye user
I want to run a command to create a new BDI project from a template
Describe command "bready-eye create --from-template aws-nodejs-typescript --project spec/my-new-project":
describe "when project folder does not exist"
it "should create spec/my-new-project"
it "should create spec/my-new-project/serverless.yml"
it "should create spec/my-new-project/package.json"
it "should create spec/my-new-project/tsconfig.json"
it "should create spec/my-new-project/tslint.json"
it "should create spec/my-new-project/src/complianceTests.js"
it "should create spec/my-new-project/src/myComplianceTest.js"
describe "when project folder already exists"
it "should fail with an appropriate error message"
it "should not create any resources"
In order to validate that mocked data is consistent with reality, there is currently approval test data generated using a real AWS environment.
But the setup is currently manual.
Perform appropriate setup/teardown to ensure that approval test data is consistent.
Scrub returned data where appropriate, to remove account numbers etc.
Consider running the tests against a simulated back end - e.g. Localstack.
requires the simulated back end to support all the features we need.
At the moment, aws-sdk is packaged as a node dependency. This unnecessarily bloats it's usage when packaged in a Lambda function.
Options:
aws-sdk
as a development dependency. This will cause issues if it is not used in Lambda functions, where the aws-sdk is already pre-packaged.The current workaround is for the client to explicitly exclude it from packaging.
Example (Serverless Framework serverless.yml snippet)
my-connection-test:
handler: src/connectionTester.connect
package:
# only include connection tester
exclude:
- src/**
- node_modules/**
include:
- src/connectionTester.js
- node_modules/beady-eye/**
# exclude aws-sdk from packaging
- '!node_modules/beady-eye/node_modules/aws-sdk/**'
Specs have been moved to subfolders based on the resource.
The test-module prefix on the filename is probably not required anymore.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.