The Federated Gateway service needs software integrity tooling established that can be used by engineers during active development and CI processes.
User Stories
As a developer I need to establish code style standards with formatting and/or linting tooling.
As a developer I need a clear, documented way to create dummy data for test.
As a developer I need a clear, documented & repeatable pattern for writing and running unit test.
As a developer I new a clear, documented & repeatable pattern for writing and running integration test.
Deliverable
At least 2, possibly 3 npm scripts for the project that run the integrity checks (e.g. npm run lint, npm run test).
Documentation with examples on creating and using dummy data and mock in service test.
Documentation with examples on writing unit test.
Documentation with example on writing integration test.
Acceptance Criteria
Developers can easily run integrity check from the terminal with simple commands.
Tooling has been documented.
Creating dummy data and mocks for test has a clear and documented pattern.
Writing unit test has a clear and documented pattern.
Writing integration test has a clear and documented pattern.
Temporary test are passing when integrity checks are run.
Considerations
We're only trying to setup tooling and establish patterns for software integrity. We wont have any actual code to test so this corresponding PR might need to include a few temporary test (1 unit, 1 integration) just to verify the tooling is working. These test will be removed at a later time once we start writing actual service code.
Integration test could be set up in a way to only run within the Dockerized environment and run it's test against the legit state store as apposed to using a fake state store.
Setup Software Integrity Tooling
The Federated Gateway service needs software integrity tooling established that can be used by engineers during active development and CI processes.
User Stories
Deliverable
npm run lint
,npm run test
).Acceptance Criteria
Considerations
We're only trying to setup tooling and establish patterns for software integrity. We wont have any actual code to test so this corresponding PR might need to include a few temporary test (1 unit, 1 integration) just to verify the tooling is working. These test will be removed at a later time once we start writing actual service code.
Integration test could be set up in a way to only run within the Dockerized environment and run it's test against the legit state store as apposed to using a fake state store.