it("return false", function() { requestObj.query["order-direction"] = null; requestObj.query["order"] = "not-DESC-ASC"; validateResult = helper.parseParameter(requestObj); expect(validateResult.valid).to.equal(false); expect(validateResult.message).to.equal("order-direction must be DESC or ASC"); });
it("return false", function() { delete requestObj.query["order-direction"] requestObj.query["order"] = 1; validateResult = helper.parseParameter(requestObj); expect(validateResult.valid).to.equal(false); expect(validateResult.message).to.equal("order-direction must be a string"); });
it("return true, order is set to ASC", function() { requestObj.query["order-direction"] = null; requestObj.query["order"] = null; validateResult = helper.parseParameter(requestObj); expect(validateResult.valid).to.equal(true); expect(validateResult.parameters["order"]).to.equal("DESC"); });
it("return true, order-direction take precedence", function() { requestObj.query["order-direction"] = "ASC"; requestObj.query["order"] = "DESC"; validateResult = helper.parseParameter(requestObj); expect(validateResult.valid).to.equal(true); expect(validateResult.parameters["order"]).to.equal("ASC"); });
it("return true, startTime is set to 0", function() { delete requestObj.query["start-time"]; validateResult = helper.parseParameter(requestObj); expect(validateResult.valid).to.equal(true); expect(validateResult.parameters.startTime).to.equal(0); });
it("return false", function() { requestObj.params.metric_type = ""; validateResult = helper.parseParameter(requestObj); expect(validateResult.valid).to.equal(false); expect(validateResult.message).to.equal("metric_type is required"); });
it("return false", function() { requestObj.params.app_id = null; validateResult = helper.parseParameter(requestObj); expect(validateResult.valid).to.equal(false); expect(validateResult.message).to.equal("app_id is required"); });
it("return true", function() { validateResult = helper.parseParameter(requestObj); expect(validateResult.valid).to.equal(true); });
it("return false", function() { requestObj.query["results-per-page"] = 0; validateResult = helper.parseParameter(requestObj); expect(validateResult.valid).to.equal(false); expect(validateResult.message).to.equal("results-per-page must be greater than 0"); });
it("return true, reulstsPerPage is set to 50", function() { requestObj.query["results-per-page"] = null; validateResult = helper.parseParameter(requestObj); expect(validateResult.valid).to.equal(true); expect(validateResult.parameters.resultsPerPage).to.equal(50); });
it("return false", function() { requestObj.query["page"] = "not-integer"; validateResult = helper.parseParameter(requestObj); expect(validateResult.valid).to.equal(false); expect(validateResult.message).to.equal("page must be an integer"); });
it("return true, page is set to 1", function() { requestObj.query["page"] = null; validateResult = helper.parseParameter(requestObj); expect(validateResult.valid).to.equal(true); expect(validateResult.parameters.page).to.equal(1); });
it("return true, order is set to ASC", function() { delete requestObj.query["order"]; validateResult = helper.parseParameter(requestObj); expect(validateResult.valid).to.equal(true); expect(validateResult.parameters.order).to.equal("ASC"); });
it("return true, endTime is set to -1", function() { requestObj.query["end-time"] = null; validateResult = helper.parseParameter(requestObj); expect(validateResult.valid).to.equal(true); expect(validateResult.parameters.endTime).to.equal(-1); });