Programmatic API
Light Air provides programmatic API with the net.sf.lightair.LightAirApi class.
The general contract is to initialize and shutdown and in between perform either generateXsd call or (a series of) setup and verify or await calls.
To generate XSD files:
LightAirApi.initialize(LightAirApi.getPropertiesFileName());
LightAirApi.generateXsd();
LightAirApi.shutdown();
To set up and verify the database:
Map<String, List<String>> fileNames = new HashMap<>();
fileNames.put(Keywords.DEFAULT_PROFILE, List.of("my-dataset-1.xml", "my-dataset-2.xml"));
LightAirApi.initialize(LightAirApi.getPropertiesFileName());
LightAirApi.setup(fileNames);
// ...execute function under test...
LightAirApi.verify(fileNames);
// ...or for asynchronous functionality:
LightAirApi.await(fileNames);
// ...possibly repeat setup and verify / await for other tests...
LightAirApi.shutdown();
Maven