12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- import crypto from 'k6/crypto';
- import exec from 'k6/execution';
- import { uuidv4 } from 'https://jslib.k6.io/k6-utils/1.4.0/index.js';
- import moment from "cdnjs.com/libraries/moment.js/2.18.1";
- const envSetting = JSON.parse(open('env.txt'));
- const partnerId = envSetting.partnerId;
- const apiKey = envSetting.apiKey;
- export function GetP(baseUrl, apiPath, apiParam, bodyData) {
- const evsenNum = GetEvseNum();
- const randomUUID = uuidv4();
- const ts = ~~ (moment().valueOf() /1000);
-
- const urlapi = baseUrl+apiPath;
- const url = apiParam == "" ? urlapi : urlapi + '?' + apiParam;
-
- var assembledata = apiParam + bodyData + ts + partnerId + apiKey;
-
- var hash = crypto.md5(assembledata.toLowerCase(), 'hex').toString();
-
- const params = {
- headers: {
- 'Timestamp': ts,
- 'Signature': hash,
- 'PartnerId': partnerId,
- 'Content-Type': 'application/json'
- },
- }
-
- return {
- url: url,
- bodyData: bodyData,
- params : params
- };
- }
- export function GetSessionId(res){
- var data = JSON.parse(res.body).Data;
- var sessions = JSON.parse(data).Sessions;
- var session = sessions[0].SessionId;
- return session;
- }
- export function GetEvseNum(){
- const instanceId = exec.vu.idInTest;
- return ("00" + instanceId).slice(-3);
- }
|