mirror of
https://github.com/Xahau/xahau.js.git
synced 2025-11-20 04:05:52 +00:00
* sets up linting config and runs `yarn lint --fix` once, so that all changes will show up correctly in future PRs. * Note that there are still a lot of linter errors.
90 lines
2.5 KiB
TypeScript
90 lines
2.5 KiB
TypeScript
import { assert } from "chai";
|
|
|
|
import { ValidationError } from "xrpl-local/common/errors";
|
|
|
|
import { verifyCheckCash } from "../../src/models/transactions/checkCash";
|
|
|
|
/**
|
|
* CheckCash Transaction Verification Testing.
|
|
*
|
|
* Providing runtime verification testing for each specific transaction type.
|
|
*/
|
|
describe("CheckCash Transaction Verification", function () {
|
|
it(`verifies valid CheckCash`, function () {
|
|
const validCheckCash = {
|
|
Account: "rfkE1aSy9G8Upk4JssnwBxhEv5p4mn2KTy",
|
|
TransactionType: "CheckCash",
|
|
Amount: "100000000",
|
|
CheckID:
|
|
"838766BA2B995C00744175F69A1B11E32C3DBC40E64801A4056FCBD657F57334",
|
|
Fee: "12",
|
|
} as any;
|
|
|
|
assert.doesNotThrow(() => verifyCheckCash(validCheckCash));
|
|
});
|
|
|
|
it(`throws w/ invalid CheckID`, function () {
|
|
const invalidCheckID = {
|
|
Account: "rfkE1aSy9G8Upk4JssnwBxhEv5p4mn2KTy",
|
|
TransactionType: "CheckCash",
|
|
Amount: "100000000",
|
|
CheckID: 83876645678909854567890,
|
|
} as any;
|
|
|
|
assert.throws(
|
|
() => verifyCheckCash(invalidCheckID),
|
|
ValidationError,
|
|
"CheckCash: invalid CheckID"
|
|
);
|
|
});
|
|
|
|
it(`throws w/ invalid Amount`, function () {
|
|
const invalidAmount = {
|
|
Account: "rfkE1aSy9G8Upk4JssnwBxhEv5p4mn2KTy",
|
|
TransactionType: "CheckCash",
|
|
Amount: 100000000,
|
|
CheckID:
|
|
"838766BA2B995C00744175F69A1B11E32C3DBC40E64801A4056FCBD657F57334",
|
|
} as any;
|
|
|
|
assert.throws(
|
|
() => verifyCheckCash(invalidAmount),
|
|
ValidationError,
|
|
"CheckCash: invalid Amount"
|
|
);
|
|
});
|
|
|
|
it(`throws w/ having both Amount and DeliverMin`, function () {
|
|
const invalidDeliverMin = {
|
|
Account: "rfkE1aSy9G8Upk4JssnwBxhEv5p4mn2KTy",
|
|
TransactionType: "CheckCash",
|
|
Amount: "100000000",
|
|
DeliverMin: 852156963,
|
|
CheckID:
|
|
"838766BA2B995C00744175F69A1B11E32C3DBC40E64801A4056FCBD657F57334",
|
|
} as any;
|
|
|
|
assert.throws(
|
|
() => verifyCheckCash(invalidDeliverMin),
|
|
ValidationError,
|
|
"CheckCash: cannot have both Amount and DeliverMin"
|
|
);
|
|
});
|
|
|
|
it(`throws w/ invalid DeliverMin`, function () {
|
|
const invalidDeliverMin = {
|
|
Account: "rfkE1aSy9G8Upk4JssnwBxhEv5p4mn2KTy",
|
|
TransactionType: "CheckCash",
|
|
DeliverMin: 852156963,
|
|
CheckID:
|
|
"838766BA2B995C00744175F69A1B11E32C3DBC40E64801A4056FCBD657F57334",
|
|
} as any;
|
|
|
|
assert.throws(
|
|
() => verifyCheckCash(invalidDeliverMin),
|
|
ValidationError,
|
|
"CheckCash: invalid DeliverMin"
|
|
);
|
|
});
|
|
});
|