decentralized-internet
Version:
An NPM library of programs to create decentralized web and distributed computing projects
1 lines • 1.87 kB
JavaScript
var request=require("request"),fs=require("fs"),Promise=require("bluebird"),path=require("path"),_=require("underscore"),qs=require("querystring");const Joi=require("@hapi/joi"),Lab=require("lab"),lab=exports.lab=Lab.script();var jobid,clusterpost=require("clusterpost-lib"),clustermodel=require("clusterpost-model"),inputs=["./data/gravitational-waves-simulation.jpg","./data/gravitational-waves-simulation.jpg","./data/gravitational-waves-simulation.jpg"],names=["./data/folder/1.jpg","./data/folder/2.jpg","./data/folder/folder1/3.jpg"],joiokres=Joi.object().keys({ok:Joi.boolean().valid(!0),id:Joi.string(),rev:Joi.string()}),job={executable:"cksum",parameters:[{flag:"",name:"./data/folder/1.jpg"}],inputs:[{name:"./data/folder/1.jpg"},{name:"./data/folder/folder1/3.jpg"}],outputs:[{type:"directory",name:"./"},{type:"tar.gz",name:"./"},{type:"file",name:"stdout.out"},{type:"file",name:"stderr.err"}],type:"job"},configfile="./conf.test.execution.json";lab.experiment("Test clusterpost",function(){lab.test("returns true when starts",function(){return clusterpost.start(configfile).then(function(){return!0})}),lab.test("returns true job is created",function(){return clusterpost.createAndSubmitJob(job,inputs,names).then(function(t){Joi.assert(t,Joi.string()),jobid=t})}),lab.test("returns true if get attachment output stream is valid using a download token",function(){return clusterpost.getDownloadToken(jobid,"./data/folder/folder1/3.jpg").then(function(t){return Joi.assert(t.token,Joi.string()),clusterpost.downloadAttachment(t.token)})}),lab.test("returns true if job is downloaded",function(){return clusterpost.downloadJob(jobid,"temp.tar.gz").then(function(t){console.log(t)})}),lab.test("returns true if the document is deleted",function(){return clusterpost.deleteJob(jobid).then(function(t){Joi.assert(t.status,Joi.string().valid("DELETE"))})})});