Skip to content

Commit

Permalink
Merge branch 'development' into testnet
Browse files Browse the repository at this point in the history
  • Loading branch information
vekexasia committed Nov 23, 2018
2 parents ac50630 + b4a0df3 commit 4a720e7
Show file tree
Hide file tree
Showing 5 changed files with 27 additions and 22 deletions.
5 changes: 3 additions & 2 deletions src/apis/delegatesAPI.ts
Expand Up @@ -65,6 +65,7 @@ export class DelegatesAPI {
// tslint:disable object-literal-sort-keys
return {
address : item.delegate.address,
cmb : item.delegate.cmb,
username : item.delegate.username,
publicKey : item.delegate.hexPublicKey,
vote : item.delegate.vote ? `${item.delegate.vote}` : '0',
Expand All @@ -79,7 +80,7 @@ export class DelegatesAPI {
// tslint:enable object-literal-sort-keys
});
if (d.sortField) {
if (['approval', 'productivity', 'rank', 'vote'].indexOf(d.sortField) > -1) {
if (['approval', 'productivity', 'rank', 'vote', 'votesWeight'].indexOf(d.sortField) > -1) {
delegates.sort((a, b) => {
if (d.sortMethod === 'ASC') {
return a[d.sortField] - b[d.sortField];
Expand Down Expand Up @@ -159,7 +160,7 @@ export class DelegatesAPI {
return {
delegate: filterObject(
{ ...delegate.delegate.toPOJO(), ...delegate.info, ...{ rate: delegate.info.rank } },
['username', 'address', 'publicKey', 'vote', 'producedblocks', 'votesWeight',
['username', 'address', 'cmb', 'publicKey', 'vote', 'producedblocks', 'votesWeight',
'missedblocks', 'rank', 'approval', 'productivity', 'rate']
),
};
Expand Down
2 changes: 1 addition & 1 deletion src/modules/delegates.ts
Expand Up @@ -169,7 +169,7 @@ export class DelegatesModule implements IDelegatesModule {
isDelegate: 1,
sort,
},
['username', 'address', 'publicKey', 'vote', 'votesWeight', 'missedblocks', 'producedblocks']
['username', 'address', 'cmb', 'publicKey', 'vote', 'votesWeight', 'missedblocks', 'producedblocks']
);

const limit = Math.min(this.slots.getDelegatesPoolSize(), query.limit || this.slots.getDelegatesPoolSize());
Expand Down
1 change: 1 addition & 0 deletions src/schema/delegates.ts
Expand Up @@ -99,6 +99,7 @@ export default {
'productivity:desc', 'productivity:asc',
'rank:desc', 'rank:asc',
'vote:desc', 'vote:asc',
'votesWeight:desc', 'votesWeight:asc',
'address:desc', 'address:asc',
'username:desc', 'username:asc',
'publicKey:desc', 'publicKey:asc',
Expand Down
39 changes: 21 additions & 18 deletions tests/unit/apis/delegatesAPI.spec.ts
Expand Up @@ -96,18 +96,21 @@ describe('apis/delegatesAPI', () => {
{
delegate: new AccountsModel({
publicKey: Buffer.from('aa', 'hex'),
cmb: 0,
[field] : areNumberValues ? 1 : 'a'
}), info: { rank: 1, [field]: areNumberValues ? 1 : 'a' }
},
{
delegate: new AccountsModel({
publicKey: Buffer.from('bb', 'hex'),
cmb: 0,
[field] : areNumberValues ? 3 : 'bb'
}), info: { rank: 2, [field]: areNumberValues ? 3 : 'bb' }
},
{
delegate: new AccountsModel({
publicKey: Buffer.from('cc', 'hex'),
cmb: 0,
[field] : areNumberValues ? 2 : 'ccc'
}), info: { rank: 3, [field]: areNumberValues ? 2 : 'ccc' }
},
Expand Down Expand Up @@ -150,9 +153,9 @@ describe('apis/delegatesAPI', () => {

expect(ret.delegates).to.be.deep.equal(
[
{ ...extraAccountData, approval: 1, rank: 1, rate: 1, publicKey: 'aa' },
{ ...extraAccountData, approval: 2, rank: 3, rate: 3, publicKey: 'cc' },
{ ...extraAccountData, approval: 3, rank: 2, rate: 2, publicKey: 'bb' },
{ ...extraAccountData, approval: 1, cmb: 0, rank: 1, rate: 1, publicKey: 'aa' },
{ ...extraAccountData, approval: 2, cmb: 0, rank: 3, rate: 3, publicKey: 'cc' },
{ ...extraAccountData, approval: 3, cmb: 0, rank: 2, rate: 2, publicKey: 'bb' },
]);
});

Expand All @@ -162,9 +165,9 @@ describe('apis/delegatesAPI', () => {

expect(ret.delegates).to.be.deep.equal(
[
{ ...extraAccountData, approval: 3, rank: 2, rate: 2, publicKey: 'bb' },
{ ...extraAccountData, approval: 2, rank: 3, rate: 3, publicKey: 'cc' },
{ ...extraAccountData, approval: 1, rank: 1, rate: 1, publicKey: 'aa' },
{ ...extraAccountData, approval: 3, cmb: 0, rank: 2, rate: 2, publicKey: 'bb' },
{ ...extraAccountData, approval: 2, cmb: 0, rank: 3, rate: 3, publicKey: 'cc' },
{ ...extraAccountData, approval: 1, cmb: 0, rank: 1, rate: 1, publicKey: 'aa' },
]);
});

Expand All @@ -174,9 +177,9 @@ describe('apis/delegatesAPI', () => {

expect(ret.delegates).to.be.deep.equal(
[
{ ...extraAccountData, username: 'a', rank: 1, rate: 1, publicKey: 'aa' },
{ ...extraAccountData, username: 'bb', rank: 2, rate: 2, publicKey: 'bb' },
{ ...extraAccountData, username: 'ccc', rank: 3, rate: 3, publicKey: 'cc' },
{ ...extraAccountData, cmb: 0, username: 'a', rank: 1, rate: 1, publicKey: 'aa' },
{ ...extraAccountData, cmb: 0, username: 'bb', rank: 2, rate: 2, publicKey: 'bb' },
{ ...extraAccountData, cmb: 0, username: 'ccc', rank: 3, rate: 3, publicKey: 'cc' },
]);
});

Expand All @@ -186,9 +189,9 @@ describe('apis/delegatesAPI', () => {

expect(ret.delegates).to.be.deep.equal(
[
{ ...extraAccountData, username: 'ccc', rank: 3, rate: 3, publicKey: 'cc' },
{ ...extraAccountData, username: 'bb', rank: 2, rate: 2, publicKey: 'bb' },
{ ...extraAccountData, username: 'a', rank: 1, rate: 1, publicKey: 'aa' },
{ ...extraAccountData, cmb: 0, username: 'ccc', rank: 3, rate: 3, publicKey: 'cc' },
{ ...extraAccountData, cmb: 0, username: 'bb', rank: 2, rate: 2, publicKey: 'bb' },
{ ...extraAccountData, cmb: 0, username: 'a', rank: 1, rate: 1, publicKey: 'aa' },
]);
});

Expand All @@ -197,9 +200,9 @@ describe('apis/delegatesAPI', () => {
const ret = await instance.getDelegates(data);

expect(ret.delegates).to.be.deep.equal([
{ ...extraAccountData, rank: 1, rate: 1, publicKey: 'aa' },
{ ...extraAccountData, rank: 2, rate: 2, publicKey: 'bb' },
{ ...extraAccountData, rank: 3, rate: 3, publicKey: 'cc' }
{ ...extraAccountData, cmb: 0, rank: 1, rate: 1, publicKey: 'aa' },
{ ...extraAccountData, cmb: 0, rank: 2, rate: 2, publicKey: 'bb' },
{ ...extraAccountData, cmb: 0, rank: 3, rate: 3, publicKey: 'cc' }
]);
});

Expand All @@ -208,9 +211,9 @@ describe('apis/delegatesAPI', () => {
const ret = await instance.getDelegates(data);

expect(ret.delegates).to.be.deep.equal([
{ ...extraAccountData, rank: 1, rate: 1, publicKey: 'aa' },
{ ...extraAccountData, rank: 2, rate: 2, publicKey: 'bb' },
{ ...extraAccountData, rank: 3, rate: 3, publicKey: 'cc' }
{ ...extraAccountData, cmb: 0, rank: 1, rate: 1, publicKey: 'aa' },
{ ...extraAccountData, cmb: 0, rank: 2, rate: 2, publicKey: 'bb' },
{ ...extraAccountData, cmb: 0, rank: 3, rate: 3, publicKey: 'cc' }
]);
});
});
Expand Down
2 changes: 1 addition & 1 deletion tests/unit/modules/delegates.spec.ts
Expand Up @@ -462,7 +462,7 @@ describe('modules/delegates', () => {
sort : { vote: -1, publicKey: 1 },
});
expect(accountsModuleStub.stubs.getAccounts.firstCall.args[1]).to.be.deep.equal([
'username', 'address', 'publicKey', 'vote', 'votesWeight', 'missedblocks', 'producedblocks',
'username', 'address', 'cmb', 'publicKey', 'vote', 'votesWeight', 'missedblocks', 'producedblocks',
]);
});

Expand Down

0 comments on commit 4a720e7

Please sign in to comment.