@sap_oss/wdio-qmate-service
Version:
[](https://api.reuse.software/info/github.com/SAP/wdio-qmate-service)[](http
118 lines (95 loc) • 3.74 kB
JavaScript
describe("data - getSecureData - default source", function () {
let data;
it("Execution", function () {
data = util.data.getSecureData("getSecureData");
});
it("Verification 1 - hashed value", function () {
const dataExp = "super-duper-sensitive-pw";
const dataAct = data.session.password;
common.assertion.expectEqual(dataAct, dataExp);
});
it("Verification 2 - plain string value", function () {
const dataExp = "PLAIN_VALUE";
const dataAct = data.test.plainValue;
common.assertion.expectEqual(dataAct, dataExp);
});
it("Verification 3 - plain number value", function () {
const dataExp = 42;
const dataAct = data.test.number;
common.assertion.expectEqual(dataAct, dataExp);
});
it("Verification 4 - short hex value is not decrypted", function () {
const dataExp = "deadbeef12345678";
const dataAct = data.test.shortHex;
common.assertion.expectEqual(dataAct, dataExp);
});
it("Verification 5 - nested value", function () {
const dataExp = "TEST";
const dataAct = data.test.inner.value;
common.assertion.expectEqual(dataAct, dataExp);
});
it("Verification 6 - alternatives from different keys", function () {
const dataExp = "super-duper-sensitive-pw";
const dataAct = data.alternatives;
common.assertion.expectEqual(dataAct, dataExp);
});
});
describe("data - getSecureData - custom source", function () {
let data;
it("Execution", function () {
const source = "customSourceData";
data = util.data.getSecureData("getSecureData", source);
});
it("Verification", function () {
const dataExp = "super-duper-sensitive-pw";
const dataAct = data.session.password;
common.assertion.expectEqual(dataAct, dataExp);
});
});
describe("data - getSecureData - base64 encoded hex value", function () {
let data;
it("Execution", function () {
const options = { useBase64Input: true };
data = util.data.getSecureData("decrypt.base64", "data", options);
});
it("Verification - base64 encoded hex value is decrypted", function () {
const dataExp = "super-duper-sensitive-pw";
const dataAct = data.password;
common.assertion.expectEqual(dataAct, dataExp);
});
});
describe("data - getSecureData - base64 encoded hex value auto-detected (no options)", function () {
let data;
it("Execution", function () {
data = util.data.getSecureData("decrypt.base64", "data");
});
it("Verification - base64 encoded hex value is decrypted via fallback auto-detection", function () {
const dataExp = "super-duper-sensitive-pw";
const dataAct = data.password;
common.assertion.expectEqual(dataAct, dataExp);
});
});
// =================================== KEEP DISABLED FOR PIPELINE EXECUTION ===================================
// Can't be executed in pipeline because file is missing. Add the following to "data" folder to execute locally:
// getSecureData.local.json
// {
// "session": {
// "password": "super-duper-sensitive-pw"
// }
// }
// ============================================================================================================
// describe("data - getSecureData - local fallback", function () {
// let data;
// it("Preparation", function () {
// global.util.data.privateKeyFound = false;
// });
// it("Execution", function () {
// data = util.data.getSecureData("getSecureData");
// });
// it("Verification", function () {
// const dataExp = "super-duper-sensitive-pw";
// const dataAct = data.session.password;
// common.assertion.expectEqual(dataAct, dataExp);
// });
// });
// ============================================================================================================