pip-services-roles-node
Version:
User roles microservice in Node.js
68 lines (54 loc) • 1.95 kB
text/typescript
let async = require('async');
let assert = require('chai').assert;
import { FilterParams } from 'pip-services3-commons-node';
import { IRolesPersistence } from '../../src/persistence/IRolesPersistence';
import { UserRolesV1 } from '../../src/data/version1/UserRolesV1';
let ROLES = ['Role 1', 'Role 2', 'Role 3'];
export class RolesPersistenceFixture {
private _persistence: IRolesPersistence;
constructor(persistence) {
assert.isNotNull(persistence);
this._persistence = persistence;
}
public testGetAndSetRoles(done) {
async.series([
// Set party roles
(callback) => {
this._persistence.set(
null,
new UserRolesV1('1', ROLES),
(err, roles) => {
assert.isNull(err);
assert.lengthOf(roles.roles, 3);
callback();
}
);
},
// Read and check party roles
(callback) => {
this._persistence.getOneById(
null,
'1',
(err, roles) => {
assert.isNull(err);
assert.lengthOf(roles.roles, 3);
callback();
}
);
},
// Get by filter
(callback) => {
this._persistence.getPageByFilter(
null,
FilterParams.fromTuples('roles', ['Role 1', 'Role X']),
null,
(err, page) => {
assert.isNull(err);
assert.lengthOf(page.data, 1);
callback();
}
);
},
], done);
}
}