UNPKG

8.1 kBJavaScriptView Raw
1!function(){var e=require("./Logger.js");require("request-promise");require("dotenv").config();void 0!=process.env.build_no&&process.env.build_no;for(var s=0;s<process.argv.length;s++){if("--params"==process.argv[s].split("=")[0]){var r=process.argv[s].split("=")[1].split(",")[0];r=r.split(":")}}if(void 0!=process.env.rallyworkspace)var t=process.env.rallyworkspace;else t="";if(void 0!=process.env.method)o=process.env.method;else var o="Automated";if(void 0!=process.env.rallyProxy)var n=process.env.rallyProxy;else e.info("No proxy defined - check .env file"),console.log("No proxy defined - check .env file"),callback();var i;void 0!=r?i=r[1]:void 0==r&&void 0!=process.env.apiKey?i=process.env.apiKey:(e.info("No apiKey provided - check .env file or command line parameter"),console.log("No apiKey provided - check .env file or command line parameter"),callback());var l="https://rally1.rallydev.com/slm/webservice/v2.0/";module.exports=new function(){return{queryUserStory:function(e,s,r,t,o,l,u,a,d,c,f){var p,y;require("request-promise")({method:"GET",url:"https://rally1.rallydev.com/slm/webservice/v2.0/hierarchicalrequirement?query=(FormattedID%20%3D%20"+e+")&fetch=true",headers:{zsessionid:i},proxy:n}).then(function(e,n){if(!n){var i=JSON.parse(e);return p=i.QueryResult.TotalResultCount>0?i.QueryResult.Results[0].ObjectID:"",y={body:i,user_story_id:p,json:s,i:r,j:t,test_case_name:o,test_case_description:l,glb_folder_id:u,line:a,duration:d,status:c},f(y)}console.log("error: "+n),f(y)})},queryTestCases:function(e,s,r,t,o,u,a){var d,c=!1,f=0;require("request-promise")({method:"GET",url:l+"testcase?query=(Name%20%3D%20"+e+")&fetch=true",headers:{zsessionid:i},proxy:n}).then(function(n,i){var l=0;if(i)console.log("Rally error: "+i);else{var p=JSON.parse(n);p.QueryResult.TotalResultCount>0&&p.QueryResult.Results[0]._refObjectName==e?(null==p.QueryResult.Results[0].LastResult?c=!1:(c=!0,f=p.QueryResult.Results[0].LastResult._ref,f=f.split("/"),f=f[7]),l=p.QueryResult.Results[0].ObjectID,d=null!=p.QueryResult.Results[0].RevisionHistory._ref?p.QueryResult.Results[0].RevisionHistory._ref:"",found=!0):(found=!1,c=!1);var y={found:found,json:s,i:r,j:t,id:l,case_name:e,user_story:o,glb_folder_id:u,last_run:c,test_case_result_id:f,revision_history_ref:d};a(y)}})},queryTestFolders:function(e,s,r,t,o,u){require("request-promise")({method:"GET",url:l+"testfolder?query=(Name%20%3D%20"+e+")&fetch=true",headers:{zsessionid:i},proxy:n}).then(function(n,i){var l=0;if(i)console.log("Rally error: "+i);else{var a=JSON.parse(n);a.QueryResult.TotalResultCount>0&&a.QueryResult.Results[0]._refObjectName==e&&(0==o||null!=a.QueryResult.Results[0].Parent)?(l=a.QueryResult.Results[0].ObjectID,found=!0):found=!1;var d={found:found,json:s,i:r,j:t,folderID:l,test_plan:e};u(d)}})},queryTestSet:function(e,s,r,t,o,l,u,a,d,c){if(""==e)c(p={test_set_id:"",status:s,duration:r,glb_test_case_id:t,glb_folder_id:o,json:l,i:u,j:a,k:d});else{var f,p;require("request-promise")({method:"GET",url:"https://rally1.rallydev.com/slm/webservice/v2.0/testset?query=(FormattedID%20%3D%20"+e+")&fetch=true",headers:{zsessionid:i},proxy:n}).then(function(e,n){var i=JSON.parse(e);f=i.QueryResult.TotalResultCount>0?i.QueryResult.Results[0].ObjectID:"",c(p={test_set_id:f,status:s,duration:r,glb_test_case_id:t,glb_folder_id:o,json:l,i:u,j:a,k:d})})}},queryRevisionHistory:function(e,s,r,t,o,l,u,a,d,c,f,p){var y,v;require("request-promise")({method:"GET",url:e+"/Revisions",headers:{zsessionid:i},proxy:n}).then(function(e,n){if(n)console.log("Rally error: "+n),p();else{var i=JSON.parse(e);if(i.QueryResult.TotalResultCount>0){y=i.QueryResult.Results[0].User._ref;var _={owner:(v=y.split("/"))[7],user_story:s,json:r,i:t,j:o,test_case_name:l,test_case_description:u,glb_folder_id:a,line:d,duration:c,status:f};p(_)}}})},createTestPlan:function(e,s,r,o,u,a,d){var c,f;c=0==r?""!=t?'{\n "testfolder":\n {\n "Name":"'+e+'",\n "Workspace":"/Workspace/'+t+'"\n }\n}':'{\n "testfolder":\n {\n "Name":"'+e+'"\n }\n}':""!=t?'{\n "testfolder":\n {\n "Name":"'+e+'" ,\n "Parent":"'+r+'"\n "Workspace":"/Workspace/'+t+'"\n }\n}':'{\n "testfolder":\n {\n "Name":"'+e+'" ,\n "Parent":"'+r+'"\n }\n}';var p;require("request-promise")({method:"POST",url:l+"testfolder/create?fetch=true",headers:{zsessionid:i},body:c,proxy:n}).then(function(e,s){if(s)console.log("Rally error: "+s);else{var r=JSON.parse(e);f=r.CreateResult.Object.ObjectID,p={json:o,i:u,j:a,id:f}}return d(p)})},createTestCaseResult:function(e,s,r,t,o,u,a,d,c,f,p){r>9999999999&&(r=9999999999),"passed"==s?s="Pass":"failed"==s?s="Fail":"skipped"==s&&(s="Inconclusive",r=0);var y=(new Date).toISOString(),v=0;require("request-promise")({method:"POST",url:l+"testcaseresult/create",headers:{zsessionid:i},proxy:n,body:'{\n "testcaseresult":\n {\n "TestCase":"/testcase/'+t+'",\n "Build":"'+e+'",\n "Duration":"'+r+'",\n "Verdict":"'+s+'",\n "Date":"'+y+'",\n "TestSet":"'+f+'"\n }\n}'}).then(function(e,s){if(!s){var r=(e=JSON.parse(e)).CreateResult.Errors;return v=""!=r?null:e.CreateResult.Object.ObjectID,p({json:u,i:a,j:d,k:c,id:v})}console.log("Rally error: "+s)})},createTestCase:function(e,s,r,u,a,d,c,f,p,y,v,_){var m=require("request-promise");void 0==f&&(f=0),null==r&&(r=glb_subfolder_id);var h,R=0;""==s&&(s="N/A"),m({method:"POST",url:l+"testcase/create",headers:{zsessionid:i},proxy:n,body:""!=t?'{\n "testcase":\n {\n "Name":"'+e+'",\n "Description":"'+s+'",\n "Method":"'+o+'",\n "TestFolder":"'+r+'",\n "Workspace":"/Workspace/'+t+'",\n "WorkProduct":"'+v+'"\n }\n}':'{\n "testcase":\n {\n "Name":"'+e+'",\n "Description":"'+s+'",\n "Method":"'+o+'",\n "TestFolder":"'+r+'",\n "WorkProduct":"'+v+'"\n }\n}'}).then(function(e,s){return s?(console.log("Rally error: "+s),h={json:u,i:a,j:d,k:c,duration:f,line:p,id:"returned null",status:y,folder_id:r,user_story:v},_(h)):(e=JSON.parse(e),R=void 0!=e.CreateResult.Object?e.CreateResult.Object.ObjectID:0,h={json:u,i:a,j:d,k:c,duration:f,line:p,id:R,status:y,folder_id:r,user_story:v},_(h))})},updateTestCaseResult:function(e,s,r,t,o,u,a,d,c,f,p){void 0==r&&(r=0),void 0!=r&&r>9999999999&&(r=9999999999),"passed"==o?o="Pass":"failed"==o?o="Fail":"skipped"==o&&(o="Inconclusive",r=0);var y,v=(new Date).toISOString();require("request-promise")({method:"POST",url:l+"testcaseresult/"+s,headers:{zsessionid:i},proxy:n,body:'{\n "testcaseresult":\n {\n "Build":"'+t+'",\n "Duration":"'+r+'",\n "Date":"'+v+'",\n "TestCase":"/testcase/'+e+'",\n "Verdict":"'+o+'",\n "TestSet":"'+f+'"\n }\n}'}).then(function(e,s){if(!s)return y={i:a,j:d,k:c},p(y);console.log("Rally error: "+s)})},updateTestCase:function(e,s,r,t,u,a,d,c,f,p,y,v,_,m,h){require("request-promise")({method:"POST",url:l+"/testcase/"+e,headers:{zsessionid:i},proxy:n,body:'{\n "testcase":\n {\n "WorkProduct":"'+s+'",\n "Owner":"'+_+'"\n "Method":"'+o+'",\n }\n}'}).then(function(o,n){n?(console.log("error occurred: "+n),h()):(o=JSON.parse(o),h({test_case_id:e,user_story:s,i:r,j:t,body:o,json:a,test_case_name:d,test_case_description:c,glb_folder_id:f,line:p,duration:y,status:v}))})},updateTestSet:function(e,s,r,t,o,l,u,a,d,c,f){if(""==e)f(p={test_set_id:"",status:r,duration:t,glb_test_case_id:o,glb_folder_id:l,json:u,i:a,j:d,k:c});else{var p;require("request-promise")({method:"POST",url:"https://rally1.rallydev.com/slm/webservice/v2.x/TestSet/"+e+"/TestCases/add?fetch=true",headers:{zsessionid:i},proxy:n,body:'{"CollectionItems":[{"_ref":"/testcase/'+s+'"}]}'}).then(function(s,n){f(p={test_set_id:e,status:r,duration:t,glb_test_case_id:o,glb_folder_id:l,json:u,i:a,j:d,k:c})})}}}}}();
\No newline at end of file