structure-verifier 0.0.5 → 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # structure-verifier 0.0.5
1
+ # structure-verifier 0.0.6
2
2
 
3
3
  structure-verifier is a typescrpt library to validate data of "any" type and to ensure that it corresponds to a data type.
4
4
 
@@ -4,7 +4,7 @@ interface VAnyConditions extends VBadTypeMessage, VDefaultValue<number>, VVCIsRe
4
4
  }
5
5
  export declare class VAny extends Verifier<any | null> {
6
6
  protected cond?: VAnyConditions | undefined;
7
- check(data: any): number | null;
7
+ check(data: any): any | null;
8
8
  constructor(cond?: VAnyConditions | undefined);
9
9
  }
10
10
  export {};
@@ -41,7 +41,6 @@ function formatWithTimeZone(format) {
41
41
  }
42
42
  function vDate(data, badTypeMessage, conds) {
43
43
  let timeZone = (0, message_1.getValue)(conds === null || conds === void 0 ? void 0 : conds.timeZone) || "UTC";
44
- console.log(timeZone);
45
44
  if (data === '' || !(typeof data === 'number' || typeof data === 'string' || data instanceof Date || moment_timezone_1.default.isMoment(data))) {
46
45
  throw new v_error_1.VerificationError([{
47
46
  key: "",
@@ -1 +1 @@
1
- {"version":3,"file":"v_date.js","sourceRoot":"","sources":["../../../../src/src/verifiers/date/v_date.ts"],"names":[],"mappings":";;;;;;AAAA,sEAAiD;AAEjD,qDAAiF;AACjF,iDAAwD;AACxD,0CAAuC;AACvC,yBAAM,CAAC,2BAA2B,GAAG,IAAI,CAAC;AAkB1C,MAAM,SAAS,GAAyB;IACpC,MAAM,EAAE;QACJ,EAAE,EAAE,CAAC,MAA0B,EAAE,EAAE,CAAC,yBAAyB,MAAM,CAAC,MAAM,EAAE;QAC5E,EAAE,EAAE,CAAC,MAA0B,EAAE,EAAE,CAAC,wBAAwB,MAAM,CAAC,MAAM,EAAE;KAC9E;IACD,QAAQ,EAAE;QACN,EAAE,EAAE,CAAC,MAA4B,EAAE,EAAE,CAAC,8BAA8B,MAAM,CAAC,QAAQ,EAAE;QACrF,EAAE,EAAE,CAAC,MAA4B,EAAE,EAAE,CAAC,2BAA2B,MAAM,CAAC,QAAQ,EAAE;KACrF;IACD,OAAO,EAAE;QACL,EAAE,EAAE,CAAC,MAAkC,EAAE,EAAE,CAAC,4BAA4B,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE;QACjG,EAAE,EAAE,CAAC,MAAkC,EAAE,EAAE,CAAC,4BAA4B,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE;KACpG;IACD,OAAO,EAAE;QACL,EAAE,EAAE,CAAC,MAAkC,EAAE,EAAE,CAAC,4BAA4B,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE;QACjG,EAAE,EAAE,CAAC,MAAkC,EAAE,EAAE,CAAC,+BAA+B,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE;KACvG;IACD,cAAc,EAAE;QACZ,EAAE,EAAE,GAAG,EAAE,CAAC,oBAAoB;QAC9B,EAAE,EAAE,GAAG,EAAE,CAAC,gBAAgB;KAC7B;CACJ,CAAA;AAED,SAAS,YAAY,CAAC,KAAU;IAC5B,MAAM,mBAAmB,GAAG,+BAA+B,CAAC;IAC5D,MAAM,sBAAsB,GAAG,yGAAyG,CAAC;IACzI,OAAO,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACjF,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAc;IACtC,OAAO,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;AACvC,CAAC;AAED,SAAS,KAAK,CAAC,IAAS,EAAE,cAAsC,EAAE,KAAuB;IACrF,IAAI,QAAQ,GAAG,IAAA,kBAAQ,EAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,CAAC,IAAI,KAAK,CAAA;IACjD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACrB,IAAI,IAAI,KAAK,EAAE,IAAI,CAAC,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,YAAY,IAAI,IAAI,yBAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAC1H,MAAM,IAAI,2BAAiB,CAAC,CAAC;gBACzB,GAAG,EAAE,EAAE;gBACP,OAAO,EAAE,IAAA,oBAAU,EAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,KAAI,SAAS,CAAC,CAAC,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,cAAc,CAAC;aACzH,CAAC,CAAC,CAAC;IACR,CAAC;IAED,IAAI,IAAI,GAAkB,IAAA,yBAAM,GAAE,CAAC;IAEnC,IAAI,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,EAAE,CAAC;QAChB,IAAI,MAAM,GAAG,IAAA,kBAAQ,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,GAAG,IAAA,yBAAM,EAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YAClB,MAAM,IAAI,2BAAiB,CAAC,CAAC;oBACzB,GAAG,EAAE,EAAE;oBACP,OAAO,EAAE,IAAA,oBAAU,EAAC,KAAK,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC;iBAC1E,CAAC,CAAC,CAAC;QACR,CAAC;QACD,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9B,IAAI,GAAG,yBAAM,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,EAAE,QAAQ,CAAC,CAAA;QAClE,CAAC;IACL,CAAC;SAAM,CAAC;QACJ,IAAI,GAAG,IAAA,yBAAM,EAAC,IAAI,CAAC,CAAC;QACpB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;YAClD,IAAI,GAAG,yBAAM,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,EAAE,QAAQ,CAAC,CAAA;QAClE,CAAC;IAEL,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;QAClB,MAAM,IAAI,2BAAiB,CAAC,CAAC;gBACzB,GAAG,EAAE,EAAE;gBACP,OAAO,EAAE,IAAA,oBAAU,EAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,KAAI,SAAS,CAAC,CAAC,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,cAAc,CAAC;aACzH,CAAC,CAAC,CAAC;IACR,CAAC;IAED,IAAI,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,KAAI,IAAI,CAAC,OAAO,CAAC,IAAA,kBAAQ,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QAC1D,MAAM,IAAI,2BAAiB,CAAC,CAAC;gBACzB,GAAG,EAAE,EAAE;gBACP,OAAO,EAAE,IAAA,oBAAU,EAAC,KAAK,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,IAAA,kBAAQ,EAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,CAAC,OAAO,CAAC;aAC9F,CAAC,CAAC,CAAC;IACR,CAAC;IAED,IAAI,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,OAAO,KAAI,IAAI,CAAC,QAAQ,CAAC,IAAA,kBAAQ,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,2BAAiB,CAAC,CAAC;gBACzB,GAAG,EAAE,EAAE;gBACP,OAAO,EAAE,IAAA,oBAAU,EAAC,KAAK,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,IAAA,kBAAQ,EAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,CAAC,OAAO,CAAC;aAC9F,CAAC,CAAC,CAAC;IACR,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AAGD,MAAa,YAAa,SAAQ,mBAAuB;IACrD,KAAK,CAAC,IAAS;QACX,OAAO,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9E,CAAC;IACD,YAAsB,IAAsB;QACxC,KAAK,CAAC,IAAI,CAAC,CAAC;QADM,SAAI,GAAJ,IAAI,CAAkB;QAExC,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC,cAAc,CAAC;IACnD,CAAC;CACJ;AARD,oCAQC;AAED,MAAa,KAAM,SAAQ,mBAA8B;IACrD,KAAK,CAAC,IAAS;QACX,IAAI,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC;IACD,YAAsB,IAAsB;QACxC,KAAK,CAAC,IAAI,CAAC,CAAC;QADM,SAAI,GAAJ,IAAI,CAAkB;QAExC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC,cAAc,CAAC;IACnD,CAAC;CACJ;AAbD,sBAaC"}
1
+ {"version":3,"file":"v_date.js","sourceRoot":"","sources":["../../../../src/src/verifiers/date/v_date.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,33 @@
1
1
  import { MessageType, VBadTypeMessage, VDefaultValue, VVCIsRequired } from "../../interfaces/types";
2
2
  import { Verifier } from "../verifier";
3
- interface VObjectConditions<T> extends VBadTypeMessage, VDefaultValue<T>, VVCIsRequired {
3
+ interface VObjectConditions<T extends Record<string, Verifier<any>>> extends VBadTypeMessage, VDefaultValue<T>, VVCIsRequired {
4
4
  invalidPropertyMessage?: MessageType<void, void>;
5
5
  strictMode?: boolean;
6
6
  ignoreCase?: boolean;
7
7
  takeAllValues?: boolean;
8
8
  properties: T;
9
+ conds?: (val: {
10
+ [K in keyof T]: ReturnType<T[K]['check']>;
11
+ } | null) => void;
12
+ }
13
+ interface VObjectConditionsNotNull<T extends Record<string, Verifier<any>>> extends VBadTypeMessage, VDefaultValue<T>, VVCIsRequired {
14
+ invalidPropertyMessage?: MessageType<void, void>;
15
+ strictMode?: boolean;
16
+ ignoreCase?: boolean;
17
+ takeAllValues?: boolean;
18
+ properties: T;
19
+ conds?: (val: {
20
+ [K in keyof T]: ReturnType<T[K]['check']>;
21
+ }) => void;
9
22
  }
10
23
  export declare class VObjectNotNull<T extends Record<string, Verifier<any>>> extends Verifier<{
11
24
  [K in keyof T]: ReturnType<T[K]['check']>;
12
25
  }> {
13
- protected cond: VObjectConditions<T>;
26
+ protected cond: VObjectConditionsNotNull<T>;
14
27
  check(data: any): {
15
28
  [K in keyof T]: ReturnType<T[K]['check']>;
16
29
  };
17
- constructor(cond: VObjectConditions<T>);
30
+ constructor(cond: VObjectConditionsNotNull<T>);
18
31
  }
19
32
  export declare class VObject<T extends Record<string, Verifier<any>>> extends Verifier<{
20
33
  [K in keyof T]: ReturnType<T[K]['check']>;
@@ -93,6 +93,9 @@ function vObject(data, badTypeMessage, conds) {
93
93
  if (errors.length > 0) {
94
94
  throw new v_error_1.VerificationError(errors);
95
95
  }
96
+ if (conds.conds) {
97
+ conds.conds(value);
98
+ }
96
99
  return value;
97
100
  }
98
101
  class VObjectNotNull extends verifier_1.Verifier {
@@ -1 +1 @@
1
- {"version":3,"file":"v_object.js","sourceRoot":"","sources":["../../../../src/src/verifiers/object/v_object.ts"],"names":[],"mappings":";;;AAAA,iDAAwD;AAExD,qDAAuE;AACvE,wCAAoC;AACpC,8CAAyD;AACzD,0CAAuC;AAWvC,SAAS,OAAO,CAA0C,IAAS,EAAE,cAAsC,EAAE,KAA2B;IACpI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAClD,MAAM,IAAI,2BAAiB,CAAC,CAAC;gBACzB,GAAG,EAAE,EAAE;gBACP,OAAO,EAAE,IAAA,oBAAU,EAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,KAAI,SAAS,CAAC,CAAC,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,cAAc,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,cAAc,CAAC;aACzH,CAAC,CAAC,CAAA;IACP,CAAC;IAED,IAAI,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACpD,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QACnB,IAAI,GAAG,GAAa,EAAE,CAAA;QACtB,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACnB,IAAI,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;YACpD,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAA;QAC/D,CAAC;;YAEG,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5D,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjB,IAAI,KAAK,GAAG,IAAI,2BAAiB,CAC7B,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;gBACR,OAAO;oBACH,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,IAAA,oBAAU,EAAC,KAAK,CAAC,sBAAsB,EAAE,SAAS,EAAE;wBACjE,EAAE,EAAE,GAAG,EAAE,CAAC,4BAA4B;wBACtC,EAAE,EAAE,GAAG,EAAE,CAAC,yBAAyB;qBACtC,CAAC;iBACL,CAAA;YACL,CAAC,CAAC,CACL,CAAA;YACD,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;gBACvB,MAAM,KAAK,CAAC;QACpB,CAAC;IACL,CAAC;IACD,IAAI,MAAM,GAAkB,EAAE,CAAC;IAC/B,IAAI,KAAK,GAAQ,EAAE,CAAA;IACnB,IAAI,CAAC,GAAqC,EAAE,CAAC;IAC7C,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QACjC,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACnB,IAAI,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,EAAE,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC,CAAA;YAC5E,IAAI,OAAO,EAAE,CAAC;gBACV,CAAC,CAAC,IAAI,CAAC;oBACH,IAAI,EAAE,GAAG;oBACT,IAAI,EAAE,OAAO;iBAChB,CAAC,CAAA;YACN,CAAC;iBAAM,CAAC;gBACJ,CAAC,CAAC,IAAI,CAAC;oBACH,IAAI,EAAE,GAAG;oBACT,IAAI,EAAE,GAAG;iBACZ,CAAC,CAAA;YACN,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,CAAC,CAAC,IAAI,CAAC;gBACH,IAAI,EAAE,GAAG;gBACT,IAAI,EAAE,GAAG;aACZ,CAAC,CAAA;QACN,CAAC;IACL,CAAC;IACD,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;QACtB,KAAK,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC;YACrB,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC;gBAC5B,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;QACL,CAAC;IACL,CAAC;IACD,KAAK,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;QACjB,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAClE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;QAC9B,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YAClB,IAAI,KAAK,YAAY,2BAAiB,EAAE,CAAC;gBACrC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;oBACnC,IAAI,CAAC,CAAC,CAAC,GAAG;wBAAE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAA;oBAC7B,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,OAAO,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,cAAc,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,gBAAM,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,uBAAa,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,YAAI;wBAC/P,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;oBAC3D,CAAC,CAAC,OAAO,GAAG,SAAS,CAAA;oBACrB,OAAO,CAAC,CAAC;gBACb,CAAC,CAAC,CAAC,CAAA;YACP,CAAC;iBAAM,CAAC;gBACJ,MAAM,KAAK,CAAC;YAChB,CAAC;QAEL,CAAC;IAEL,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,2BAAiB,CAAC,MAAM,CAAC,CAAA;IACvC,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,MAAa,cAAwD,SAAQ,mBAAuD;IAChI,KAAK,CAAC,IAAS;QACX,OAAO,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAChF,CAAC;IACD,YAAsB,IAA0B;QAC5C,KAAK,CAAC,IAAI,CAAC,CAAC;QADM,SAAI,GAAJ,IAAI,CAAsB;QAE5C,IAAI,CAAC,cAAc,GAAG;YAClB,EAAE,EAAE,GAAG,EAAE,CAAC,oBAAoB;YAC9B,EAAE,EAAE,GAAG,EAAE,CAAC,kBAAkB;SAC/B,CAAA;IACL,CAAC;CACJ;AAXD,wCAWC;AAED,MAAa,OAAiD,SAAQ,mBAA8D;IAChI,KAAK,CAAC,IAAS;QACX,IAAI,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACxD,CAAC;IACD,YAAsB,IAA0B;QAC5C,KAAK,CAAC,IAAI,CAAC,CAAC;QADM,SAAI,GAAJ,IAAI,CAAsB;QAE5C,IAAI,CAAC,cAAc,GAAG;YAClB,EAAE,EAAE,GAAG,EAAE,CAAC,oBAAoB;YAC9B,EAAE,EAAE,GAAG,EAAE,CAAC,kBAAkB;SAC/B,CAAA;IACL,CAAC;CACJ;AAfD,0BAeC"}
1
+ {"version":3,"file":"v_object.js","sourceRoot":"","sources":["../../../../src/src/verifiers/object/v_object.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "structure-verifier",
3
- "version": "0.0.5",
3
+ "version": "0.0.6",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "repository": {
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const index_1 = require("../../../index");
4
- describe('VAny', () => {
5
- it('should validate data as any', () => {
6
- const validator = new index_1.Verifiers.VAny();
7
- expect(validator.check([1, 2, 3])).toEqual([1, 2, 3]);
8
- expect(validator.check(null)).toBeNull();
9
- expect(validator.check(1)).toEqual(1);
10
- expect(validator.check("TEST")).toEqual("TEST");
11
- });
12
- });
13
- //# sourceMappingURL=v_any.test.js.map
@@ -1,74 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const index_1 = require("../../../index");
4
- const v_error_1 = require("../../error/v_error");
5
- describe('VArray', () => {
6
- it('should validate arrays with valid data', () => {
7
- const validator = new index_1.Verifiers.VArray({
8
- verifier: new index_1.Verifiers.VNumberNotNull()
9
- });
10
- expect(validator.check([1, 2, 3])).toEqual([1, 2, 3]);
11
- });
12
- it('should throw a validation error for arrays with invalid data', () => {
13
- const validator = new index_1.Verifiers.VArray({
14
- verifier: new index_1.Verifiers.VNumberNotNull()
15
- });
16
- expect(() => validator.check([1, "2a", 3])).toThrow(v_error_1.VerificationError);
17
- });
18
- it('should return null for null or undefined values', () => {
19
- const validator = new index_1.Verifiers.VArray({
20
- verifier: new index_1.Verifiers.VNumberNotNull()
21
- });
22
- expect(validator.check(null)).toBeNull();
23
- });
24
- it('should throw a validation error for arrays that do not meet minLength condition', () => {
25
- const validator = new index_1.Verifiers.VArray({
26
- verifier: new index_1.Verifiers.VNumberNotNull(),
27
- minLength: 3
28
- });
29
- expect(() => validator.check([1, 2])).toThrow(v_error_1.VerificationError);
30
- });
31
- it('should throw a validation error for arrays that exceed maxLength condition', () => {
32
- const validator = new index_1.Verifiers.VArray({
33
- maxLength: 2,
34
- verifier: new index_1.Verifiers.VNumberNotNull()
35
- });
36
- expect(() => validator.check([1, 2, 3])).toThrow(v_error_1.VerificationError);
37
- });
38
- });
39
- describe('VArrayNotNull', () => {
40
- it('should validate arrays with valid data', () => {
41
- const validator = new index_1.Verifiers.VArrayNotNull({
42
- verifier: new index_1.Verifiers.VNumberNotNull()
43
- });
44
- expect(validator.check([1, 2, 3])).toEqual([1, 2, 3]);
45
- });
46
- it('should throw a validation error for arrays with invalid data', () => {
47
- const validator = new index_1.Verifiers.VArrayNotNull({
48
- verifier: new index_1.Verifiers.VNumberNotNull()
49
- });
50
- expect(() => validator.check([1, "2a", 3])).toThrow(v_error_1.VerificationError);
51
- });
52
- it('should throw a validation error for null or undefined values', () => {
53
- const validator = new index_1.Verifiers.VArrayNotNull({
54
- verifier: new index_1.Verifiers.VNumberNotNull()
55
- });
56
- expect(() => validator.check(null)).toThrow(v_error_1.VerificationError);
57
- expect(() => validator.check(undefined)).toThrow(v_error_1.VerificationError);
58
- });
59
- it('should throw a validation error for arrays that do not meet minLength condition', () => {
60
- const validator = new index_1.Verifiers.VArrayNotNull({
61
- verifier: new index_1.Verifiers.VNumberNotNull(),
62
- minLength: 3
63
- });
64
- expect(() => validator.check([1, 2])).toThrow(v_error_1.VerificationError);
65
- });
66
- it('should throw a validation error for arrays that exceed maxLength condition', () => {
67
- const validator = new index_1.Verifiers.VArrayNotNull({
68
- verifier: new index_1.Verifiers.VNumberNotNull(),
69
- maxLength: 2
70
- });
71
- expect(() => validator.check([1, 2, 3])).toThrow(v_error_1.VerificationError);
72
- });
73
- });
74
- //# sourceMappingURL=v_array.test.js.map
@@ -1,61 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const index_1 = require("../../../index");
4
- const v_error_1 = require("../../error/v_error");
5
- describe('VBoolean', () => {
6
- it('should validate true for various true values', () => {
7
- const validator = new index_1.Verifiers.VBoolean();
8
- expect(validator.check('1')).toBe(true);
9
- expect(validator.check(1)).toBe(true);
10
- expect(validator.check(true)).toBe(true);
11
- expect(validator.check('TRUE')).toBe(true);
12
- expect(validator.check('true')).toBe(true);
13
- });
14
- it('should validate false for various false values', () => {
15
- const validator = new index_1.Verifiers.VBoolean();
16
- expect(validator.check('0')).toBe(false);
17
- expect(validator.check(0)).toBe(false);
18
- expect(validator.check(false)).toBe(false);
19
- expect(validator.check('FALSE')).toBe(false);
20
- expect(validator.check('false')).toBe(false);
21
- });
22
- it('should throw a validation error for invalid boolean values', () => {
23
- const validator = new index_1.Verifiers.VBoolean();
24
- expect(() => validator.check('string')).toThrow(v_error_1.VerificationError);
25
- expect(() => validator.check(123)).toThrow(v_error_1.VerificationError);
26
- });
27
- it('should return null for null or undefined values', () => {
28
- const validator = new index_1.Verifiers.VBoolean();
29
- expect(validator.check(null)).toBeNull();
30
- expect(validator.check(undefined)).toBeNull();
31
- });
32
- });
33
- describe('VBooleanNotNull', () => {
34
- it('should validate true for various true values', () => {
35
- const validator = new index_1.Verifiers.VBooleanNotNull();
36
- expect(validator.check('1')).toBe(true);
37
- expect(validator.check(1)).toBe(true);
38
- expect(validator.check(true)).toBe(true);
39
- expect(validator.check('TRUE')).toBe(true);
40
- expect(validator.check('true')).toBe(true);
41
- });
42
- it('should validate false for various false values', () => {
43
- const validator = new index_1.Verifiers.VBooleanNotNull();
44
- expect(validator.check('0')).toBe(false);
45
- expect(validator.check(0)).toBe(false);
46
- expect(validator.check(false)).toBe(false);
47
- expect(validator.check('FALSE')).toBe(false);
48
- expect(validator.check('false')).toBe(false);
49
- });
50
- it('should throw a validation error for invalid boolean values', () => {
51
- const validator = new index_1.Verifiers.VBooleanNotNull();
52
- expect(() => validator.check('string')).toThrow(v_error_1.VerificationError);
53
- expect(() => validator.check(123)).toThrow(v_error_1.VerificationError);
54
- });
55
- it('should throw a validation error for null or undefined values', () => {
56
- const validator = new index_1.Verifiers.VBooleanNotNull();
57
- expect(() => validator.check(null)).toThrow(v_error_1.VerificationError);
58
- expect(() => validator.check(undefined)).toThrow(v_error_1.VerificationError);
59
- });
60
- });
61
- //# sourceMappingURL=v_boolean.test.js.map
@@ -1,65 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const moment_timezone_1 = __importDefault(require("moment-timezone"));
7
- const v_error_1 = require("../../error/v_error");
8
- const index_1 = require("../../../index");
9
- describe("VDate", () => {
10
- it("should validate a date string with default settings", () => {
11
- var _a;
12
- const vdate = new index_1.Verifiers.VDate();
13
- expect((_a = vdate.check("2023-08-09")) === null || _a === void 0 ? void 0 : _a.format("YYYY-MM-DD")).toEqual("2023-08-09");
14
- });
15
- it("should return null for null input when not required", () => {
16
- const vdate = new index_1.Verifiers.VDate();
17
- expect(vdate.check(null)).toBeNull();
18
- });
19
- it("should throw an error for invalid date format", () => {
20
- const vdate = new index_1.Verifiers.VDate({ format: "DD/MM/YYYY" });
21
- expect(() => vdate.check("2023-08-09")).toThrow(v_error_1.VerificationError);
22
- });
23
- it("should validate a date with timezone", () => {
24
- const vdate = new index_1.Verifiers.VDate({ timeZone: "America/New_York" });
25
- const result = vdate.check("2023-08-09T10:00:00");
26
- expect(result === null || result === void 0 ? void 0 : result.tz("America/New_York").format()).toEqual("2023-08-09T10:00:00-04:00");
27
- });
28
- it("should validate a date within a min and max range", () => {
29
- var _a;
30
- const vdate = new index_1.Verifiers.VDate({
31
- minDate: (0, moment_timezone_1.default)("2023-01-01"),
32
- maxDate: (0, moment_timezone_1.default)("2023-12-31")
33
- });
34
- expect((_a = vdate.check("2023-08-09")) === null || _a === void 0 ? void 0 : _a.format("YYYY-MM-DD")).toEqual("2023-08-09");
35
- });
36
- it("should throw an error if date is before minDate", () => {
37
- const vdate = new index_1.Verifiers.VDate({ minDate: (0, moment_timezone_1.default)("2023-01-01") });
38
- expect(() => vdate.check("2022-12-31")).toThrow(v_error_1.VerificationError);
39
- });
40
- it("should throw an error if date is after maxDate", () => {
41
- const vdate = new index_1.Verifiers.VDate({ maxDate: (0, moment_timezone_1.default)("2023-12-31") });
42
- expect(() => vdate.check("2024-01-01")).toThrow(v_error_1.VerificationError);
43
- });
44
- it("should validate a date without timezone in default UTC", () => {
45
- const vdate = new index_1.Verifiers.VDate();
46
- const result = vdate.check("2023-08-09T10:00:00");
47
- expect(result === null || result === void 0 ? void 0 : result.tz("UTC").format('YYYY-MM-DDTHH:mm:ssZ')).toEqual("2023-08-09T10:00:00+00:00");
48
- });
49
- });
50
- describe("VDateNotNull", () => {
51
- it("should validate a non-null date", () => {
52
- const vdateNotNull = new index_1.Verifiers.VDateNotNull();
53
- expect(vdateNotNull.check("2023-08-09").format("YYYY-MM-DD")).toEqual("2023-08-09");
54
- });
55
- it("should throw an error for null input", () => {
56
- const vdateNotNull = new index_1.Verifiers.VDateNotNull();
57
- expect(() => vdateNotNull.check(null)).toThrow(v_error_1.VerificationError);
58
- });
59
- it("should validate a date with a specific format", () => {
60
- const vdateNotNull = new index_1.Verifiers.VDateNotNull({ format: "DD/MM/YYYY" });
61
- expect(vdateNotNull.check("09/08/2023").format("DD/MM/YYYY")).toEqual("09/08/2023");
62
- expect(() => vdateNotNull.check("09-08-2023")).toThrow(v_error_1.VerificationError);
63
- });
64
- });
65
- //# sourceMappingURL=v_date.test.js.map
@@ -1,91 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const index_1 = require("../../../index");
4
- const v_error_1 = require("../../error/v_error");
5
- describe('VNumber', () => {
6
- it('should validate a number correctly', () => {
7
- const validator = new index_1.Verifiers.VNumber();
8
- expect(validator.check(123)).toBe(123);
9
- expect(validator.check(null)).toBeNull();
10
- });
11
- it('should throw a validation error for min', () => {
12
- const validator = new index_1.Verifiers.VNumber({ min: 10 });
13
- expect(() => validator.check(5)).toThrow(v_error_1.VerificationError);
14
- expect(validator.check(10)).toBe(10);
15
- });
16
- it('should throw a validation error for max', () => {
17
- const validator = new index_1.Verifiers.VNumber({ max: 10 });
18
- expect(() => validator.check(15)).toThrow(v_error_1.VerificationError);
19
- expect(validator.check(5)).toBe(5);
20
- });
21
- it('should throw a validation error for in', () => {
22
- const validator = new index_1.Verifiers.VNumber({ in: [1, 2, 3] });
23
- expect(() => validator.check(4)).toThrow(v_error_1.VerificationError);
24
- expect(validator.check(2)).toBe(2);
25
- });
26
- it('should throw a validation error for notIn', () => {
27
- const validator = new index_1.Verifiers.VNumber({ notIn: [1, 2, 3] });
28
- expect(() => validator.check(2)).toThrow(v_error_1.VerificationError);
29
- expect(validator.check(4)).toBe(4);
30
- });
31
- it('should throw a validation error for maxDecimalPlaces', () => {
32
- const validator = new index_1.Verifiers.VNumber({ maxDecimalPlaces: 2 });
33
- expect(() => validator.check(1.234)).toThrow(v_error_1.VerificationError);
34
- expect(validator.check(1.23)).toBe(1.23);
35
- });
36
- it('should throw a validation error for minDecimalPlaces', () => {
37
- const validator = new index_1.Verifiers.VNumber({ minDecimalPlaces: 2 });
38
- expect(() => validator.check(1.2)).toThrow(v_error_1.VerificationError);
39
- expect(validator.check(1.23)).toBe(1.23);
40
- });
41
- it('should throw a validation error for invalid type', () => {
42
- const validator = new index_1.Verifiers.VNumber();
43
- expect(() => validator.check('string')).toThrow(v_error_1.VerificationError);
44
- });
45
- });
46
- describe('VNumberNotNull', () => {
47
- it('should validate a non-null number correctly', () => {
48
- const validator = new index_1.Verifiers.VNumberNotNull();
49
- expect(validator.check(123)).toBe(123);
50
- });
51
- it('should throw a validation error for null or undefined', () => {
52
- const validator = new index_1.Verifiers.VNumberNotNull();
53
- expect(() => validator.check(null)).toThrow(v_error_1.VerificationError);
54
- expect(() => validator.check(undefined)).toThrow(v_error_1.VerificationError);
55
- });
56
- it('should throw a validation error for min', () => {
57
- const validator = new index_1.Verifiers.VNumberNotNull({ min: 10 });
58
- expect(() => validator.check(5)).toThrow(v_error_1.VerificationError);
59
- expect(validator.check(10)).toBe(10);
60
- });
61
- it('should throw a validation error for max', () => {
62
- const validator = new index_1.Verifiers.VNumberNotNull({ max: 10 });
63
- expect(() => validator.check(15)).toThrow(v_error_1.VerificationError);
64
- expect(validator.check(5)).toBe(5);
65
- });
66
- it('should throw a validation error for in', () => {
67
- const validator = new index_1.Verifiers.VNumberNotNull({ in: [1, 2, 3] });
68
- expect(() => validator.check(4)).toThrow(v_error_1.VerificationError);
69
- expect(validator.check(2)).toBe(2);
70
- });
71
- it('should throw a validation error for notIn', () => {
72
- const validator = new index_1.Verifiers.VNumberNotNull({ notIn: [1, 2, 3] });
73
- expect(() => validator.check(2)).toThrow(v_error_1.VerificationError);
74
- expect(validator.check(4)).toBe(4);
75
- });
76
- it('should throw a validation error for maxDecimalPlaces', () => {
77
- const validator = new index_1.Verifiers.VNumberNotNull({ maxDecimalPlaces: 2 });
78
- expect(() => validator.check(1.234)).toThrow(v_error_1.VerificationError);
79
- expect(validator.check(1.23)).toBe(1.23);
80
- });
81
- it('should throw a validation error for minDecimalPlaces', () => {
82
- const validator = new index_1.Verifiers.VNumberNotNull({ minDecimalPlaces: 2 });
83
- expect(() => validator.check(1.2)).toThrow(v_error_1.VerificationError);
84
- expect(validator.check(1.23)).toBe(1.23);
85
- });
86
- it('should throw a validation error for invalid type', () => {
87
- const validator = new index_1.Verifiers.VNumberNotNull();
88
- expect(() => validator.check('string')).toThrow(v_error_1.VerificationError);
89
- });
90
- });
91
- //# sourceMappingURL=v_number.test.js.map
@@ -1,73 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const index_1 = require("../../../index");
4
- const v_error_1 = require("../../error/v_error");
5
- describe('VObject', () => {
6
- const properties = {
7
- name: new index_1.Verifiers.VString({ minLength: 3 }),
8
- age: new index_1.Verifiers.VNumber({ min: 18, max: 99 })
9
- };
10
- it('should validate an object correctly', () => {
11
- const validator = new index_1.Verifiers.VObject({ properties });
12
- expect(validator.check({ name: 'John', age: 25 })).toEqual({ name: 'John', age: 25 });
13
- expect(validator.check(null)).toBeNull();
14
- });
15
- it('should throw a validation error for invalid properties', () => {
16
- const validator = new index_1.Verifiers.VObject({ properties, strictMode: true });
17
- expect(() => validator.check({ name: 'John', age: 25, extra: 'invalid' })).toThrow(v_error_1.VerificationError);
18
- });
19
- it('should throw a validation error for invalid property values', () => {
20
- const validator = new index_1.Verifiers.VObject({ properties });
21
- expect(() => validator.check({ name: 'Jo', age: 25 })).toThrow(v_error_1.VerificationError);
22
- expect(() => validator.check({ name: 'John', age: 17 })).toThrow(v_error_1.VerificationError);
23
- });
24
- it('should validate with ignoreCase for property names', () => {
25
- const validator = new index_1.Verifiers.VObject({ properties, ignoreCase: true });
26
- expect(validator.check({ NAME: 'John', AGE: 25 })).toEqual({ name: 'John', age: 25 });
27
- });
28
- it('should throw a validation error for invalidPropertyMessage', () => {
29
- const validator = new index_1.Verifiers.VObject({
30
- properties,
31
- strictMode: true,
32
- invalidPropertyMessage: { val: undefined, message: () => "invalid property" }
33
- });
34
- expect(() => validator.check({ name: 'John', age: 25, extra: 'invalid' })).toThrow(v_error_1.VerificationError);
35
- });
36
- });
37
- describe('VObjectNotNull', () => {
38
- const properties = {
39
- name: new index_1.Verifiers.VStringNotNull({ minLength: 3 }),
40
- age: new index_1.Verifiers.VNumberNotNull({ min: 18, max: 99 })
41
- };
42
- it('should validate a non-null object correctly', () => {
43
- const validator = new index_1.Verifiers.VObjectNotNull({ properties });
44
- expect(validator.check({ name: 'Jane', age: 30 })).toEqual({ name: 'Jane', age: 30 });
45
- });
46
- it('should throw a validation error for null or undefined', () => {
47
- const validator = new index_1.Verifiers.VObjectNotNull({ properties });
48
- expect(() => validator.check(null)).toThrow(v_error_1.VerificationError);
49
- expect(() => validator.check(undefined)).toThrow(v_error_1.VerificationError);
50
- });
51
- it('should throw a validation error for invalid properties', () => {
52
- const validator = new index_1.Verifiers.VObjectNotNull({ properties, strictMode: true });
53
- expect(() => validator.check({ name: 'Jane', age: 30, extra: 'invalid' })).toThrow(v_error_1.VerificationError);
54
- });
55
- it('should throw a validation error for invalid property values', () => {
56
- const validator = new index_1.Verifiers.VObjectNotNull({ properties });
57
- expect(() => validator.check({ name: 'Ja', age: 30 })).toThrow(v_error_1.VerificationError);
58
- expect(() => validator.check({ name: 'Jane', age: 17 })).toThrow(v_error_1.VerificationError);
59
- });
60
- it('should validate with ignoreCase for property names', () => {
61
- const validator = new index_1.Verifiers.VObjectNotNull({ properties, ignoreCase: true });
62
- expect(validator.check({ NAME: 'Jane', AGE: 30 })).toEqual({ name: 'Jane', age: 30 });
63
- });
64
- it('should throw a validation error for invalidPropertyMessage', () => {
65
- const validator = new index_1.Verifiers.VObjectNotNull({
66
- properties,
67
- strictMode: true,
68
- invalidPropertyMessage: { val: undefined, message: () => "invalid property" }
69
- });
70
- expect(() => validator.check({ name: 'Jane', age: 30, extra: 'invalid' })).toThrow(v_error_1.VerificationError);
71
- });
72
- });
73
- //# sourceMappingURL=v_object.test.js.map
@@ -1,103 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const index_1 = require("../../../index");
4
- const v_error_1 = require("../../error/v_error");
5
- describe('VString', () => {
6
- it('should validate a string correctly', () => {
7
- const validator = new index_1.Verifiers.VString();
8
- expect(validator.check('valid string')).toBe('valid string');
9
- expect(validator.check(null)).toBeNull();
10
- });
11
- it('should throw a validation error for minLength', () => {
12
- const validator = new index_1.Verifiers.VString({ minLength: 5 });
13
- expect(() => validator.check('abc')).toThrow(v_error_1.VerificationError);
14
- expect(validator.check('abcde')).toBe('abcde');
15
- });
16
- it('should throw a validation error for maxLength', () => {
17
- const validator = new index_1.Verifiers.VString({ maxLength: 5 });
18
- expect(() => validator.check('abcdef')).toThrow(v_error_1.VerificationError);
19
- expect(validator.check('abc')).toBe('abc');
20
- });
21
- it('should throw a validation error for regex', () => {
22
- const validator = new index_1.Verifiers.VString({ regex: /^[a-z]+$/ });
23
- expect(() => validator.check('abc123')).toThrow(v_error_1.VerificationError);
24
- expect(validator.check('abcdef')).toBe('abcdef');
25
- });
26
- it('should throw a validation error for notRegex', () => {
27
- const validator = new index_1.Verifiers.VString({ notRegex: /^[0-9]+$/ });
28
- expect(() => validator.check('123')).toThrow(v_error_1.VerificationError);
29
- expect(validator.check('abc')).toBe('abc');
30
- });
31
- it('should throw a validation error for in', () => {
32
- const validator = new index_1.Verifiers.VString({ in: ['apple', 'banana', 'cherry'] });
33
- expect(() => validator.check('orange')).toThrow(v_error_1.VerificationError);
34
- expect(validator.check('apple')).toBe('apple');
35
- });
36
- it('should throw a validation error for notIn', () => {
37
- const validator = new index_1.Verifiers.VString({ notIn: ['apple', 'banana', 'cherry'] });
38
- expect(() => validator.check('apple')).toThrow(v_error_1.VerificationError);
39
- expect(validator.check('orange')).toBe('orange');
40
- });
41
- it('should validate string in strictMode', () => {
42
- const validator = new index_1.Verifiers.VString({ strictMode: true });
43
- expect(() => validator.check(123)).toThrow(v_error_1.VerificationError);
44
- expect(validator.check('valid string')).toBe('valid string');
45
- });
46
- it('should validate string with ignoreCase in in condition', () => {
47
- const validator = new index_1.Verifiers.VString({ in: ['Apple', 'Banana', 'Cherry'], ignoreCase: true });
48
- expect(validator.check('apple')).toBe('apple');
49
- expect(() => validator.check('orange')).toThrow(v_error_1.VerificationError);
50
- });
51
- });
52
- describe('VStringNotNull', () => {
53
- it('should validate a non-null string correctly', () => {
54
- const validator = new index_1.Verifiers.VStringNotNull();
55
- expect(validator.check('valid string')).toBe('valid string');
56
- });
57
- it('should throw a validation error for null or undefined', () => {
58
- const validator = new index_1.Verifiers.VStringNotNull();
59
- expect(() => validator.check(null)).toThrow(v_error_1.VerificationError);
60
- expect(() => validator.check(undefined)).toThrow(v_error_1.VerificationError);
61
- });
62
- it('should throw a validation error for minLength', () => {
63
- const validator = new index_1.Verifiers.VStringNotNull({ minLength: 5 });
64
- expect(() => validator.check('abc')).toThrow(v_error_1.VerificationError);
65
- expect(validator.check('abcde')).toBe('abcde');
66
- });
67
- it('should throw a validation error for maxLength', () => {
68
- const validator = new index_1.Verifiers.VStringNotNull({ maxLength: 5 });
69
- expect(() => validator.check('abcdef')).toThrow(v_error_1.VerificationError);
70
- expect(validator.check('abc')).toBe('abc');
71
- });
72
- it('should throw a validation error for regex', () => {
73
- const validator = new index_1.Verifiers.VStringNotNull({ regex: /^[a-z]+$/ });
74
- expect(() => validator.check('abc123')).toThrow(v_error_1.VerificationError);
75
- expect(validator.check('abcdef')).toBe('abcdef');
76
- });
77
- it('should throw a validation error for notRegex', () => {
78
- const validator = new index_1.Verifiers.VStringNotNull({ notRegex: /^[0-9]+$/ });
79
- expect(() => validator.check('123')).toThrow(v_error_1.VerificationError);
80
- expect(validator.check('abc')).toBe('abc');
81
- });
82
- it('should throw a validation error for in', () => {
83
- const validator = new index_1.Verifiers.VStringNotNull({ in: ['apple', 'banana', 'cherry'] });
84
- expect(() => validator.check('orange')).toThrow(v_error_1.VerificationError);
85
- expect(validator.check('apple')).toBe('apple');
86
- });
87
- it('should throw a validation error for notIn', () => {
88
- const validator = new index_1.Verifiers.VStringNotNull({ notIn: ['apple', 'banana', 'cherry'] });
89
- expect(() => validator.check('apple')).toThrow(v_error_1.VerificationError);
90
- expect(validator.check('orange')).toBe('orange');
91
- });
92
- it('should validate string in strictMode', () => {
93
- const validator = new index_1.Verifiers.VStringNotNull({ strictMode: true });
94
- expect(() => validator.check(123)).toThrow(v_error_1.VerificationError);
95
- expect(validator.check('valid string')).toBe('valid string');
96
- });
97
- it('should validate string with ignoreCase in in condition', () => {
98
- const validator = new index_1.Verifiers.VStringNotNull({ in: ['Apple', 'Banana', 'Cherry'], ignoreCase: true });
99
- expect(validator.check('apple')).toBe('apple');
100
- expect(() => validator.check('orange')).toThrow(v_error_1.VerificationError);
101
- });
102
- });
103
- //# sourceMappingURL=v_string.test.js.map