# Acid Tests
Marfeel guarantees the performance and correctness of all providers' implementations with Acid tests.
Inspired by web browsers' Acid1 (opens new window), Acid2 (opens new window) and Acid3 (opens new window) tests, each provider type (analytics, ad server...) must pass a different test suite.
Acid tests check the structure of the repository, files content and the production bundle.
All acid tests check the following:
- There is one
src/index.*
file with the entry point of the provider. - There is one unit test
src/index.test.*
file next to the entry point with at least one unit test. - All mandatory methods are implemented and return expected values.
- There is a
schema/index.json
file with a valid JSON schema. - There is a schema/tests/valid/index.test.json file with a valid test for the JSON schema.
- There is a schema/tests/wrong/index.test.json file with a wrong test for the JSON schema.
- The production bundle (
dist/index.es2015.js
) is under 5kb.
In addition to those standard tests, each provider has additional requirements.
- Read more about the analytics providers acid tests.
- Read more about the ad server providers acid tests.