Skip to content
Snippets Groups Projects
Commit 4f36dcba authored by Marie's avatar Marie
Browse files

refacto + gère plus de paramètres dont certains ne correspondent pas

parent d1c86c2c
No related branches found
No related tags found
No related merge requests found
duniter-parameters-parser convertit le format brut des paramètres du bloc 0 d'une monnaie basée sur Duniter en un objet où chaque paramètre est associé à ce à quoi il correspond.
[Référentiel de conversion](https://git.duniter.org/nodes/typescript/duniter/blob/1.6/doc/Protocol.md#protocol-parameters)
## Usage:
```javascript
......
const parametersOrder = [
"c",
"dt",
// "dtReeval",
"ud0",
// "udTime0",
// "udReevalTime0",
"sigPeriod",
"msPeriod",
"sigStock",
"sigWindow",
"sigValidity",
"sigQty",
"idtyWindow",
"msWindow",
"xpercent",
"msValidity",
"stepMax",
"medianTimeBlock",
"savgGenTime",
"dtDiffEval",
"percentRot",
"txWindow"
];
module.exports = function(data){
return{
c:parseFloat(data[0]),
dt:parseFloat(data[1])
const resultat = {};
for(let i in parametersOrder) {
const parameter = parametersOrder[i];
resultat[parameter] = parseFloat(data[i]);
}
//TODO: doc.fr et doc.en
//TODO: humanReadable
//TODO: longName.fr .en
return resultat;
}
......@@ -8,3 +8,15 @@ test('app parse c', () => {
test('app parse dt', () => {
expect(app(data).dt).toBe(86400);
});
test('app parse ud0', () => {
expect(app(data).ud0).toBe(1000);
});
test('app parse sigPeriod', () => {
expect(app(data).sigPeriod).toBe(432000);
});
test('app parse percentRot', () => {
expect(app(data).percentRot).toBe(15778800);
});
test('app parse txWindow', () => {
expect(app(data).txWindow).toBe("???");
});
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment