- This provides a list of schemas supported by the Receptor protocol by Redbelly.
- You can have an insight into all the JSON-LD, and JSON schema definitions of the Verifiable Credentials supported by Redbelly.
- You can also find the vocabulary files for the Credentials supported by Redbelly.
- AMLCTFCredential
- DriversLicenceCredential
- NationalIdCredential
- PassportCredential
- OptimaV1Credential
- WholesaleInvestorCredential
Modifiy file generateCredentialsData.ts
- Get schema
const amlCtfSchema = JSON.parse(
fs.readFileSync('./schemas/json/AMLCTFCredential.json', 'utf-8')
);- Define function to generate credential using
@faker-js/faker
function generateAMLCTFCredential(callback?: (data: any) => void): any {
const data = jsf.generate(amlCtfSchema) as any;
const did = `did:receptor:redbelly:${faker.helpers.arrayElement([
'testnet',
'mainnet',
])}:${faker.string.alphanumeric(42)}`;
data['@context'] =
'https://raw.githubusercontent.com/redbellynetwork/receptor-schema/refs/heads/main/schemas/json-ld/AMLCTFCredential.jsonld';
data.credentialSubject.id = did;
data.credentialSubject.amlCheckStatus = faker.helpers.arrayElement([
'passed',
'failed',
]);
data.credentialSubject.pepStatus = faker.helpers.arrayElement([
'passed',
'failed',
]);
data.credentialSubject.sanctionsCheck = faker.helpers.arrayElement([
'passed',
'failed',
]);
data.credentialSubject.adverseMediaStatus = faker.helpers.arrayElement([
'passed',
'failed',
]);
data.credentialSubject.monitoringStatus = faker.helpers.arrayElement([
'active',
'inactive',
]);
if (callback) {
callback(data);
}
return data;
}- Then make testScenarios array like this
const amlCtfTestScenarios = [
{
name: 'Valid AMLCTFCredential',
data: generateAMLCTFCredential(),
expectedValid: true,
},
{
name: 'Missing Required Field',
data: generateAMLCTFCredential((data) => {
delete data.credentialSubject.amlCheckStatus;
}),
expectedValid: false,
},
];- Add scenario as value on your schema name
const testObject = {
AMLCTFCredential: amlCtfTestScenarios,
};- Generte test data by running script generateCredentialsData
npx ts-node test/tools/generateCredentialsData.ts- Run test case using command
npm run test