Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
duniter
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container registry
Model registry
Monitor
Service Desk
Analyze
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
nodes
typescript
duniter
Commits
eed5a50c
Commit
eed5a50c
authored
7 years ago
by
Cédric Moreau
Browse files
Options
Downloads
Patches
Plain Diff
[fix]
#1080
WebSocket: monetaryMass is missing (Test)
parent
7bb0a782
No related branches found
No related tags found
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
test/integration/http_api.js
+67
-22
67 additions, 22 deletions
test/integration/http_api.js
with
67 additions
and
22 deletions
test/integration/http_api.js
+
67
−
22
View file @
eed5a50c
...
@@ -9,7 +9,6 @@ const bma = require('../../app/modules/bma').BmaDependency.duniter.methods
...
@@ -9,7 +9,6 @@ const bma = require('../../app/modules/bma').BmaDependency.duniter.methods
const
user
=
require
(
'
./tools/user
'
);
const
user
=
require
(
'
./tools/user
'
);
const
http
=
require
(
'
./tools/http
'
);
const
http
=
require
(
'
./tools/http
'
);
const
shutDownEngine
=
require
(
'
./tools/shutDownEngine
'
);
const
shutDownEngine
=
require
(
'
./tools/shutDownEngine
'
);
const
constants
=
require
(
'
../../app/lib/constants
'
);
const
rp
=
require
(
'
request-promise
'
);
const
rp
=
require
(
'
request-promise
'
);
const
ws
=
require
(
'
ws
'
);
const
ws
=
require
(
'
ws
'
);
...
@@ -19,6 +18,9 @@ let server, cat, toc
...
@@ -19,6 +18,9 @@ let server, cat, toc
describe
(
"
HTTP API
"
,
function
()
{
describe
(
"
HTTP API
"
,
function
()
{
const
now
=
1500000000
let
commit
before
(()
=>
co
(
function
*
(){
before
(()
=>
co
(
function
*
(){
server
=
duniter
(
server
=
duniter
(
...
@@ -30,10 +32,11 @@ describe("HTTP API", function() {
...
@@ -30,10 +32,11 @@ describe("HTTP API", function() {
currency
:
'
bb
'
,
currency
:
'
bb
'
,
httpLogs
:
true
,
httpLogs
:
true
,
sigQty
:
1
,
sigQty
:
1
,
dt
:
60
,
dt
:
240
,
dtReeval
:
120
,
dtReeval
:
240
,
udTime0
:
1488902199
,
udTime0
:
now
,
udReevalTime0
:
1520438199
,
medianTimeBlocks
:
1
,
udReevalTime0
:
now
+
20000000
,
pair
:
{
pair
:
{
pub
:
'
HgTTJLAQ5sqfknMq7yLPZbehtuLSsKj9CxWN7k8QvYJd
'
,
pub
:
'
HgTTJLAQ5sqfknMq7yLPZbehtuLSsKj9CxWN7k8QvYJd
'
,
sec
:
'
51w4fEShBk1jCMauWu4mLpmDVfHksKmWcygpxriqCEZizbtERA6de4STKRkQBpxmMUwsKXRjSzuQ8ECwmqN1u2DP
'
sec
:
'
51w4fEShBk1jCMauWu4mLpmDVfHksKmWcygpxriqCEZizbtERA6de4STKRkQBpxmMUwsKXRjSzuQ8ECwmqN1u2DP
'
...
@@ -43,7 +46,7 @@ describe("HTTP API", function() {
...
@@ -43,7 +46,7 @@ describe("HTTP API", function() {
cat
=
user
(
'
cat
'
,
{
pub
:
'
HgTTJLAQ5sqfknMq7yLPZbehtuLSsKj9CxWN7k8QvYJd
'
,
sec
:
'
51w4fEShBk1jCMauWu4mLpmDVfHksKmWcygpxriqCEZizbtERA6de4STKRkQBpxmMUwsKXRjSzuQ8ECwmqN1u2DP
'
},
{
server
:
server
});
cat
=
user
(
'
cat
'
,
{
pub
:
'
HgTTJLAQ5sqfknMq7yLPZbehtuLSsKj9CxWN7k8QvYJd
'
,
sec
:
'
51w4fEShBk1jCMauWu4mLpmDVfHksKmWcygpxriqCEZizbtERA6de4STKRkQBpxmMUwsKXRjSzuQ8ECwmqN1u2DP
'
},
{
server
:
server
});
toc
=
user
(
'
toc
'
,
{
pub
:
'
DKpQPUL4ckzXYdnDRvCRKAm1gNvSdmAXnTrJZ7LvM5Qo
'
,
sec
:
'
64EYRvdPpTfLGGmaX5nijLXRqWXaVz8r1Z1GtaahXwVSJGQRn7tqkxLb288zwSYzELMEG5ZhXSBYSxsTsz1m9y8F
'
},
{
server
:
server
});
toc
=
user
(
'
toc
'
,
{
pub
:
'
DKpQPUL4ckzXYdnDRvCRKAm1gNvSdmAXnTrJZ7LvM5Qo
'
,
sec
:
'
64EYRvdPpTfLGGmaX5nijLXRqWXaVz8r1Z1GtaahXwVSJGQRn7tqkxLb288zwSYzELMEG5ZhXSBYSxsTsz1m9y8F
'
},
{
server
:
server
});
const
commit
=
makeBlockAndPost
(
server
);
commit
=
makeBlockAndPost
(
server
);
let
s
=
yield
server
.
initWithDAL
();
let
s
=
yield
server
.
initWithDAL
();
let
bmapi
=
yield
bma
(
s
);
let
bmapi
=
yield
bma
(
s
);
...
@@ -54,11 +57,11 @@ describe("HTTP API", function() {
...
@@ -54,11 +57,11 @@ describe("HTTP API", function() {
yield
cat
.
cert
(
toc
);
yield
cat
.
cert
(
toc
);
yield
cat
.
join
();
yield
cat
.
join
();
yield
toc
.
join
();
yield
toc
.
join
();
yield
commit
();
yield
commit
(
{
time
:
now
}
);
yield
commit
();
yield
commit
(
{
time
:
now
+
120
}
);
yield
commit
();
yield
commit
(
{
time
:
now
+
120
*
2
}
);
yield
commit
();
yield
commit
(
{
time
:
now
+
120
*
3
}
);
yield
commit
();
yield
commit
(
{
time
:
now
+
120
*
4
}
);
}));
}));
after
(()
=>
{
after
(()
=>
{
...
@@ -68,8 +71,8 @@ describe("HTTP API", function() {
...
@@ -68,8 +71,8 @@ describe("HTTP API", function() {
})
})
function
makeBlockAndPost
(
theServer
)
{
function
makeBlockAndPost
(
theServer
)
{
return
function
()
{
return
function
(
options
)
{
return
require
(
'
../../app/modules/prover
'
).
ProverDependency
.
duniter
.
methods
.
generateAndProveTheNext
(
theServer
)
return
require
(
'
../../app/modules/prover
'
).
ProverDependency
.
duniter
.
methods
.
generateAndProveTheNext
(
theServer
,
null
,
null
,
options
)
.
then
(
postBlock
(
theServer
));
.
then
(
postBlock
(
theServer
));
};
};
}
}
...
@@ -78,25 +81,45 @@ describe("HTTP API", function() {
...
@@ -78,25 +81,45 @@ describe("HTTP API", function() {
it
(
'
/parameters/ should give the parameters
'
,
function
()
{
it
(
'
/parameters/ should give the parameters
'
,
function
()
{
return
expectJSON
(
rp
(
'
http://127.0.0.1:7777/blockchain/parameters
'
,
{
json
:
true
}),
{
return
expectJSON
(
rp
(
'
http://127.0.0.1:7777/blockchain/parameters
'
,
{
json
:
true
}),
{
udTime0
:
1488902199
,
udTime0
:
now
,
udReevalTime0
:
1520438199
,
udReevalTime0
:
now
+
20000000
,
dt
:
6
0
,
dt
:
24
0
,
dtReeval
:
1
20
dtReeval
:
2
4
0
});
});
});
});
it
(
'
/block/0 should exist
'
,
function
()
{
it
(
'
/block/0 should exist
'
,
function
()
{
return
expectJSON
(
rp
(
'
http://127.0.0.1:7777/blockchain/block/0
'
,
{
json
:
true
}),
{
return
expectJSON
(
rp
(
'
http://127.0.0.1:7777/blockchain/block/0
'
,
{
json
:
true
}),
{
number
:
0
number
:
0
,
dividend
:
null
,
monetaryMass
:
0
});
});
});
});
it
(
'
/block/1 should exist
'
,
function
()
{
it
(
'
/block/1 should exist
and have integer Dividend
'
,
function
()
{
return
expectJSON
(
rp
(
'
http://127.0.0.1:7777/blockchain/block/1
'
,
{
json
:
true
}),
{
return
expectJSON
(
rp
(
'
http://127.0.0.1:7777/blockchain/block/1
'
,
{
json
:
true
}),
{
number
:
1
number
:
1
,
dividend
:
100
,
monetaryMass
:
200
});
});
});
});
it
(
'
/block/2 should exist and have NULL Dividend
'
,
()
=>
{
return
expectJSON
(
rp
(
'
http://127.0.0.1:7777/blockchain/block/2
'
,
{
json
:
true
}),
{
number
:
2
,
dividend
:
null
,
monetaryMass
:
200
});
})
it
(
'
/block/3 should exist and have NULL Dividend
'
,
()
=>
{
return
expectJSON
(
rp
(
'
http://127.0.0.1:7777/blockchain/block/3
'
,
{
json
:
true
}),
{
number
:
3
,
dividend
:
100
,
monetaryMass
:
400
});
})
it
(
'
/block/88 should not exist
'
,
function
()
{
it
(
'
/block/88 should not exist
'
,
function
()
{
return
http
.
expectError
(
404
,
rp
(
'
http://127.0.0.1:7777/blockchain/block/88
'
));
return
http
.
expectError
(
404
,
rp
(
'
http://127.0.0.1:7777/blockchain/block/88
'
));
});
});
...
@@ -175,10 +198,12 @@ describe("HTTP API", function() {
...
@@ -175,10 +198,12 @@ describe("HTTP API", function() {
it
(
'
/block should send a block
'
,
function
(
done
)
{
it
(
'
/block should send a block
'
,
function
(
done
)
{
let
completed
=
false
let
completed
=
false
const
client
=
new
ws
(
'
ws://127.0.0.1:7777/ws/block
'
);
const
client
=
new
ws
(
'
ws://127.0.0.1:7777/ws/block
'
);
client
.
on
(
'
message
'
,
function
message
(
data
)
{
client
.
on
ce
(
'
message
'
,
function
message
(
data
)
{
const
block
=
JSON
.
parse
(
data
);
const
block
=
JSON
.
parse
(
data
);
should
(
block
).
have
.
property
(
'
number
'
,
4
);
should
(
block
).
have
.
property
(
'
number
'
,
4
);
should
(
block
).
have
.
property
(
'
dividend
'
);
should
(
block
).
have
.
property
(
'
dividend
'
).
equal
(
null
)
should
(
block
).
have
.
property
(
'
monetaryMass
'
).
equal
(
400
)
should
(
block
).
have
.
property
(
'
monetaryMass
'
).
not
.
equal
(
"
400
"
)
if
(
!
completed
)
{
if
(
!
completed
)
{
completed
=
true
;
completed
=
true
;
done
();
done
();
...
@@ -186,6 +211,25 @@ describe("HTTP API", function() {
...
@@ -186,6 +211,25 @@ describe("HTTP API", function() {
});
});
});
});
it
(
'
/block (number 5) should send a block
'
,
()
=>
co
(
function
*
()
{
let
completed
=
false
yield
commit
({
time
:
now
+
120
*
5
});
const
client
=
new
ws
(
'
ws://127.0.0.1:7777/ws/block
'
);
return
new
Promise
(
res
=>
{
client
.
once
(
'
message
'
,
function
message
(
data
)
{
const
block
=
JSON
.
parse
(
data
);
should
(
block
).
have
.
property
(
'
number
'
,
5
);
should
(
block
).
have
.
property
(
'
dividend
'
).
equal
(
100
)
should
(
block
).
have
.
property
(
'
monetaryMass
'
).
equal
(
600
)
should
(
block
).
have
.
property
(
'
monetaryMass
'
).
not
.
equal
(
"
600
"
)
if
(
!
completed
)
{
completed
=
true
;
res
();
}
})
})
}))
it
(
'
/block should answer to pings
'
,
function
(
done
)
{
it
(
'
/block should answer to pings
'
,
function
(
done
)
{
const
client
=
new
ws
(
'
ws://127.0.0.1:7777/ws/block
'
);
const
client
=
new
ws
(
'
ws://127.0.0.1:7777/ws/block
'
);
client
.
on
(
'
pong
'
,
function
message
(
data
,
flags
)
{
client
.
on
(
'
pong
'
,
function
message
(
data
,
flags
)
{
...
@@ -217,6 +261,7 @@ function expectJSON(promise, json) {
...
@@ -217,6 +261,7 @@ function expectJSON(promise, json) {
function
postBlock
(
server2
)
{
function
postBlock
(
server2
)
{
return
function
(
block
)
{
return
function
(
block
)
{
console
.
log
(
typeof
block
==
'
string
'
?
block
:
block
.
getRawSigned
())
return
post
(
server2
,
'
/blockchain/block
'
)({
return
post
(
server2
,
'
/blockchain/block
'
)({
block
:
typeof
block
==
'
string
'
?
block
:
block
.
getRawSigned
()
block
:
typeof
block
==
'
string
'
?
block
:
block
.
getRawSigned
()
})
})
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment