@rohitbakoliya/test-gen
Version:
Quickly generate test cases for stress testing using interactive CLI.
32 lines (31 loc) • 1.12 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const Random_1 = __importDefault(require("../../helper/Random"));
const RndDirectedUnweighted_1 = __importDefault(require("./RndDirectedUnweighted"));
/**
* Generates Random directed weighted Graph
* @returns weight-edge set
*/
const RndDirectedWeighted = ({ nodesRange, edgesRange, wtRange }) => {
const { result, edges, nodes } = RndDirectedUnweighted_1.default({ nodesRange, edgesRange });
const wtEdges = [];
result.forEach(edge => {
const rndWt = Random_1.default({ max: wtRange[1], min: wtRange[0] });
wtEdges.push([...edge, rndWt]);
});
// creating output for graphs
let output = `${nodes} ${edges}\n`;
wtEdges.forEach(function (wtEdge) {
output += wtEdge.join(' ') + '\n';
});
return {
result: wtEdges,
nodes,
edges,
output,
};
};
exports.default = RndDirectedWeighted;