vest 4.3.2-dev-2805e3 → 4.3.2
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/dist/cjs/vest.development.js +1 -1
- package/dist/cjs/vest.production.js +1 -1
- package/dist/es/vest.development.js +1 -1
- package/dist/es/vest.production.js +1 -1
- package/dist/umd/vest.development.js +1 -1
- package/dist/umd/vest.production.js +1 -1
- package/package.json +3 -3
- package/types/vest.d.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var n,t=require("n4s"),e=require("context"),r=(n=0,function(){return"".concat(n++)});function u(n){return String(n)===n}function i(n){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return!n.apply(void 0,t)}}function o(n){return void 0===n}function s(n){return[].concat(n)}function c(n){var t=Number(n);return!(isNaN(parseFloat(String(n)))||isNaN(Number(n))||!isFinite(t))}function a(n,t){return function(n,t){return c(n)&&c(t)&&Number(n)===Number(t)}(n.length,t)}function f(n,t){return c(n)&&c(t)&&Number(n)>Number(t)}function l(n){function t(n){return e.findIndex((function(t){var e=t[0];return a(n,e.length)&&n.every((function(n,t){return n===e[t]}))}))}void 0===n&&(n=1);var e=[],r=function(t,u){var i=r.get(t);return i?i[1]:(u=u(),e.unshift([t.concat(),u]),function(n,t){return f(n.length,t)}(e,n)&&(e.length=n),u)};return r.invalidate=function(n){-1<(n=t(n))&&e.splice(n,1)},r.get=function(n){return e[t(n)]||null},r}function p(n){return!!Array.isArray(n)}function d(n){return null===n}var v=i(d);function h(n){return"function"==typeof n}function g(n){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];return h(n)?n.apply(void 0,t):n}function E(n,t){var e;return null!==(e=g(n))&&void 0!==e?e:t}function N(n){return(n=s(n))[n.length-1]}function m(n,t){for(var e=[],r=0;r<n.length;r++){var u=n[r];p(u)?e.push(m(u,t)):(u=t(u),v(u)&&e.push(u))}return e}function y(n,t,e){return S(n,t)[N(t)]=e,n}function R(n){return s(n).reduce((function(n,t){return p(t)?n.concat(R(t)):s(n).concat(t)}),[])}function S(n,t){var e=0;for(t=t.slice(0,-1);e<t.length;e++){var r=t[e];n[r]=E(n[r],[]),n=n[r]}return n}var C,b,T=Object.assign;function _(){function n(){t=[0]}var t=[];return n(),{addLevel:function(){t.push(0)},cursorAt:function(){return N(t)},getCursor:function(){return s(t)},next:function(){return t[t.length-1]++,N(t)},removeLevel:function(){t.pop()},reset:n}}!function(n){n[n.DEFAULT=0]="DEFAULT",n[n.SUITE=1]="SUITE",n[n.EACH=2]="EACH",n[n.SKIP_WHEN=3]="SKIP_WHEN",n[n.OMIT_WHEN=4]="OMIT_WHEN",n[n.GROUP=5]="GROUP"}(C||(C={})),function(n){n[n.ALL=0]="ALL",n[n.EAGER=1]="EAGER"}(b||(b={}));var I=e.createContext((function(n,t){return t?null:T({},{exclusion:{tests:{},groups:{}},inclusion:{},isolate:{type:C.DEFAULT,keys:{current:{},prev:{}}},mode:[b.ALL],testCursor:_()},n)}));function O(){return I.useX().stateRef}function A(){return O().suiteId()[0]}function k(){return O().testCallbacks()}function L(){return O().optionalFields()}function x(){return O().testObjects()}function F(){(0,x()[1])((function(n){return{prev:n.prev,current:s(n.current)}}))}function U(n){(0,x()[1])((function(t){return{prev:t.prev,current:s(n(t.current))}}))}function W(){return R(m(x()[0].current,(function(n){return n.isPending()?n:null})))}var G,P=l();function D(){var n=x()[0].current;return P([n],(function(){return R(n)}))}function w(n){D().forEach(n)}!function(n){n.Error="error",n.Warning="warning"}(G||(G={}));var X,H,K=function(){function n(n,t,e){var u=void 0===e?{}:e;e=u.message;var i=u.groupName;u=u.key,this.key=null,this.id=r(),this.severity=G.Error,this.status=M,this.fieldName=n,this.testFn=t,i&&(this.groupName=i),e&&(this.message=e),u&&(this.key=u)}return n.prototype.run=function(){try{var n=this.testFn()}catch(t){(function(n,t){return o(n)&&u(t)})(this.message,t)&&(this.message=t),n=!1}return!1===n&&this.fail(),n},n.prototype.setStatus=function(n){this.isFinalStatus()&&n!==z||(this.status=n)},n.prototype.warns=function(){return this.severity===G.Warning},n.prototype.setPending=function(){this.setStatus(Y)},n.prototype.fail=function(){this.setStatus(this.warns()?B:j)},n.prototype.done=function(){this.isFinalStatus()||this.setStatus(V)},n.prototype.warn=function(){this.severity=G.Warning},n.prototype.isFinalStatus=function(){return this.hasFailures()||this.isCanceled()||this.isPassing()},n.prototype.skip=function(n){this.isPending()&&!n||this.setStatus(q)},n.prototype.cancel=function(){this.setStatus(J),F()},n.prototype.reset=function(){this.status=M,F()},n.prototype.omit=function(){this.setStatus(z)},n.prototype.valueOf=function(){return!this.isFailing()},n.prototype.hasFailures=function(){return this.isFailing()||this.isWarning()},n.prototype.isNonActionable=function(){return this.isSkipped()||this.isOmitted()||this.isCanceled()},n.prototype.isPending=function(){return this.statusEquals(Y)},n.prototype.isTested=function(){return this.hasFailures()||this.isPassing()},n.prototype.isOmitted=function(){return this.statusEquals(z)},n.prototype.isUntested=function(){return this.statusEquals(M)},n.prototype.isFailing=function(){return this.statusEquals(j)},n.prototype.isCanceled=function(){return this.statusEquals(J)},n.prototype.isSkipped=function(){return this.statusEquals(q)},n.prototype.isPassing=function(){return this.statusEquals(V)},n.prototype.isWarning=function(){return this.statusEquals(B)},n.prototype.statusEquals=function(n){return this.status===n},n}(),M="UNTESTED",q="SKIPPED",j="FAILED",B="WARNING",V="PASSING",Y="PENDING",J="CANCELED",z="OMITTED";function Q(n,t){if(!n)throw t instanceof String?t.valueOf():Error(t?g(t):t)}function Z(n){function t(n,t,u){return r.references.push(),e(n,g(t,u)),function(){return[r.references[n],function(t){return e(n,g(t,r.references[n]))}]}}function e(t,e){var i=r.references[t];r.references[t]=e,h(t=u[t][1])&&t(e,i),h(n)&&n()}var r={references:[]},u=[];return{registerStateKey:function(n,e){var r=u.length;return u.push([n,e]),t(r,n)},reset:function(){var n=r.references;r.references=[],u.forEach((function(e,r){return t(r,e[0],n[r])}))}}}function $(n,t){var e=t.suiteId;return t=t.suiteName,{optionalFields:n.registerStateKey((function(){return{}})),suiteId:n.registerStateKey(e),suiteName:n.registerStateKey(t),testCallbacks:n.registerStateKey((function(){return{fieldCallbacks:{},doneCallbacks:[]}})),testObjects:n.registerStateKey((function(n){return{prev:n?n.current:[],current:[]}}))}}function nn(n){return d(n)||o(n)}function tn(n){setTimeout((function(){throw Error(n)}),0)}function en(){return I.useX().testCursor.getCursor()}function rn(){return I.useX().testCursor.cursorAt()}function un(){return I.useX().testCursor.next()}function on(n,t){n=void 0===(n=n.type)?C.DEFAULT:n,Q(h(t));var e={current:{},prev:{}},r=en();return I.run({isolate:{type:n,keys:e}},(function(){I.useX().testCursor.addLevel(),e.prev=s(S(x()[0].prev,en())).reduce((function(n,t){return t instanceof K&&!nn(t.key)?(n[t.key]=t,n):n}),{}),U((function(n){return y(n,r,[])}));var n=t();return I.useX().testCursor.removeLevel(),un(),n}))}function sn(n){return n===X.ERRORS?H.ERROR_COUNT:H.WARN_COUNT}function cn(n,t){return Object.prototype.hasOwnProperty.call(n,t)}function an(n){return!n||(function(n){return"number"==typeof n}(n)?0===n:cn(n,"length")?a(n,0):"object"==typeof n&&a(Object.keys(n),0))}!function(n){n.WARNINGS="warnings",n.ERRORS="errors"}(X||(X={})),function(n){n.ERROR_COUNT="errorCount",n.WARN_COUNT="warnCount"}(H||(H={}));var fn=i(an);function ln(n,t){return!!t&&!pn(n,t)}function pn(n,t){return!(!t||n.fieldName!==t)}function dn(n){return function(n,t){return D().some((function(e){return function(n,t,e){return!(!n.hasFailures()||ln(n,e)||function(n,t){return function(n,t){return!!n!=!!t}(n===X.WARNINGS,t.warns())}(t,n))}(e,n,t)}))}(X.ERRORS,n)}function vn(n){return!!function(n){return!!n&&D().some((function(t){return t.fieldName===n&&t.isOmitted()}))}(n)||!dn(n)&&(!an(D())&&!function(n){var t=L()[0];return fn(W().filter((function(e){return!ln(e,n)&&!0!==t[e.fieldName]})))}(n)&&function(n){var t=D(),e=L()[0];return t.every((function(t){return!!ln(t,n)||(!0===e[t.fieldName]||t.isTested()||t.isOmitted())}))}(n))}function hn(){var n=I.useX().summary;return Q(n),n}function gn(){var n=D(),t=T({errorCount:0,warnCount:0,testCount:0},{groups:{},tests:{},valid:!1});return n.reduce((function(n,t){return function(n,t){n[t.fieldName]=En(n,t),n[t.fieldName].valid=!1!==n[t.fieldName].valid&&vn(t.fieldName)}(n.tests,t),function(n,t){var e=t.groupName;e&&(n[e]=n[e]||{},n[e][t.fieldName]=En(n[e],t))}(n.groups,t),n}),t),t.valid=vn(),function(n){for(var t in n.tests)n.errorCount+=n.tests[t].errorCount,n.warnCount+=n.tests[t].warnCount,n.testCount+=n.tests[t].testCount;return n}(t)}function En(n,t){function e(n){var t=sn(n);i[t]++,u&&(i[n]=(i[n]||[]).concat(u))}var r=t.fieldName,u=t.message;n[r]=n[r]||T({errorCount:0,warnCount:0,testCount:0},{errors:[],warnings:[]});var i=n[r];return t.isNonActionable()||(n[r].testCount++,t.isFailing()?e(X.ERRORS):t.isWarning()&&e(X.WARNINGS)),i}function Nn(n,t,e){return e?function(n,t,e){var r;return(null===(r=null==n?void 0:n[e])||void 0===r?void 0:r[t])||[]}(n,t,e):function(n,t){var e,r={};for(e in n)r[e]=n[e][t]||[];return r}(n,t)}function mn(n){return Rn(X.ERRORS,n)}function yn(n){return Rn(X.WARNINGS,n)}function Rn(n,t){return Nn(hn().tests,n,t)}function Sn(n,t){return bn(n,X.ERRORS,t)}function Cn(n,t){return bn(n,X.WARNINGS,t)}function bn(n,t,e){return Nn(hn().groups[n],t,e)}function Tn(n){return f(n,0)}function _n(n){return On(H.ERROR_COUNT,n)}function In(n){return On(H.WARN_COUNT,n)}function On(n,t){var e,r=hn();return Tn(t?null===(e=r.tests[t])||void 0===e?void 0:e[n]:r[n])}function An(n,t){return Ln(X.ERRORS,n,t)}function kn(n,t){return Ln(X.WARNINGS,n,t)}function Ln(n,t,e){var r,u,i=hn();if(n=sn(n),!(t=i.groups[t]))return!1;if(e)return Tn(null===(r=t[e])||void 0===r?void 0:r[n]);for(var o in t)if(Tn(null===(u=t[o])||void 0===u?void 0:u[n]))return!0;return!1}function xn(n){var t,e=hn();return n?!(null===(t=e.tests[n])||void 0===t||!t.valid):e.valid}var Fn=l(1);function Un(){var n=D(),t={stateRef:O()};return Fn([n],I.bind(t,(function(){var n=gn(),t=O().suiteName()[0],e={summary:n};return T(n,{getErrors:I.bind(e,mn),getErrorsByGroup:I.bind(e,Sn),getWarnings:I.bind(e,yn),getWarningsByGroup:I.bind(e,Cn),hasErrors:I.bind(e,_n),hasErrorsByGroup:I.bind(e,An),hasWarnings:I.bind(e,In),hasWarningsByGroup:I.bind(e,kn),isValid:I.bind(e,xn),suiteName:t})})))}function Wn(n){var t=W();return!an(t)&&(n?t.some((function(t){return pn(t,n)})):fn(t))}var Gn=l(20);function Pn(){var n=D(),t={stateRef:O()};return Gn([n],I.bind(t,(function(){return T({},Un(),{done:I.bind(t,Hn)})})))}function Dn(n,t,e){return!(h(n)&&(!t||e.tests[t]&&!an(e.tests[t].testCount)))}function wn(n){return!(Wn()&&(!n||Wn(n)))}var Xn,Hn=function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];var e=(n=n.reverse())[0];if(n=n[1],t=Pn(),Dn(e,n,t))return t;var r=function(){return e(Un())};return wn(n)?(r(),t):(Kn(r,n),t)};function Kn(n,t){(0,k()[1])((function(e){return t?e.fieldCallbacks[t]=(e.fieldCallbacks[t]||[]).concat(n):e.doneCallbacks.push(n),e}))}function Mn(n){return n.forEach((function(n){return n()}))}function qn(){var n=function(){var n={};return{emit:function(t,e){(n[t]||[]).forEach((function(n){n(e)}))},on:function(t,e){return n[t]=(n[t]||[]).concat(e),{off:function(){n[t]=(n[t]||[]).filter((function(n){return n!==e}))}}}}}();return n.on(Xn.TEST_COMPLETED,(function(t){t.isCanceled()||(t.done(),function(n){var t=k()[0].fieldCallbacks;n&&!Wn(n)&&p(t[n])&&Mn(t[n])}(t.fieldName),Wn()||n.emit(Xn.ALL_RUNNING_TESTS_FINISHED))})),n.on(Xn.SUITE_CALLBACK_DONE_RUNNING,(function(){!function(){var n=L()[0];if(!an(n)){var t={};U((function(e){return m(e,(function(e){if(cn(t,e.fieldName))t[e.fieldName]&&e.omit();else{var r=n[e.fieldName];h(r)&&(t[e.fieldName]=r(),t[e.fieldName]&&e.omit())}return e}))}))}}()})),n.on(Xn.ALL_RUNNING_TESTS_FINISHED,(function(){Mn(k()[0].doneCallbacks)})),n.on(Xn.REMOVE_FIELD,(function(n){w((function(t){pn(t,n)&&(t.cancel(),function(n){U((function(t){return m(t,(function(t){return n!==t?t:null}))}))}(t))}))})),n.on(Xn.RESET_FIELD,(function(n){w((function(t){pn(t,n)&&t.reset()}))})),n}function jn(){var n=I.useX();return Q(n.bus),n.bus}!function(n){n.TEST_COMPLETED="test_completed",n.ALL_RUNNING_TESTS_FINISHED="all_running_tests_finished",n.REMOVE_FIELD="remove_field",n.RESET_FIELD="reset_field",n.SUITE_CALLBACK_DONE_RUNNING="suite_callback_done_running"}(Xn||(Xn={}));function Bn(){return!!I.useX().skipped}function Vn(n){return zn(0,"tests",n)}function Yn(n){return zn(1,"tests",n)}function Jn(n){var t=n.fieldName;if(n=n.groupName,Bn())return!0;var e=I.useX(),r=e.exclusion;e=e.inclusion;var u=r.tests,i=u[t];if(!1===i)return!0;if(i=!0===i,n){if(function(n){var t=I.useX().exclusion.groups;return cn(t,n)?!1===t[n]:Zn()}(n))return!0;if(!0===r.groups[n])return!i&&(!!Qn(u)||!1===u[t])}return!!function(n){return!!Zn()&&!n}(n)||!i&&(!!Qn(u)&&!g(e[t]))}function zn(n,t,e){var r=I.useX("hook called outside of a running suite.");e&&s(e).forEach((function(e){u(e)&&(r.exclusion[t][e]=0===n)}))}function Qn(n){for(var t in n)if(!0===n[t])return!0;return!1}function Zn(){var n,t=I.useX().exclusion;for(n in t.groups)if(t.groups[n])return!0;return!1}function $n(n){return"Wrong arguments passed to group. Group ".concat(n,".")}function nt(n){return!(!function(n){return I.useX().mode[0]===n}(b.EAGER)||!dn(n.fieldName))}function tt(){return!!I.useX().omitted}function et(n,t,e){if(e||2===arguments.length)for(var r,u=0,i=t.length;u<i;u++)!r&&u in t||(r||(r=Array.prototype.slice.call(t,0,u)),r[u]=t[u]);return n.concat(r||Array.prototype.slice.call(t))}function rt(n){return n&&h(n.then)}function ut(n,t){return n.fieldName===t.fieldName&&n.groupName===t.groupName}function it(n){var t=n.asyncTest,e=n.message;if(rt(t)){var r=jn().emit,i=O(),o=I.bind({stateRef:i},(function(){F(),r(Xn.TEST_COMPLETED,n)}));i=I.bind({stateRef:i},(function(t){n.isCanceled()||(n.message=u(t)?t:e,n.fail(),o())}));try{t.then(o,i)}catch(n){i()}}}function ot(n){var t=jn(),e=function(n){return I.run({currentTest:n},(function(){return n.run()}))}(n);try{rt(e)?(n.asyncTest=e,n.setPending(),it(n)):t.emit(Xn.TEST_COMPLETED,n)}catch(t){throw Error("Unexpected error encountered during test registration.\n Test Object: ".concat(JSON.stringify(n),".\n Error: ").concat(t,"."))}}function st(n){var t=x()[0].prev;return an(t)?(ct(n),n):(t=function(n){var t=en();return function(n,t){return S(n,t)[N(t)]}(n,t)}(t),nn(n.key)?(function(n,t){return fn(n)&&!ut(n,t)}(t,n)&&(function(n,t){I.useX().isolate.type===C.EACH||tn("Vest Critical Error: Tests called in different order than previous run.\n expected: ".concat(n.fieldName,"\n received: ").concat(t.fieldName,'\n This can happen on one of two reasons:\n 1. You\'re using if/else statements to conditionally select tests. Instead, use "skipWhen".\n 2. You are iterating over a list of tests, and their order changed. Use "each" and a custom key prop so that Vest retains their state.'))}(t,n),function(){var n=x(),t=n[1],e=n[0].prev;n=S(e,en());var r=rn();n.splice(r),t((function(n){return{prev:e,current:n.current}}))}(),t=null),ct(n=E(t,n)),n):(ct(n=function(n,t){var e=function(n){return I.useX().isolate.keys.prev[n]}(n);return e&&(t=e),function(n,t){var e=I.useX().isolate.keys.current;nn(e[n])?e[n]=t:tn('Encountered the same test key "'.concat(n,"\" twice. This may lead to tests overriding each other's results, or to tests being unexpectedly omitted."))}(n,t),t}(n.key,n)),n))}function ct(n){var t=en();U((function(e){return y(e,t,n)}))}function at(n){if(nt(n))return n.skip(),st(n),un(),n;var t=st(n);return tt()?(t.omit(),un(),t):Jn(n)?(t.skip(Bn()),un(),t):(function(n,t){t!==n&&ut(n,t)&&n.isPending()&&n.cancel()}(t,n),ct(n),un(),function(n){n.isUntested()?ot(n):rt(n.asyncTest)&&(n.setPending(),it(n))}(n),n)}function ft(n){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];var r=h(t[1])?t:et([void 0],t,!0);t=r[0],e=r[1],r=r[2],Q(u(n),pt("fieldName","string")),Q(h(e),pt("Test callback","function"));var i=I.useX();return at(t=new K(n,e,{message:t,groupName:i.groupName,key:r}))}Vn.group=function(n){return zn(0,"groups",n)},Yn.group=function(n){return zn(1,"groups",n)};var lt=T(ft,{memo:function(n){var t=l(10);return function(e){for(var r=[],u=1;u<arguments.length;u++)r[u-1]=arguments[u];u=rn();var i=(r=r.reverse())[0],o=r[1],s=r[2];return u=[A(),e,u].concat(i),d(r=t.get(u))?t(u,(function(){return n(e,s,o)})):r[1].isCanceled()?(t.invalidate(u),t(u,(function(){return n(e,s,o)}))):at(r[1])}}(ft)});function pt(n,t){return"Incompatible params passed to test function. ".concat(n," must be a ").concat(t)}Object.defineProperty(exports,"enforce",{enumerable:!0,get:function(){return t.enforce}}),exports.VERSION="4.3.2-dev-2805e3",exports.context=I,exports.create=function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];var e=(n=n.reverse())[0];n=n[1],Q(h(e),"vest.create: Expected callback to be a function.");var u=qn(),i=Z();return n={stateRef:$(i,{suiteId:r(),suiteName:n}),bus:u},T(I.bind(n,(function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return i.reset(),on({type:C.SUITE},(function(){e.apply(void 0,n)})),u.emit(Xn.SUITE_CALLBACK_DONE_RUNNING),Pn()})),{get:I.bind(n,Un),remove:I.bind(n,(function(n){u.emit(Xn.REMOVE_FIELD,n)})),reset:i.reset,resetField:I.bind(n,(function(n){u.emit(Xn.RESET_FIELD,n)}))})},exports.each=function(n,t){Q(h(t),"each callback must be a function"),on({type:C.EACH},(function(){n.forEach((function(n,e){t(n,e)}))}))},exports.eager=function(){!function(n){I.useX().mode[0]=n}(b.EAGER)},exports.group=function(n,t){Q(u(n),$n("name must be a string")),Q(h(t),$n("callback must be a function")),on({type:C.GROUP},(function(){I.run({groupName:n},t)}))},exports.include=function(n){var t=I.useX(),e=t.inclusion;return t=t.exclusion,Q(u(n)),e[n]=E(t.tests[n],!0),{when:function(t){var e=I.useX(),r=e.exclusion;e.inclusion[n]=function(){return cn(r.tests,n)?E(r.tests[n],!0):u(t)?!!r.tests[t]:g(t,g(Un))}}}},exports.omitWhen=function(n,t){on({type:C.OMIT_WHEN},(function(){I.run({omitted:tt()||g(n,g(Un))},(function(){return t()}))}))},exports.only=Vn,exports.optional=function(n){(0,L()[1])((function(t){if(p(n)||u(n))s(n).forEach((function(n){t[n]=!0}));else for(var e in n)t[e]=n[e];return t}))},exports.skip=Yn,exports.skipWhen=function(n,t){on({type:C.SKIP_WHEN},(function(){I.run({skipped:Bn()||g(n,g(Un))},(function(){return t()}))}))},exports.test=lt,exports.warn=function(){var n=I.useX("warn hook called outside of a running suite.");Q(n.currentTest,"warn called outside of a test."),n.currentTest.warn()};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var n,t=require("n4s"),e=require("context"),r=(n=0,function(){return"".concat(n++)});function u(n){return String(n)===n}function i(n){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return!n.apply(void 0,t)}}function o(n){return void 0===n}function s(n){return[].concat(n)}function c(n){var t=Number(n);return!(isNaN(parseFloat(String(n)))||isNaN(Number(n))||!isFinite(t))}function a(n,t){return function(n,t){return c(n)&&c(t)&&Number(n)===Number(t)}(n.length,t)}function f(n,t){return c(n)&&c(t)&&Number(n)>Number(t)}function l(n){function t(n){return e.findIndex((function(t){var e=t[0];return a(n,e.length)&&n.every((function(n,t){return n===e[t]}))}))}void 0===n&&(n=1);var e=[],r=function(t,u){var i=r.get(t);return i?i[1]:(u=u(),e.unshift([t.concat(),u]),function(n,t){return f(n.length,t)}(e,n)&&(e.length=n),u)};return r.invalidate=function(n){-1<(n=t(n))&&e.splice(n,1)},r.get=function(n){return e[t(n)]||null},r}function p(n){return!!Array.isArray(n)}function d(n){return null===n}var v=i(d);function h(n){return"function"==typeof n}function g(n){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];return h(n)?n.apply(void 0,t):n}function E(n,t){var e;return null!==(e=g(n))&&void 0!==e?e:t}function N(n){return(n=s(n))[n.length-1]}function m(n,t){for(var e=[],r=0;r<n.length;r++){var u=n[r];p(u)?e.push(m(u,t)):(u=t(u),v(u)&&e.push(u))}return e}function y(n,t,e){return S(n,t)[N(t)]=e,n}function R(n){return s(n).reduce((function(n,t){return p(t)?n.concat(R(t)):s(n).concat(t)}),[])}function S(n,t){var e=0;for(t=t.slice(0,-1);e<t.length;e++){var r=t[e];n[r]=E(n[r],[]),n=n[r]}return n}var C,b,T=Object.assign;function _(){function n(){t=[0]}var t=[];return n(),{addLevel:function(){t.push(0)},cursorAt:function(){return N(t)},getCursor:function(){return s(t)},next:function(){return t[t.length-1]++,N(t)},removeLevel:function(){t.pop()},reset:n}}!function(n){n[n.DEFAULT=0]="DEFAULT",n[n.SUITE=1]="SUITE",n[n.EACH=2]="EACH",n[n.SKIP_WHEN=3]="SKIP_WHEN",n[n.OMIT_WHEN=4]="OMIT_WHEN",n[n.GROUP=5]="GROUP"}(C||(C={})),function(n){n[n.ALL=0]="ALL",n[n.EAGER=1]="EAGER"}(b||(b={}));var I=e.createContext((function(n,t){return t?null:T({},{exclusion:{tests:{},groups:{}},inclusion:{},isolate:{type:C.DEFAULT,keys:{current:{},prev:{}}},mode:[b.ALL],testCursor:_()},n)}));function O(){return I.useX().stateRef}function A(){return O().suiteId()[0]}function k(){return O().testCallbacks()}function L(){return O().optionalFields()}function x(){return O().testObjects()}function F(){(0,x()[1])((function(n){return{prev:n.prev,current:s(n.current)}}))}function U(n){(0,x()[1])((function(t){return{prev:t.prev,current:s(n(t.current))}}))}function W(){return R(m(x()[0].current,(function(n){return n.isPending()?n:null})))}var G,P=l();function D(){var n=x()[0].current;return P([n],(function(){return R(n)}))}function w(n){D().forEach(n)}!function(n){n.Error="error",n.Warning="warning"}(G||(G={}));var X,H,K=function(){function n(n,t,e){var u=void 0===e?{}:e;e=u.message;var i=u.groupName;u=u.key,this.key=null,this.id=r(),this.severity=G.Error,this.status=M,this.fieldName=n,this.testFn=t,i&&(this.groupName=i),e&&(this.message=e),u&&(this.key=u)}return n.prototype.run=function(){try{var n=this.testFn()}catch(t){(function(n,t){return o(n)&&u(t)})(this.message,t)&&(this.message=t),n=!1}return!1===n&&this.fail(),n},n.prototype.setStatus=function(n){this.isFinalStatus()&&n!==z||(this.status=n)},n.prototype.warns=function(){return this.severity===G.Warning},n.prototype.setPending=function(){this.setStatus(Y)},n.prototype.fail=function(){this.setStatus(this.warns()?B:j)},n.prototype.done=function(){this.isFinalStatus()||this.setStatus(V)},n.prototype.warn=function(){this.severity=G.Warning},n.prototype.isFinalStatus=function(){return this.hasFailures()||this.isCanceled()||this.isPassing()},n.prototype.skip=function(n){this.isPending()&&!n||this.setStatus(q)},n.prototype.cancel=function(){this.setStatus(J),F()},n.prototype.reset=function(){this.status=M,F()},n.prototype.omit=function(){this.setStatus(z)},n.prototype.valueOf=function(){return!this.isFailing()},n.prototype.hasFailures=function(){return this.isFailing()||this.isWarning()},n.prototype.isNonActionable=function(){return this.isSkipped()||this.isOmitted()||this.isCanceled()},n.prototype.isPending=function(){return this.statusEquals(Y)},n.prototype.isTested=function(){return this.hasFailures()||this.isPassing()},n.prototype.isOmitted=function(){return this.statusEquals(z)},n.prototype.isUntested=function(){return this.statusEquals(M)},n.prototype.isFailing=function(){return this.statusEquals(j)},n.prototype.isCanceled=function(){return this.statusEquals(J)},n.prototype.isSkipped=function(){return this.statusEquals(q)},n.prototype.isPassing=function(){return this.statusEquals(V)},n.prototype.isWarning=function(){return this.statusEquals(B)},n.prototype.statusEquals=function(n){return this.status===n},n}(),M="UNTESTED",q="SKIPPED",j="FAILED",B="WARNING",V="PASSING",Y="PENDING",J="CANCELED",z="OMITTED";function Q(n,t){if(!n)throw t instanceof String?t.valueOf():Error(t?g(t):t)}function Z(n){function t(n,t,u){return r.references.push(),e(n,g(t,u)),function(){return[r.references[n],function(t){return e(n,g(t,r.references[n]))}]}}function e(t,e){var i=r.references[t];r.references[t]=e,h(t=u[t][1])&&t(e,i),h(n)&&n()}var r={references:[]},u=[];return{registerStateKey:function(n,e){var r=u.length;return u.push([n,e]),t(r,n)},reset:function(){var n=r.references;r.references=[],u.forEach((function(e,r){return t(r,e[0],n[r])}))}}}function $(n,t){var e=t.suiteId;return t=t.suiteName,{optionalFields:n.registerStateKey((function(){return{}})),suiteId:n.registerStateKey(e),suiteName:n.registerStateKey(t),testCallbacks:n.registerStateKey((function(){return{fieldCallbacks:{},doneCallbacks:[]}})),testObjects:n.registerStateKey((function(n){return{prev:n?n.current:[],current:[]}}))}}function nn(n){return d(n)||o(n)}function tn(n){setTimeout((function(){throw Error(n)}),0)}function en(){return I.useX().testCursor.getCursor()}function rn(){return I.useX().testCursor.cursorAt()}function un(){return I.useX().testCursor.next()}function on(n,t){n=void 0===(n=n.type)?C.DEFAULT:n,Q(h(t));var e={current:{},prev:{}},r=en();return I.run({isolate:{type:n,keys:e}},(function(){I.useX().testCursor.addLevel(),e.prev=s(S(x()[0].prev,en())).reduce((function(n,t){return t instanceof K&&!nn(t.key)?(n[t.key]=t,n):n}),{}),U((function(n){return y(n,r,[])}));var n=t();return I.useX().testCursor.removeLevel(),un(),n}))}function sn(n){return n===X.ERRORS?H.ERROR_COUNT:H.WARN_COUNT}function cn(n,t){return Object.prototype.hasOwnProperty.call(n,t)}function an(n){return!n||(function(n){return"number"==typeof n}(n)?0===n:cn(n,"length")?a(n,0):"object"==typeof n&&a(Object.keys(n),0))}!function(n){n.WARNINGS="warnings",n.ERRORS="errors"}(X||(X={})),function(n){n.ERROR_COUNT="errorCount",n.WARN_COUNT="warnCount"}(H||(H={}));var fn=i(an);function ln(n,t){return!!t&&!pn(n,t)}function pn(n,t){return!(!t||n.fieldName!==t)}function dn(n){return function(n,t){return D().some((function(e){return function(n,t,e){return!(!n.hasFailures()||ln(n,e)||function(n,t){return function(n,t){return!!n!=!!t}(n===X.WARNINGS,t.warns())}(t,n))}(e,n,t)}))}(X.ERRORS,n)}function vn(n){return!!function(n){return!!n&&D().some((function(t){return t.fieldName===n&&t.isOmitted()}))}(n)||!dn(n)&&(!an(D())&&!function(n){var t=L()[0];return fn(W().filter((function(e){return!ln(e,n)&&!0!==t[e.fieldName]})))}(n)&&function(n){var t=D(),e=L()[0];return t.every((function(t){return!!ln(t,n)||(!0===e[t.fieldName]||t.isTested()||t.isOmitted())}))}(n))}function hn(){var n=I.useX().summary;return Q(n),n}function gn(){var n=D(),t=T({errorCount:0,warnCount:0,testCount:0},{groups:{},tests:{},valid:!1});return n.reduce((function(n,t){return function(n,t){n[t.fieldName]=En(n,t),n[t.fieldName].valid=!1!==n[t.fieldName].valid&&vn(t.fieldName)}(n.tests,t),function(n,t){var e=t.groupName;e&&(n[e]=n[e]||{},n[e][t.fieldName]=En(n[e],t))}(n.groups,t),n}),t),t.valid=vn(),function(n){for(var t in n.tests)n.errorCount+=n.tests[t].errorCount,n.warnCount+=n.tests[t].warnCount,n.testCount+=n.tests[t].testCount;return n}(t)}function En(n,t){function e(n){var t=sn(n);i[t]++,u&&(i[n]=(i[n]||[]).concat(u))}var r=t.fieldName,u=t.message;n[r]=n[r]||T({errorCount:0,warnCount:0,testCount:0},{errors:[],warnings:[]});var i=n[r];return t.isNonActionable()||(n[r].testCount++,t.isFailing()?e(X.ERRORS):t.isWarning()&&e(X.WARNINGS)),i}function Nn(n,t,e){return e?function(n,t,e){var r;return(null===(r=null==n?void 0:n[e])||void 0===r?void 0:r[t])||[]}(n,t,e):function(n,t){var e,r={};for(e in n)r[e]=n[e][t]||[];return r}(n,t)}function mn(n){return Rn(X.ERRORS,n)}function yn(n){return Rn(X.WARNINGS,n)}function Rn(n,t){return Nn(hn().tests,n,t)}function Sn(n,t){return bn(n,X.ERRORS,t)}function Cn(n,t){return bn(n,X.WARNINGS,t)}function bn(n,t,e){return Nn(hn().groups[n],t,e)}function Tn(n){return f(n,0)}function _n(n){return On(H.ERROR_COUNT,n)}function In(n){return On(H.WARN_COUNT,n)}function On(n,t){var e,r=hn();return Tn(t?null===(e=r.tests[t])||void 0===e?void 0:e[n]:r[n])}function An(n,t){return Ln(X.ERRORS,n,t)}function kn(n,t){return Ln(X.WARNINGS,n,t)}function Ln(n,t,e){var r,u,i=hn();if(n=sn(n),!(t=i.groups[t]))return!1;if(e)return Tn(null===(r=t[e])||void 0===r?void 0:r[n]);for(var o in t)if(Tn(null===(u=t[o])||void 0===u?void 0:u[n]))return!0;return!1}function xn(n){var t,e=hn();return n?!(null===(t=e.tests[n])||void 0===t||!t.valid):e.valid}var Fn=l(1);function Un(){var n=D(),t={stateRef:O()};return Fn([n],I.bind(t,(function(){var n=gn(),t=O().suiteName()[0],e={summary:n};return T(n,{getErrors:I.bind(e,mn),getErrorsByGroup:I.bind(e,Sn),getWarnings:I.bind(e,yn),getWarningsByGroup:I.bind(e,Cn),hasErrors:I.bind(e,_n),hasErrorsByGroup:I.bind(e,An),hasWarnings:I.bind(e,In),hasWarningsByGroup:I.bind(e,kn),isValid:I.bind(e,xn),suiteName:t})})))}function Wn(n){var t=W();return!an(t)&&(n?t.some((function(t){return pn(t,n)})):fn(t))}var Gn=l(20);function Pn(){var n=D(),t={stateRef:O()};return Gn([n],I.bind(t,(function(){return T({},Un(),{done:I.bind(t,Hn)})})))}function Dn(n,t,e){return!(h(n)&&(!t||e.tests[t]&&!an(e.tests[t].testCount)))}function wn(n){return!(Wn()&&(!n||Wn(n)))}var Xn,Hn=function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];var e=(n=n.reverse())[0];if(n=n[1],t=Pn(),Dn(e,n,t))return t;var r=function(){return e(Un())};return wn(n)?(r(),t):(Kn(r,n),t)};function Kn(n,t){(0,k()[1])((function(e){return t?e.fieldCallbacks[t]=(e.fieldCallbacks[t]||[]).concat(n):e.doneCallbacks.push(n),e}))}function Mn(n){return n.forEach((function(n){return n()}))}function qn(){var n=function(){var n={};return{emit:function(t,e){(n[t]||[]).forEach((function(n){n(e)}))},on:function(t,e){return n[t]=(n[t]||[]).concat(e),{off:function(){n[t]=(n[t]||[]).filter((function(n){return n!==e}))}}}}}();return n.on(Xn.TEST_COMPLETED,(function(t){t.isCanceled()||(t.done(),function(n){var t=k()[0].fieldCallbacks;n&&!Wn(n)&&p(t[n])&&Mn(t[n])}(t.fieldName),Wn()||n.emit(Xn.ALL_RUNNING_TESTS_FINISHED))})),n.on(Xn.SUITE_CALLBACK_DONE_RUNNING,(function(){!function(){var n=L()[0];if(!an(n)){var t={};U((function(e){return m(e,(function(e){if(cn(t,e.fieldName))t[e.fieldName]&&e.omit();else{var r=n[e.fieldName];h(r)&&(t[e.fieldName]=r(),t[e.fieldName]&&e.omit())}return e}))}))}}()})),n.on(Xn.ALL_RUNNING_TESTS_FINISHED,(function(){Mn(k()[0].doneCallbacks)})),n.on(Xn.REMOVE_FIELD,(function(n){w((function(t){pn(t,n)&&(t.cancel(),function(n){U((function(t){return m(t,(function(t){return n!==t?t:null}))}))}(t))}))})),n.on(Xn.RESET_FIELD,(function(n){w((function(t){pn(t,n)&&t.reset()}))})),n}function jn(){var n=I.useX();return Q(n.bus),n.bus}!function(n){n.TEST_COMPLETED="test_completed",n.ALL_RUNNING_TESTS_FINISHED="all_running_tests_finished",n.REMOVE_FIELD="remove_field",n.RESET_FIELD="reset_field",n.SUITE_CALLBACK_DONE_RUNNING="suite_callback_done_running"}(Xn||(Xn={}));function Bn(){return!!I.useX().skipped}function Vn(n){return zn(0,"tests",n)}function Yn(n){return zn(1,"tests",n)}function Jn(n){var t=n.fieldName;if(n=n.groupName,Bn())return!0;var e=I.useX(),r=e.exclusion;e=e.inclusion;var u=r.tests,i=u[t];if(!1===i)return!0;if(i=!0===i,n){if(function(n){var t=I.useX().exclusion.groups;return cn(t,n)?!1===t[n]:Zn()}(n))return!0;if(!0===r.groups[n])return!i&&(!!Qn(u)||!1===u[t])}return!!function(n){return!!Zn()&&!n}(n)||!i&&(!!Qn(u)&&!g(e[t]))}function zn(n,t,e){var r=I.useX("hook called outside of a running suite.");e&&s(e).forEach((function(e){u(e)&&(r.exclusion[t][e]=0===n)}))}function Qn(n){for(var t in n)if(!0===n[t])return!0;return!1}function Zn(){var n,t=I.useX().exclusion;for(n in t.groups)if(t.groups[n])return!0;return!1}function $n(n){return"Wrong arguments passed to group. Group ".concat(n,".")}function nt(n){return!(!function(n){return I.useX().mode[0]===n}(b.EAGER)||!dn(n.fieldName))}function tt(){return!!I.useX().omitted}function et(n,t,e){if(e||2===arguments.length)for(var r,u=0,i=t.length;u<i;u++)!r&&u in t||(r||(r=Array.prototype.slice.call(t,0,u)),r[u]=t[u]);return n.concat(r||Array.prototype.slice.call(t))}function rt(n){return n&&h(n.then)}function ut(n,t){return n.fieldName===t.fieldName&&n.groupName===t.groupName}function it(n){var t=n.asyncTest,e=n.message;if(rt(t)){var r=jn().emit,i=O(),o=I.bind({stateRef:i},(function(){F(),r(Xn.TEST_COMPLETED,n)}));i=I.bind({stateRef:i},(function(t){n.isCanceled()||(n.message=u(t)?t:e,n.fail(),o())}));try{t.then(o,i)}catch(n){i()}}}function ot(n){var t=jn(),e=function(n){return I.run({currentTest:n},(function(){return n.run()}))}(n);try{rt(e)?(n.asyncTest=e,n.setPending(),it(n)):t.emit(Xn.TEST_COMPLETED,n)}catch(t){throw Error("Unexpected error encountered during test registration.\n Test Object: ".concat(JSON.stringify(n),".\n Error: ").concat(t,"."))}}function st(n){var t=x()[0].prev;return an(t)?(ct(n),n):(t=function(n){var t=en();return function(n,t){return S(n,t)[N(t)]}(n,t)}(t),nn(n.key)?(function(n,t){return fn(n)&&!ut(n,t)}(t,n)&&(function(n,t){I.useX().isolate.type===C.EACH||tn("Vest Critical Error: Tests called in different order than previous run.\n expected: ".concat(n.fieldName,"\n received: ").concat(t.fieldName,'\n This can happen on one of two reasons:\n 1. You\'re using if/else statements to conditionally select tests. Instead, use "skipWhen".\n 2. You are iterating over a list of tests, and their order changed. Use "each" and a custom key prop so that Vest retains their state.'))}(t,n),function(){var n=x(),t=n[1],e=n[0].prev;n=S(e,en());var r=rn();n.splice(r),t((function(n){return{prev:e,current:n.current}}))}(),t=null),ct(n=E(t,n)),n):(ct(n=function(n,t){var e=function(n){return I.useX().isolate.keys.prev[n]}(n);return e&&(t=e),function(n,t){var e=I.useX().isolate.keys.current;nn(e[n])?e[n]=t:tn('Encountered the same test key "'.concat(n,"\" twice. This may lead to tests overriding each other's results, or to tests being unexpectedly omitted."))}(n,t),t}(n.key,n)),n))}function ct(n){var t=en();U((function(e){return y(e,t,n)}))}function at(n){if(nt(n))return n.skip(),st(n),un(),n;var t=st(n);return tt()?(t.omit(),un(),t):Jn(n)?(t.skip(Bn()),un(),t):(function(n,t){t!==n&&ut(n,t)&&n.isPending()&&n.cancel()}(t,n),ct(n),un(),function(n){n.isUntested()?ot(n):rt(n.asyncTest)&&(n.setPending(),it(n))}(n),n)}function ft(n){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];var r=h(t[1])?t:et([void 0],t,!0);t=r[0],e=r[1],r=r[2],Q(u(n),pt("fieldName","string")),Q(h(e),pt("Test callback","function"));var i=I.useX();return at(t=new K(n,e,{message:t,groupName:i.groupName,key:r}))}Vn.group=function(n){return zn(0,"groups",n)},Yn.group=function(n){return zn(1,"groups",n)};var lt=T(ft,{memo:function(n){var t=l(10);return function(e){for(var r=[],u=1;u<arguments.length;u++)r[u-1]=arguments[u];u=rn();var i=(r=r.reverse())[0],o=r[1],s=r[2];return u=[A(),e,u].concat(i),d(r=t.get(u))?t(u,(function(){return n(e,s,o)})):r[1].isCanceled()?(t.invalidate(u),t(u,(function(){return n(e,s,o)}))):at(r[1])}}(ft)});function pt(n,t){return"Incompatible params passed to test function. ".concat(n," must be a ").concat(t)}Object.defineProperty(exports,"enforce",{enumerable:!0,get:function(){return t.enforce}}),exports.VERSION="4.3.2",exports.context=I,exports.create=function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];var e=(n=n.reverse())[0];n=n[1],Q(h(e),"vest.create: Expected callback to be a function.");var u=qn(),i=Z();return n={stateRef:$(i,{suiteId:r(),suiteName:n}),bus:u},T(I.bind(n,(function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return i.reset(),on({type:C.SUITE},(function(){e.apply(void 0,n)})),u.emit(Xn.SUITE_CALLBACK_DONE_RUNNING),Pn()})),{get:I.bind(n,Un),remove:I.bind(n,(function(n){u.emit(Xn.REMOVE_FIELD,n)})),reset:i.reset,resetField:I.bind(n,(function(n){u.emit(Xn.RESET_FIELD,n)}))})},exports.each=function(n,t){Q(h(t),"each callback must be a function"),on({type:C.EACH},(function(){n.forEach((function(n,e){t(n,e)}))}))},exports.eager=function(){!function(n){I.useX().mode[0]=n}(b.EAGER)},exports.group=function(n,t){Q(u(n),$n("name must be a string")),Q(h(t),$n("callback must be a function")),on({type:C.GROUP},(function(){I.run({groupName:n},t)}))},exports.include=function(n){var t=I.useX(),e=t.inclusion;return t=t.exclusion,Q(u(n)),e[n]=E(t.tests[n],!0),{when:function(t){var e=I.useX(),r=e.exclusion;e.inclusion[n]=function(){return cn(r.tests,n)?E(r.tests[n],!0):u(t)?!!r.tests[t]:g(t,g(Un))}}}},exports.omitWhen=function(n,t){on({type:C.OMIT_WHEN},(function(){I.run({omitted:tt()||g(n,g(Un))},(function(){return t()}))}))},exports.only=Vn,exports.optional=function(n){(0,L()[1])((function(t){if(p(n)||u(n))s(n).forEach((function(n){t[n]=!0}));else for(var e in n)t[e]=n[e];return t}))},exports.skip=Yn,exports.skipWhen=function(n,t){on({type:C.SKIP_WHEN},(function(){I.run({skipped:Bn()||g(n,g(Un))},(function(){return t()}))}))},exports.test=lt,exports.warn=function(){var n=I.useX("warn hook called outside of a running suite.");Q(n.currentTest,"warn called outside of a test."),n.currentTest.warn()};
|
|
@@ -1864,6 +1864,6 @@ function warn() {
|
|
|
1864
1864
|
ctx.currentTest.warn();
|
|
1865
1865
|
}
|
|
1866
1866
|
|
|
1867
|
-
var VERSION = "4.3.2
|
|
1867
|
+
var VERSION = "4.3.2";
|
|
1868
1868
|
|
|
1869
1869
|
export { VERSION, context, create, each, eager, group, include, omitWhen, only, optional, skip, skipWhen, test, warn };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{createContext as t}from"context";export{enforce}from"n4s";var n,e=(n=0,function(){return"".concat(n++)});function r(t){return String(t)===t}function u(t){return function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];return!t.apply(void 0,n)}}function i(t){var n=Number(t);return!(isNaN(parseFloat(String(t)))||isNaN(Number(t))||!isFinite(n))}function o(t,n){return i(t)&&i(n)&&Number(t)===Number(n)}function s(t,n){return i(t)&&i(n)&&Number(t)>Number(n)}function a(t){function n(e,u){var i=n.get(e);return i?i[1]:(u=u(),r.unshift([e.concat(),u]),s(r.length,t)&&(r.length=t),u)}function e(t){return r.findIndex((function(n){var e=n[0];return o(t.length,e.length)&&t.every((function(t,n){return t===e[n]}))}))}void 0===t&&(t=1);var r=[];return n.invalidate=function(t){-1<(t=e(t))&&r.splice(t,1)},n.get=function(t){return r[e(t)]||null},n}var c=u((function(t){return null===t}));function f(t){return"function"==typeof t}function l(t){for(var n=[],e=1;e<arguments.length;e++)n[e-1]=arguments[e];return f(t)?t.apply(void 0,n):t}function p(t,n){var e;return null!==(e=l(t))&&void 0!==e?e:n}function d(t){return(t=[].concat(t))[t.length-1]}function v(t,n){for(var e=[],r=0;r<t.length;r++){var u=t[r];Array.isArray(u)?e.push(v(u,n)):(u=n(u),c(u)&&e.push(u))}return e}function h(t){return[].concat(t).reduce((function(t,n){return Array.isArray(n)?t.concat(h(n)):[].concat(t).concat(n)}),[])}function E(t,n){var e=0;for(n=n.slice(0,-1);e<n.length;e++){var r=n[e];t[r]=p(t[r],[]),t=t[r]}return t}var g=Object.assign;function N(){function t(){n=[0]}var n=[];return t(),{addLevel:function(){n.push(0)},cursorAt:function(){return d(n)},getCursor:function(){return[].concat(n)},next:function(){return n[n.length-1]++,d(n)},removeLevel:function(){n.pop()},reset:t}}var m,y=m||(m={});y[y.DEFAULT=0]="DEFAULT",y[y.SUITE=1]="SUITE",y[y.EACH=2]="EACH",y[y.SKIP_WHEN=3]="SKIP_WHEN",y[y.OMIT_WHEN=4]="OMIT_WHEN",y[y.GROUP=5]="GROUP";var R,C=R||(R={});C[C.ALL=0]="ALL",C[C.EAGER=1]="EAGER";var S=t((function(t,n){return n?null:g({},{exclusion:{tests:{},groups:{}},inclusion:{},isolate:{type:m.DEFAULT,keys:{current:{},prev:{}}},mode:[R.ALL],testCursor:N()},t)}));function b(){return S.useX().stateRef}function T(){return b().testObjects()}function O(){(0,T()[1])((function(t){return{prev:t.prev,current:[].concat(t.current)}}))}function A(t){(0,T()[1])((function(n){return{prev:n.prev,current:[].concat(t(n.current))}}))}function _(){return h(v(T()[0].current,(function(t){return t.isPending()?t:null})))}var I=a();function k(){var t=T()[0].current;return I([t],(function(){return h(t)}))}var L,F=L||(L={});F.Error="error",F.Warning="warning";var U=function(){function t(t,n,r){var u=void 0===r?{}:r;r=u.message;var i=u.groupName;u=u.key,this.key=null,this.id=e(),this.severity=L.Error,this.status=W,this.fieldName=t,this.testFn=n,i&&(this.groupName=i),r&&(this.message=r),u&&(this.key=u)}return t.prototype.run=function(){try{var t=this.testFn()}catch(n){t=n,void 0===this.message&&r(t)&&(this.message=n),t=!1}return!1===t&&this.fail(),t},t.prototype.setStatus=function(t){this.isFinalStatus()&&t!==H||(this.status=t)},t.prototype.warns=function(){return this.severity===L.Warning},t.prototype.setPending=function(){this.setStatus(D)},t.prototype.fail=function(){this.setStatus(this.warns()?X:G)},t.prototype.done=function(){this.isFinalStatus()||this.setStatus(w)},t.prototype.warn=function(){this.severity=L.Warning},t.prototype.isFinalStatus=function(){return this.hasFailures()||this.isCanceled()||this.isPassing()},t.prototype.skip=function(t){this.isPending()&&!t||this.setStatus(P)},t.prototype.cancel=function(){this.setStatus(x),O()},t.prototype.reset=function(){this.status=W,O()},t.prototype.omit=function(){this.setStatus(H)},t.prototype.valueOf=function(){return!this.isFailing()},t.prototype.hasFailures=function(){return this.isFailing()||this.isWarning()},t.prototype.isNonActionable=function(){return this.isSkipped()||this.isOmitted()||this.isCanceled()},t.prototype.isPending=function(){return this.statusEquals(D)},t.prototype.isTested=function(){return this.hasFailures()||this.isPassing()},t.prototype.isOmitted=function(){return this.statusEquals(H)},t.prototype.isUntested=function(){return this.statusEquals(W)},t.prototype.isFailing=function(){return this.statusEquals(G)},t.prototype.isCanceled=function(){return this.statusEquals(x)},t.prototype.isSkipped=function(){return this.statusEquals(P)},t.prototype.isPassing=function(){return this.statusEquals(w)},t.prototype.isWarning=function(){return this.statusEquals(X)},t.prototype.statusEquals=function(t){return this.status===t},t}(),W="UNTESTED",P="SKIPPED",G="FAILED",X="WARNING",w="PASSING",D="PENDING",x="CANCELED",H="OMITTED";function K(t,n){if(!t)throw n instanceof String?n.valueOf():Error(n?l(n):n)}function M(t){function n(t,n,u){return r.references.push(),e(t,l(n,u)),function(){return[r.references[t],function(n){return e(t,l(n,r.references[t]))}]}}function e(n,e){var i=r.references[n];r.references[n]=e,f(n=u[n][1])&&n(e,i),f(t)&&t()}var r={references:[]},u=[];return{registerStateKey:function(t,e){var r=u.length;return u.push([t,e]),n(r,t)},reset:function(){var t=r.references;r.references=[],u.forEach((function(e,r){return n(r,e[0],t[r])}))}}}function j(t,n){var e=n.suiteId;return n=n.suiteName,{optionalFields:t.registerStateKey((function(){return{}})),suiteId:t.registerStateKey(e),suiteName:t.registerStateKey(n),testCallbacks:t.registerStateKey((function(){return{fieldCallbacks:{},doneCallbacks:[]}})),testObjects:t.registerStateKey((function(t){return{prev:t?t.current:[],current:[]}}))}}function q(t){return null==t}function B(t){setTimeout((function(){throw Error(t)}),0)}function V(){return S.useX().testCursor.getCursor()}function Y(){return S.useX().testCursor.next()}function J(t,n){t=void 0===(t=t.type)?m.DEFAULT:t,K(f(n));var e={current:{},prev:{}},r=V();return S.run({isolate:{type:t,keys:e}},(function(){S.useX().testCursor.addLevel(),e.prev=function(){var t=T()[0].prev;return[].concat(E(t,V())).reduce((function(t,n){return n instanceof U&&!q(n.key)?(t[n.key]=n,t):t}),{})}(),A((function(t){return E(t,r)[d(r)]=[],t}));var t=n();return S.useX().testCursor.removeLevel(),Y(),t}))}var z,Q=z||(z={});Q.WARNINGS="warnings",Q.ERRORS="errors";var Z,$=Z||(Z={});function tt(t){return!t||("number"==typeof t?0===t:Object.prototype.hasOwnProperty.call(t,"length")?o(t.length,0):"object"==typeof t&&o((t=Object.keys(t)).length,0))}$.ERROR_COUNT="errorCount",$.WARN_COUNT="warnCount";var nt=u(tt);function et(t,n){return!(!n||t.fieldName!==n)}function rt(t,n){return k().some((function(e){return e.hasFailures()?n&&!et(e,n)?e=!1:(e=e.warns(),e=t===z.WARNINGS==!!e):e=!1,e}))}function ut(t){return!!function(t){return!!t&&k().some((function(n){return n.fieldName===t&&n.isOmitted()}))}(t)||!rt(z.ERRORS,t)&&(!tt(k())&&!function(t){var n=b().optionalFields()[0];return nt(_().filter((function(e){return!(t&&!et(e,t))&&!0!==n[e.fieldName]})))}(t)&&function(t){var n=k(),e=b().optionalFields()[0];return n.every((function(n){return!(!t||et(n,t))||(!0===e[n.fieldName]||n.isTested()||n.isOmitted())}))}(t))}function it(){var t=S.useX().summary;return K(t),t}function ot(t,n){function e(t){i[t===z.ERRORS?Z.ERROR_COUNT:Z.WARN_COUNT]++,u&&(i[t]=(i[t]||[]).concat(u))}var r=n.fieldName,u=n.message;t[r]=t[r]||g({errorCount:0,warnCount:0,testCount:0},{errors:[],warnings:[]});var i=t[r];return n.isNonActionable()||(t[r].testCount++,n.isFailing()?e(z.ERRORS):n.isWarning()&&e(z.WARNINGS)),i}function st(t,n,e){var r;return(null===(r=null==t?void 0:t[e])||void 0===r?void 0:r[n])||[]}function at(t,n){var e,r={};for(e in t)r[e]=t[e][n]||[];return r}function ct(t){return lt(z.ERRORS,t)}function ft(t){return lt(z.WARNINGS,t)}function lt(t,n){var e=it().tests;return n?st(e,t,n):at(e,t)}function pt(t,n){return vt(t,z.ERRORS,n)}function dt(t,n){return vt(t,z.WARNINGS,n)}function vt(t,n,e){return t=it().groups[t],e?st(t,n,e):at(t,n)}function ht(t){return gt(Z.ERROR_COUNT,t)}function Et(t){return gt(Z.WARN_COUNT,t)}function gt(t,n){var e,r=it();return s(n?null===(e=r.tests[n])||void 0===e?void 0:e[t]:r[t],0)}function Nt(t,n){return yt(z.ERRORS,t,n)}function mt(t,n){return yt(z.WARNINGS,t,n)}function yt(t,n,e){var r,u,i=it();if(t=t===z.ERRORS?Z.ERROR_COUNT:Z.WARN_COUNT,!(n=i.groups[n]))return!1;if(e)return s(null===(r=n[e])||void 0===r?void 0:r[t],0);for(var o in n)if(s(null===(u=n[o])||void 0===u?void 0:u[t],0))return!0;return!1}function Rt(t){var n,e=it();return t?!(null===(n=e.tests[t])||void 0===n||!n.valid):e.valid}var Ct=a(1);function St(){var t=k(),n={stateRef:b()};return Ct([t],S.bind(n,(function(){var t=function(){var t=k(),n=g({errorCount:0,warnCount:0,testCount:0},{groups:{},tests:{},valid:!1});return t.reduce((function(t,n){var e=t.tests;e[n.fieldName]=ot(e,n),e[n.fieldName].valid=!1!==e[n.fieldName].valid&&ut(n.fieldName),e=t.groups;var r=n.groupName;return r&&(e[r]=e[r]||{},e[r][n.fieldName]=ot(e[r],n)),t}),n),n.valid=ut(),function(t){for(var n in t.tests)t.errorCount+=t.tests[n].errorCount,t.warnCount+=t.tests[n].warnCount,t.testCount+=t.tests[n].testCount;return t}(n)}(),n=b().suiteName()[0],e={summary:t};return g(t,{getErrors:S.bind(e,ct),getErrorsByGroup:S.bind(e,pt),getWarnings:S.bind(e,ft),getWarningsByGroup:S.bind(e,dt),hasErrors:S.bind(e,ht),hasErrorsByGroup:S.bind(e,Nt),hasWarnings:S.bind(e,Et),hasWarningsByGroup:S.bind(e,mt),isValid:S.bind(e,Rt),suiteName:n})})))}function bt(t){var n=_();return!tt(n)&&(t?n.some((function(n){return et(n,t)})):nt(n))}var Tt=a(20);function Ot(){var t=k(),n={stateRef:b()};return Tt([t],S.bind(n,(function(){return g({},St(),{done:S.bind(n,It)})})))}function At(t,n,e){return!(f(t)&&(!n||e.tests[n]&&!tt(e.tests[n].testCount)))}function _t(t){return!(bt()&&(!t||bt(t)))}function It(){function t(){return r(St())}for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];var r=(n=n.reverse())[0];return n=n[1],e=Ot(),At(r,n,e)?e:_t(n)?(t(),e):(kt(t,n),e)}function kt(t,n){(0,b().testCallbacks()[1])((function(e){return n?e.fieldCallbacks[n]=(e.fieldCallbacks[n]||[]).concat(t):e.doneCallbacks.push(t),e}))}function Lt(t){return t.forEach((function(t){return t()}))}function Ft(){var t=function(){var t={};return{emit:function(n,e){(t[n]||[]).forEach((function(t){t(e)}))},on:function(n,e){return t[n]=(t[n]||[]).concat(e),{off:function(){t[n]=(t[n]||[]).filter((function(t){return t!==e}))}}}}}();return t.on(Wt.TEST_COMPLETED,(function(n){if(!n.isCanceled()){n.done(),n=n.fieldName;var e=b().testCallbacks()[0].fieldCallbacks;n&&!bt(n)&&Array.isArray(e[n])&&Lt(e[n]),bt()||t.emit(Wt.ALL_RUNNING_TESTS_FINISHED)}})),t.on(Wt.SUITE_CALLBACK_DONE_RUNNING,(function(){!function(){var t=b().optionalFields()[0];if(!tt(t)){var n={};A((function(e){return v(e,(function(e){if(Object.prototype.hasOwnProperty.call(n,e.fieldName))n[e.fieldName]&&e.omit();else{var r=t[e.fieldName];f(r)&&(n[e.fieldName]=r(),n[e.fieldName]&&e.omit())}return e}))}))}}()})),t.on(Wt.ALL_RUNNING_TESTS_FINISHED,(function(){Lt(b().testCallbacks()[0].doneCallbacks)})),t.on(Wt.REMOVE_FIELD,(function(t){k().forEach((function(n){et(n,t)&&(n.cancel(),function(t){A((function(n){return v(n,(function(n){return t!==n?n:null}))}))}(n))}))})),t.on(Wt.RESET_FIELD,(function(t){k().forEach((function(n){et(n,t)&&n.reset()}))})),t}function Ut(){var t=S.useX();return K(t.bus),t.bus}var Wt,Pt=Wt||(Wt={});function Gt(t){return wt(0,"tests",t)}function Xt(t){return wt(1,"tests",t)}function wt(t,n,e){var u=S.useX("hook called outside of a running suite.");e&&[].concat(e).forEach((function(e){r(e)&&(u.exclusion[n][e]=0===t)}))}function Dt(t){for(var n in t)if(!0===t[n])return!0;return!1}function xt(){var t,n=S.useX().exclusion;for(t in n.groups)if(n.groups[t])return!0;return!1}function Ht(t){return"Wrong arguments passed to group. Group ".concat(t,".")}function Kt(t,n,e){if(e||2===arguments.length)for(var r,u=0,i=n.length;u<i;u++)!r&&u in n||(r||(r=Array.prototype.slice.call(n,0,u)),r[u]=n[u]);return t.concat(r||Array.prototype.slice.call(n))}function Mt(t){var n=t.asyncTest,e=t.message;if(n&&f(n.then)){var u=Ut().emit,i=b(),o=S.bind({stateRef:i},(function(){O(),u(Wt.TEST_COMPLETED,t)}));i=S.bind({stateRef:i},(function(n){t.isCanceled()||(t.message=r(n)?n:e,t.fail(),o())}));try{n.then(o,i)}catch(t){i()}}}function jt(t){var n=T()[0].prev;if(tt(n))return qt(t),t;var e=V();if(n=E(n,e)[d(e)],!q(t.key)){n=t.key,(e=S.useX().isolate.keys.prev[n])&&(t=e),e=t;var r=S.useX().isolate.keys.current;return q(r[n])?r[n]=e:B('Encountered the same test key "'.concat(n,"\" twice. This may lead to tests overriding each other's results, or to tests being unexpectedly omitted.")),qt(t),t}return!nt(e=n)||e.fieldName===t.fieldName&&e.groupName===t.groupName||(S.useX().isolate.type===m.EACH||B("Vest Critical Error: Tests called in different order than previous run.\n expected: ".concat(n.fieldName,"\n received: ").concat(t.fieldName,'\n This can happen on one of two reasons:\n 1. You\'re using if/else statements to conditionally select tests. Instead, use "skipWhen".\n 2. You are iterating over a list of tests, and their order changed. Use "each" and a custom key prop so that Vest retains their state.')),function(){var t=T(),n=t[1],e=t[0].prev;t=E(e,V());var r=S.useX().testCursor.cursorAt();t.splice(r),n((function(t){return{prev:e,current:t.current}}))}(),n=null),qt(t=p(n,t)),t}function qt(t){var n=V();A((function(e){return E(e,n)[d(n)]=t,e}))}function Bt(t){var n=R.EAGER;if(n=!(S.useX().mode[0]!==n||!rt(z.ERRORS,t.fieldName)))return t.skip(),jt(t),Y(),t;if(n=jt(t),S.useX().omitted)return n.omit(),Y(),n;if(function(t){var n=t.fieldName;if(t=t.groupName,S.useX().skipped)return!0;var e=S.useX(),r=e.exclusion;e=e.inclusion;var u=r.tests,i=u[n];if(!1===i)return!0;if(i=!0===i,t){var o=S.useX().exclusion.groups;if(o=Object.prototype.hasOwnProperty.call(o,t)?!1===o[t]:xt())return!0;if(!0===r.groups[t])return!(i||!Dt(u)&&!1!==u[n])}return!!(t=!!xt()&&!t)||!i&&!!Dt(u)&&!l(e[n])}(t))return n.skip(!!S.useX().skipped),Y(),n;if(t!==n&&n.fieldName===t.fieldName&&n.groupName===t.groupName&&n.isPending()&&n.cancel(),qt(t),Y(),t.isUntested()){n=Ut();var e=function(t){return S.run({currentTest:t},(function(){return t.run()}))}(t);try{e&&f(e.then)?(t.asyncTest=e,t.setPending(),Mt(t)):n.emit(Wt.TEST_COMPLETED,t)}catch(n){throw Error("Unexpected error encountered during test registration.\n Test Object: ".concat(JSON.stringify(t),".\n Error: ").concat(n,"."))}}else(n=t.asyncTest)&&f(n.then)&&(t.setPending(),Mt(t));return t}function Vt(t){for(var n=[],e=1;e<arguments.length;e++)n[e-1]=arguments[e];var u=f(n[1])?n:Kt([void 0],n,!0);n=u[0],e=u[1],u=u[2],K(r(t),Jt("fieldName","string")),K(f(e),Jt("Test callback","function"));var i=S.useX();return Bt(n=new U(t,e,{message:n,groupName:i.groupName,key:u}))}Pt.TEST_COMPLETED="test_completed",Pt.ALL_RUNNING_TESTS_FINISHED="all_running_tests_finished",Pt.REMOVE_FIELD="remove_field",Pt.RESET_FIELD="reset_field",Pt.SUITE_CALLBACK_DONE_RUNNING="suite_callback_done_running",Gt.group=function(t){return wt(0,"groups",t)},Xt.group=function(t){return wt(1,"groups",t)};var Yt=g(Vt,{memo:function(t){var n=a(10);return function(e){for(var r=[],u=1;u<arguments.length;u++)r[u-1]=arguments[u];u=S.useX().testCursor.cursorAt();var i=(r=r.reverse())[0],o=r[1],s=r[2];return u=[b().suiteId()[0],e,u].concat(i),null===(r=n.get(u))?n(u,(function(){return t(e,s,o)})):r[1].isCanceled()?(n.invalidate(u),n(u,(function(){return t(e,s,o)}))):Bt(r[1])}}(Vt)});function Jt(t,n){return"Incompatible params passed to test function. ".concat(t," must be a ").concat(n)}var zt="4.3.2-dev-2805e3";function Qt(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var r=(t=t.reverse())[0];t=t[1],K(f(r),"vest.create: Expected callback to be a function.");var u=Ft(),i=M();return t={stateRef:j(i,{suiteId:e(),suiteName:t}),bus:u},g(S.bind(t,(function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return i.reset(),J({type:m.SUITE},(function(){r.apply(void 0,t)})),u.emit(Wt.SUITE_CALLBACK_DONE_RUNNING),Ot()})),{get:S.bind(t,St),remove:S.bind(t,(function(t){u.emit(Wt.REMOVE_FIELD,t)})),reset:i.reset,resetField:S.bind(t,(function(t){u.emit(Wt.RESET_FIELD,t)}))})}function Zt(t,n){K(f(n),"each callback must be a function"),J({type:m.EACH},(function(){t.forEach((function(t,e){n(t,e)}))}))}function $t(){var t=R.EAGER;S.useX().mode[0]=t}function tn(t,n){K(r(t),Ht("name must be a string")),K(f(n),Ht("callback must be a function")),J({type:m.GROUP},(function(){S.run({groupName:t},n)}))}function nn(t){var n=S.useX(),e=n.inclusion;return n=n.exclusion,K(r(t)),e[t]=p(n.tests[t],!0),{when:function(n){var e=S.useX(),u=e.exclusion;e.inclusion[t]=function(){return Object.prototype.hasOwnProperty.call(u.tests,t)?p(u.tests[t],!0):r(n)?!!u.tests[n]:l(n,l(St))}}}}function en(t,n){J({type:m.OMIT_WHEN},(function(){S.run({omitted:!!S.useX().omitted||l(t,l(St))},(function(){return n()}))}))}function rn(t){(0,b().optionalFields()[1])((function(n){if(Array.isArray(t)||r(t))[].concat(t).forEach((function(t){n[t]=!0}));else for(var e in t)n[e]=t[e];return n}))}function un(t,n){J({type:m.SKIP_WHEN},(function(){S.run({skipped:!!S.useX().skipped||l(t,l(St))},(function(){return n()}))}))}function on(){var t=S.useX("warn hook called outside of a running suite.");K(t.currentTest,"warn called outside of a test."),t.currentTest.warn()}export{zt as VERSION,S as context,Qt as create,Zt as each,$t as eager,tn as group,nn as include,en as omitWhen,Gt as only,rn as optional,Xt as skip,un as skipWhen,Yt as test,on as warn};
|
|
1
|
+
import{createContext as t}from"context";export{enforce}from"n4s";var n,e=(n=0,function(){return"".concat(n++)});function r(t){return String(t)===t}function u(t){return function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];return!t.apply(void 0,n)}}function i(t){var n=Number(t);return!(isNaN(parseFloat(String(t)))||isNaN(Number(t))||!isFinite(n))}function o(t,n){return i(t)&&i(n)&&Number(t)===Number(n)}function s(t,n){return i(t)&&i(n)&&Number(t)>Number(n)}function a(t){function n(e,u){var i=n.get(e);return i?i[1]:(u=u(),r.unshift([e.concat(),u]),s(r.length,t)&&(r.length=t),u)}function e(t){return r.findIndex((function(n){var e=n[0];return o(t.length,e.length)&&t.every((function(t,n){return t===e[n]}))}))}void 0===t&&(t=1);var r=[];return n.invalidate=function(t){-1<(t=e(t))&&r.splice(t,1)},n.get=function(t){return r[e(t)]||null},n}var c=u((function(t){return null===t}));function f(t){return"function"==typeof t}function l(t){for(var n=[],e=1;e<arguments.length;e++)n[e-1]=arguments[e];return f(t)?t.apply(void 0,n):t}function p(t,n){var e;return null!==(e=l(t))&&void 0!==e?e:n}function d(t){return(t=[].concat(t))[t.length-1]}function v(t,n){for(var e=[],r=0;r<t.length;r++){var u=t[r];Array.isArray(u)?e.push(v(u,n)):(u=n(u),c(u)&&e.push(u))}return e}function h(t){return[].concat(t).reduce((function(t,n){return Array.isArray(n)?t.concat(h(n)):[].concat(t).concat(n)}),[])}function E(t,n){var e=0;for(n=n.slice(0,-1);e<n.length;e++){var r=n[e];t[r]=p(t[r],[]),t=t[r]}return t}var g=Object.assign;function N(){function t(){n=[0]}var n=[];return t(),{addLevel:function(){n.push(0)},cursorAt:function(){return d(n)},getCursor:function(){return[].concat(n)},next:function(){return n[n.length-1]++,d(n)},removeLevel:function(){n.pop()},reset:t}}var m,y=m||(m={});y[y.DEFAULT=0]="DEFAULT",y[y.SUITE=1]="SUITE",y[y.EACH=2]="EACH",y[y.SKIP_WHEN=3]="SKIP_WHEN",y[y.OMIT_WHEN=4]="OMIT_WHEN",y[y.GROUP=5]="GROUP";var R,C=R||(R={});C[C.ALL=0]="ALL",C[C.EAGER=1]="EAGER";var S=t((function(t,n){return n?null:g({},{exclusion:{tests:{},groups:{}},inclusion:{},isolate:{type:m.DEFAULT,keys:{current:{},prev:{}}},mode:[R.ALL],testCursor:N()},t)}));function b(){return S.useX().stateRef}function T(){return b().testObjects()}function O(){(0,T()[1])((function(t){return{prev:t.prev,current:[].concat(t.current)}}))}function A(t){(0,T()[1])((function(n){return{prev:n.prev,current:[].concat(t(n.current))}}))}function _(){return h(v(T()[0].current,(function(t){return t.isPending()?t:null})))}var I=a();function k(){var t=T()[0].current;return I([t],(function(){return h(t)}))}var L,F=L||(L={});F.Error="error",F.Warning="warning";var U=function(){function t(t,n,r){var u=void 0===r?{}:r;r=u.message;var i=u.groupName;u=u.key,this.key=null,this.id=e(),this.severity=L.Error,this.status=W,this.fieldName=t,this.testFn=n,i&&(this.groupName=i),r&&(this.message=r),u&&(this.key=u)}return t.prototype.run=function(){try{var t=this.testFn()}catch(n){t=n,void 0===this.message&&r(t)&&(this.message=n),t=!1}return!1===t&&this.fail(),t},t.prototype.setStatus=function(t){this.isFinalStatus()&&t!==H||(this.status=t)},t.prototype.warns=function(){return this.severity===L.Warning},t.prototype.setPending=function(){this.setStatus(D)},t.prototype.fail=function(){this.setStatus(this.warns()?X:G)},t.prototype.done=function(){this.isFinalStatus()||this.setStatus(w)},t.prototype.warn=function(){this.severity=L.Warning},t.prototype.isFinalStatus=function(){return this.hasFailures()||this.isCanceled()||this.isPassing()},t.prototype.skip=function(t){this.isPending()&&!t||this.setStatus(P)},t.prototype.cancel=function(){this.setStatus(x),O()},t.prototype.reset=function(){this.status=W,O()},t.prototype.omit=function(){this.setStatus(H)},t.prototype.valueOf=function(){return!this.isFailing()},t.prototype.hasFailures=function(){return this.isFailing()||this.isWarning()},t.prototype.isNonActionable=function(){return this.isSkipped()||this.isOmitted()||this.isCanceled()},t.prototype.isPending=function(){return this.statusEquals(D)},t.prototype.isTested=function(){return this.hasFailures()||this.isPassing()},t.prototype.isOmitted=function(){return this.statusEquals(H)},t.prototype.isUntested=function(){return this.statusEquals(W)},t.prototype.isFailing=function(){return this.statusEquals(G)},t.prototype.isCanceled=function(){return this.statusEquals(x)},t.prototype.isSkipped=function(){return this.statusEquals(P)},t.prototype.isPassing=function(){return this.statusEquals(w)},t.prototype.isWarning=function(){return this.statusEquals(X)},t.prototype.statusEquals=function(t){return this.status===t},t}(),W="UNTESTED",P="SKIPPED",G="FAILED",X="WARNING",w="PASSING",D="PENDING",x="CANCELED",H="OMITTED";function K(t,n){if(!t)throw n instanceof String?n.valueOf():Error(n?l(n):n)}function M(t){function n(t,n,u){return r.references.push(),e(t,l(n,u)),function(){return[r.references[t],function(n){return e(t,l(n,r.references[t]))}]}}function e(n,e){var i=r.references[n];r.references[n]=e,f(n=u[n][1])&&n(e,i),f(t)&&t()}var r={references:[]},u=[];return{registerStateKey:function(t,e){var r=u.length;return u.push([t,e]),n(r,t)},reset:function(){var t=r.references;r.references=[],u.forEach((function(e,r){return n(r,e[0],t[r])}))}}}function j(t,n){var e=n.suiteId;return n=n.suiteName,{optionalFields:t.registerStateKey((function(){return{}})),suiteId:t.registerStateKey(e),suiteName:t.registerStateKey(n),testCallbacks:t.registerStateKey((function(){return{fieldCallbacks:{},doneCallbacks:[]}})),testObjects:t.registerStateKey((function(t){return{prev:t?t.current:[],current:[]}}))}}function q(t){return null==t}function B(t){setTimeout((function(){throw Error(t)}),0)}function V(){return S.useX().testCursor.getCursor()}function Y(){return S.useX().testCursor.next()}function J(t,n){t=void 0===(t=t.type)?m.DEFAULT:t,K(f(n));var e={current:{},prev:{}},r=V();return S.run({isolate:{type:t,keys:e}},(function(){S.useX().testCursor.addLevel(),e.prev=function(){var t=T()[0].prev;return[].concat(E(t,V())).reduce((function(t,n){return n instanceof U&&!q(n.key)?(t[n.key]=n,t):t}),{})}(),A((function(t){return E(t,r)[d(r)]=[],t}));var t=n();return S.useX().testCursor.removeLevel(),Y(),t}))}var z,Q=z||(z={});Q.WARNINGS="warnings",Q.ERRORS="errors";var Z,$=Z||(Z={});function tt(t){return!t||("number"==typeof t?0===t:Object.prototype.hasOwnProperty.call(t,"length")?o(t.length,0):"object"==typeof t&&o((t=Object.keys(t)).length,0))}$.ERROR_COUNT="errorCount",$.WARN_COUNT="warnCount";var nt=u(tt);function et(t,n){return!(!n||t.fieldName!==n)}function rt(t,n){return k().some((function(e){return e.hasFailures()?n&&!et(e,n)?e=!1:(e=e.warns(),e=t===z.WARNINGS==!!e):e=!1,e}))}function ut(t){return!!function(t){return!!t&&k().some((function(n){return n.fieldName===t&&n.isOmitted()}))}(t)||!rt(z.ERRORS,t)&&(!tt(k())&&!function(t){var n=b().optionalFields()[0];return nt(_().filter((function(e){return!(t&&!et(e,t))&&!0!==n[e.fieldName]})))}(t)&&function(t){var n=k(),e=b().optionalFields()[0];return n.every((function(n){return!(!t||et(n,t))||(!0===e[n.fieldName]||n.isTested()||n.isOmitted())}))}(t))}function it(){var t=S.useX().summary;return K(t),t}function ot(t,n){function e(t){i[t===z.ERRORS?Z.ERROR_COUNT:Z.WARN_COUNT]++,u&&(i[t]=(i[t]||[]).concat(u))}var r=n.fieldName,u=n.message;t[r]=t[r]||g({errorCount:0,warnCount:0,testCount:0},{errors:[],warnings:[]});var i=t[r];return n.isNonActionable()||(t[r].testCount++,n.isFailing()?e(z.ERRORS):n.isWarning()&&e(z.WARNINGS)),i}function st(t,n,e){var r;return(null===(r=null==t?void 0:t[e])||void 0===r?void 0:r[n])||[]}function at(t,n){var e,r={};for(e in t)r[e]=t[e][n]||[];return r}function ct(t){return lt(z.ERRORS,t)}function ft(t){return lt(z.WARNINGS,t)}function lt(t,n){var e=it().tests;return n?st(e,t,n):at(e,t)}function pt(t,n){return vt(t,z.ERRORS,n)}function dt(t,n){return vt(t,z.WARNINGS,n)}function vt(t,n,e){return t=it().groups[t],e?st(t,n,e):at(t,n)}function ht(t){return gt(Z.ERROR_COUNT,t)}function Et(t){return gt(Z.WARN_COUNT,t)}function gt(t,n){var e,r=it();return s(n?null===(e=r.tests[n])||void 0===e?void 0:e[t]:r[t],0)}function Nt(t,n){return yt(z.ERRORS,t,n)}function mt(t,n){return yt(z.WARNINGS,t,n)}function yt(t,n,e){var r,u,i=it();if(t=t===z.ERRORS?Z.ERROR_COUNT:Z.WARN_COUNT,!(n=i.groups[n]))return!1;if(e)return s(null===(r=n[e])||void 0===r?void 0:r[t],0);for(var o in n)if(s(null===(u=n[o])||void 0===u?void 0:u[t],0))return!0;return!1}function Rt(t){var n,e=it();return t?!(null===(n=e.tests[t])||void 0===n||!n.valid):e.valid}var Ct=a(1);function St(){var t=k(),n={stateRef:b()};return Ct([t],S.bind(n,(function(){var t=function(){var t=k(),n=g({errorCount:0,warnCount:0,testCount:0},{groups:{},tests:{},valid:!1});return t.reduce((function(t,n){var e=t.tests;e[n.fieldName]=ot(e,n),e[n.fieldName].valid=!1!==e[n.fieldName].valid&&ut(n.fieldName),e=t.groups;var r=n.groupName;return r&&(e[r]=e[r]||{},e[r][n.fieldName]=ot(e[r],n)),t}),n),n.valid=ut(),function(t){for(var n in t.tests)t.errorCount+=t.tests[n].errorCount,t.warnCount+=t.tests[n].warnCount,t.testCount+=t.tests[n].testCount;return t}(n)}(),n=b().suiteName()[0],e={summary:t};return g(t,{getErrors:S.bind(e,ct),getErrorsByGroup:S.bind(e,pt),getWarnings:S.bind(e,ft),getWarningsByGroup:S.bind(e,dt),hasErrors:S.bind(e,ht),hasErrorsByGroup:S.bind(e,Nt),hasWarnings:S.bind(e,Et),hasWarningsByGroup:S.bind(e,mt),isValid:S.bind(e,Rt),suiteName:n})})))}function bt(t){var n=_();return!tt(n)&&(t?n.some((function(n){return et(n,t)})):nt(n))}var Tt=a(20);function Ot(){var t=k(),n={stateRef:b()};return Tt([t],S.bind(n,(function(){return g({},St(),{done:S.bind(n,It)})})))}function At(t,n,e){return!(f(t)&&(!n||e.tests[n]&&!tt(e.tests[n].testCount)))}function _t(t){return!(bt()&&(!t||bt(t)))}function It(){function t(){return r(St())}for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];var r=(n=n.reverse())[0];return n=n[1],e=Ot(),At(r,n,e)?e:_t(n)?(t(),e):(kt(t,n),e)}function kt(t,n){(0,b().testCallbacks()[1])((function(e){return n?e.fieldCallbacks[n]=(e.fieldCallbacks[n]||[]).concat(t):e.doneCallbacks.push(t),e}))}function Lt(t){return t.forEach((function(t){return t()}))}function Ft(){var t=function(){var t={};return{emit:function(n,e){(t[n]||[]).forEach((function(t){t(e)}))},on:function(n,e){return t[n]=(t[n]||[]).concat(e),{off:function(){t[n]=(t[n]||[]).filter((function(t){return t!==e}))}}}}}();return t.on(Wt.TEST_COMPLETED,(function(n){if(!n.isCanceled()){n.done(),n=n.fieldName;var e=b().testCallbacks()[0].fieldCallbacks;n&&!bt(n)&&Array.isArray(e[n])&&Lt(e[n]),bt()||t.emit(Wt.ALL_RUNNING_TESTS_FINISHED)}})),t.on(Wt.SUITE_CALLBACK_DONE_RUNNING,(function(){!function(){var t=b().optionalFields()[0];if(!tt(t)){var n={};A((function(e){return v(e,(function(e){if(Object.prototype.hasOwnProperty.call(n,e.fieldName))n[e.fieldName]&&e.omit();else{var r=t[e.fieldName];f(r)&&(n[e.fieldName]=r(),n[e.fieldName]&&e.omit())}return e}))}))}}()})),t.on(Wt.ALL_RUNNING_TESTS_FINISHED,(function(){Lt(b().testCallbacks()[0].doneCallbacks)})),t.on(Wt.REMOVE_FIELD,(function(t){k().forEach((function(n){et(n,t)&&(n.cancel(),function(t){A((function(n){return v(n,(function(n){return t!==n?n:null}))}))}(n))}))})),t.on(Wt.RESET_FIELD,(function(t){k().forEach((function(n){et(n,t)&&n.reset()}))})),t}function Ut(){var t=S.useX();return K(t.bus),t.bus}var Wt,Pt=Wt||(Wt={});function Gt(t){return wt(0,"tests",t)}function Xt(t){return wt(1,"tests",t)}function wt(t,n,e){var u=S.useX("hook called outside of a running suite.");e&&[].concat(e).forEach((function(e){r(e)&&(u.exclusion[n][e]=0===t)}))}function Dt(t){for(var n in t)if(!0===t[n])return!0;return!1}function xt(){var t,n=S.useX().exclusion;for(t in n.groups)if(n.groups[t])return!0;return!1}function Ht(t){return"Wrong arguments passed to group. Group ".concat(t,".")}function Kt(t,n,e){if(e||2===arguments.length)for(var r,u=0,i=n.length;u<i;u++)!r&&u in n||(r||(r=Array.prototype.slice.call(n,0,u)),r[u]=n[u]);return t.concat(r||Array.prototype.slice.call(n))}function Mt(t){var n=t.asyncTest,e=t.message;if(n&&f(n.then)){var u=Ut().emit,i=b(),o=S.bind({stateRef:i},(function(){O(),u(Wt.TEST_COMPLETED,t)}));i=S.bind({stateRef:i},(function(n){t.isCanceled()||(t.message=r(n)?n:e,t.fail(),o())}));try{n.then(o,i)}catch(t){i()}}}function jt(t){var n=T()[0].prev;if(tt(n))return qt(t),t;var e=V();if(n=E(n,e)[d(e)],!q(t.key)){n=t.key,(e=S.useX().isolate.keys.prev[n])&&(t=e),e=t;var r=S.useX().isolate.keys.current;return q(r[n])?r[n]=e:B('Encountered the same test key "'.concat(n,"\" twice. This may lead to tests overriding each other's results, or to tests being unexpectedly omitted.")),qt(t),t}return!nt(e=n)||e.fieldName===t.fieldName&&e.groupName===t.groupName||(S.useX().isolate.type===m.EACH||B("Vest Critical Error: Tests called in different order than previous run.\n expected: ".concat(n.fieldName,"\n received: ").concat(t.fieldName,'\n This can happen on one of two reasons:\n 1. You\'re using if/else statements to conditionally select tests. Instead, use "skipWhen".\n 2. You are iterating over a list of tests, and their order changed. Use "each" and a custom key prop so that Vest retains their state.')),function(){var t=T(),n=t[1],e=t[0].prev;t=E(e,V());var r=S.useX().testCursor.cursorAt();t.splice(r),n((function(t){return{prev:e,current:t.current}}))}(),n=null),qt(t=p(n,t)),t}function qt(t){var n=V();A((function(e){return E(e,n)[d(n)]=t,e}))}function Bt(t){var n=R.EAGER;if(n=!(S.useX().mode[0]!==n||!rt(z.ERRORS,t.fieldName)))return t.skip(),jt(t),Y(),t;if(n=jt(t),S.useX().omitted)return n.omit(),Y(),n;if(function(t){var n=t.fieldName;if(t=t.groupName,S.useX().skipped)return!0;var e=S.useX(),r=e.exclusion;e=e.inclusion;var u=r.tests,i=u[n];if(!1===i)return!0;if(i=!0===i,t){var o=S.useX().exclusion.groups;if(o=Object.prototype.hasOwnProperty.call(o,t)?!1===o[t]:xt())return!0;if(!0===r.groups[t])return!(i||!Dt(u)&&!1!==u[n])}return!!(t=!!xt()&&!t)||!i&&!!Dt(u)&&!l(e[n])}(t))return n.skip(!!S.useX().skipped),Y(),n;if(t!==n&&n.fieldName===t.fieldName&&n.groupName===t.groupName&&n.isPending()&&n.cancel(),qt(t),Y(),t.isUntested()){n=Ut();var e=function(t){return S.run({currentTest:t},(function(){return t.run()}))}(t);try{e&&f(e.then)?(t.asyncTest=e,t.setPending(),Mt(t)):n.emit(Wt.TEST_COMPLETED,t)}catch(n){throw Error("Unexpected error encountered during test registration.\n Test Object: ".concat(JSON.stringify(t),".\n Error: ").concat(n,"."))}}else(n=t.asyncTest)&&f(n.then)&&(t.setPending(),Mt(t));return t}function Vt(t){for(var n=[],e=1;e<arguments.length;e++)n[e-1]=arguments[e];var u=f(n[1])?n:Kt([void 0],n,!0);n=u[0],e=u[1],u=u[2],K(r(t),Jt("fieldName","string")),K(f(e),Jt("Test callback","function"));var i=S.useX();return Bt(n=new U(t,e,{message:n,groupName:i.groupName,key:u}))}Pt.TEST_COMPLETED="test_completed",Pt.ALL_RUNNING_TESTS_FINISHED="all_running_tests_finished",Pt.REMOVE_FIELD="remove_field",Pt.RESET_FIELD="reset_field",Pt.SUITE_CALLBACK_DONE_RUNNING="suite_callback_done_running",Gt.group=function(t){return wt(0,"groups",t)},Xt.group=function(t){return wt(1,"groups",t)};var Yt=g(Vt,{memo:function(t){var n=a(10);return function(e){for(var r=[],u=1;u<arguments.length;u++)r[u-1]=arguments[u];u=S.useX().testCursor.cursorAt();var i=(r=r.reverse())[0],o=r[1],s=r[2];return u=[b().suiteId()[0],e,u].concat(i),null===(r=n.get(u))?n(u,(function(){return t(e,s,o)})):r[1].isCanceled()?(n.invalidate(u),n(u,(function(){return t(e,s,o)}))):Bt(r[1])}}(Vt)});function Jt(t,n){return"Incompatible params passed to test function. ".concat(t," must be a ").concat(n)}var zt="4.3.2";function Qt(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var r=(t=t.reverse())[0];t=t[1],K(f(r),"vest.create: Expected callback to be a function.");var u=Ft(),i=M();return t={stateRef:j(i,{suiteId:e(),suiteName:t}),bus:u},g(S.bind(t,(function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return i.reset(),J({type:m.SUITE},(function(){r.apply(void 0,t)})),u.emit(Wt.SUITE_CALLBACK_DONE_RUNNING),Ot()})),{get:S.bind(t,St),remove:S.bind(t,(function(t){u.emit(Wt.REMOVE_FIELD,t)})),reset:i.reset,resetField:S.bind(t,(function(t){u.emit(Wt.RESET_FIELD,t)}))})}function Zt(t,n){K(f(n),"each callback must be a function"),J({type:m.EACH},(function(){t.forEach((function(t,e){n(t,e)}))}))}function $t(){var t=R.EAGER;S.useX().mode[0]=t}function tn(t,n){K(r(t),Ht("name must be a string")),K(f(n),Ht("callback must be a function")),J({type:m.GROUP},(function(){S.run({groupName:t},n)}))}function nn(t){var n=S.useX(),e=n.inclusion;return n=n.exclusion,K(r(t)),e[t]=p(n.tests[t],!0),{when:function(n){var e=S.useX(),u=e.exclusion;e.inclusion[t]=function(){return Object.prototype.hasOwnProperty.call(u.tests,t)?p(u.tests[t],!0):r(n)?!!u.tests[n]:l(n,l(St))}}}}function en(t,n){J({type:m.OMIT_WHEN},(function(){S.run({omitted:!!S.useX().omitted||l(t,l(St))},(function(){return n()}))}))}function rn(t){(0,b().optionalFields()[1])((function(n){if(Array.isArray(t)||r(t))[].concat(t).forEach((function(t){n[t]=!0}));else for(var e in t)n[e]=t[e];return n}))}function un(t,n){J({type:m.SKIP_WHEN},(function(){S.run({skipped:!!S.useX().skipped||l(t,l(St))},(function(){return n()}))}))}function on(){var t=S.useX("warn hook called outside of a running suite.");K(t.currentTest,"warn called outside of a test."),t.currentTest.warn()}export{zt as VERSION,S as context,Qt as create,Zt as each,$t as eager,tn as group,nn as include,en as omitWhen,Gt as only,rn as optional,Xt as skip,un as skipWhen,Yt as test,on as warn};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((n="undefined"!=typeof globalThis?globalThis:n||self).vest={})}(this,(function(n){function t(n){return"function"==typeof n}function e(n){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return!n.apply(void 0,t)}}function r(n){return null===n}function u(n){return void 0===n}function i(n){return null===n||u(n)}function o(n){return String(n)===n}function s(n,t){return o(n)&&o(t)&&n.endsWith(t)}function a(n,t){return n===t}function c(n){var t=Number(n);return!(isNaN(parseFloat(String(n)))||isNaN(Number(n))||!isFinite(t))}function f(n,t){return c(n)&&c(t)&&Number(n)>Number(t)}function l(n,t){return c(n)&&c(t)&&Number(n)===Number(t)}function p(n,t){return l(n,t)||f(n,t)}function d(n){return!!Array.isArray(n)}function v(n,t){return!!(d(t)||o(t)&&o(n))&&-1!==t.indexOf(n)}function h(n,t){return c(n)&&c(t)&&Number(n)<Number(t)}function N(n,t){return l(n,t)||h(n,t)}function g(n,t,e){return p(n,t)&&N(n,e)}function E(n){return i(n)||o(n)&&!n.trim()}function m(n){return!!n===n}function y(n){return"number"==typeof n}function R(n,t){return l(n.length,t)}function b(n){return!n||(y(n)?0===n:Object.prototype.hasOwnProperty.call(n,"length")?R(n,0):"object"==typeof n&&R(Object.keys(n),0))}function O(n,t){return n in t}function S(n){return Number.isNaN(n)}function T(n){return f(n,0)}function C(n){return!!n}function _(n,t){if(i(t))return!1;for(var e in t)if(t[e]===n)return!0;return!1}function I(n,t){return f(n.length,t)}function A(n,t){return t instanceof RegExp?t.test(n):!!o(t)&&new RegExp(t).test(n)}function k(n,t){return o(n)&&o(t)&&n.startsWith(t)}function L(n){for(var e in Rt){var r=Rt[e];t(r)&&n(e,r)}}function w(n){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];return t(n)?n.apply(void 0,e):n}function W(n,t){var e;return null!==(e=w(n))&&void 0!==e?e:t}function F(n,t){if(!n)throw t instanceof String?t.valueOf():Error(t?w(t):t)}function P(n){function t(t,u){var i,o,s=e();return t=$n({},s||{},null!==(i=w(n,t,s))&&void 0!==i?i:t),i=r.ctx=Object.freeze(t),r.ancestry.unshift(i),u=u(i),r.ancestry.shift(),r.ctx=null!==(o=r.ancestry[0])&&void 0!==o?o:null,u}function e(){return r.ctx}var r={ancestry:[]};return{bind:function(n,e){return function(){for(var r=[],u=0;u<arguments.length;u++)r[u]=arguments[u];return t(n,(function(){return e.apply(void 0,r)}))}},run:t,use:e,useX:function(n){return F(r.ctx,W(n,"Context was used after it was closed")),r.ctx}}}function U(){return null}function x(n,t,e){if(e||2===arguments.length)for(var r,u=0,i=t.length;u<i;u++)!r&&u in t||(r||(r=Array.prototype.slice.call(t,0,u)),r[u]=t[u]);return n.concat(r||Array.prototype.slice.call(t))}function X(){try{return t(Proxy)}catch(n){return!1}}function G(n,t){return n={pass:n},t&&(n.message=t),n}function D(n,t,e){for(var r=[],u=3;u<arguments.length;u++)r[u-3]=arguments[u];return F(m(n)||n&&m(n.pass),"Incorrect return value for rule: "+JSON.stringify(n)),m(n)?G(n):G(n.pass,w.apply(void 0,x([n.message,t,e],r,!1)))}function q(n){function t(t,e,r){return function(){for(var u=[],i=0;i<arguments.length;i++)u[i]=arguments[i];return F((i=D.apply(void 0,x([bt.run({value:n},(function(){return e.apply(void 0,x([n],u,!1))})),r,n],u,!1))).pass,b(i.message)?"enforce/".concat(r," failed with ").concat(JSON.stringify(n)):new String(i.message)),t}}var e={};if(!X())return L((function(n,r){e[n]=t(e,r,n)})),e;var r=new Proxy(e,{get:function(n,e){if(n=Rt[e])return t(r,n,e)}});return r}function K(n,t){function e(n){r=!0,u=n}for(var r=!1,u=null,i=0;i<n.length;i++)if(t(n[i],e,i),r)return u}function j(n){var t,e=[];return function n(r){return function(){for(var u=[],i=0;i<arguments.length;i++)u[i]=arguments[i];var o=Rt[r];e.push((function(n){return D.apply(void 0,x([o.apply(void 0,x([n],u,!1)),r,n],u,!1))}));var s={run:function(n){return W(K(e,(function(e,r){var u,i=bt.run({value:n},(function(){return e(n)}));i.pass||r(G(!!i.pass,null!==(u=w(t,n,i.message))&&void 0!==u?u:i.message))})),G(!0))},test:function(n){return s.run(n).pass},message:function(n){return n&&(t=n),s}};return X()?s=new Proxy(s,{get:function(t,e){return Rt[e]?n(e):t[e]}}):(L((function(t){s[t]=n(t)})),s)}}(n)}function B(n){function t(n){return e.findIndex((function(t){var e=t[0];return R(n,e.length)&&n.every((function(n,t){return n===e[t]}))}))}void 0===n&&(n=1);var e=[],r=function(t,u){var i=r.get(t);return i?i[1]:(u=u(),e.unshift([t.concat(),u]),I(e,n)&&(e.length=n),u)};return r.invalidate=function(n){-1<(n=t(n))&&e.splice(n,1)},r.get=function(n){return e[t(n)]||null},r}function H(n){return(n=[].concat(n))[n.length-1]}function M(n,t){for(var e=[],r=0;r<n.length;r++){var u=n[r];d(u)?e.push(M(u,t)):(u=t(u),nt(u)&&e.push(u))}return e}function V(n){return[].concat(n).reduce((function(n,t){return d(t)?n.concat(V(t)):[].concat(n).concat(t)}),[])}function J(n,t){var e=0;for(t=t.slice(0,-1);e<t.length;e++){var r=t[e];n[r]=W(n[r],[]),n=n[r]}return n}function Y(){function n(){t=[0]}var t=[];return n(),{addLevel:function(){t.push(0)},cursorAt:function(){return H(t)},getCursor:function(){return[].concat(t)},next:function(){return t[t.length-1]++,H(t)},removeLevel:function(){t.pop()},reset:n}}function z(){return Ct.useX().stateRef}function Q(){return z().testObjects()}function Z(){(0,Q()[1])((function(n){return{prev:n.prev,current:[].concat(n.current)}}))}function $(n){(0,Q()[1])((function(t){return{prev:t.prev,current:[].concat(n(t.current))}}))}function nn(){return V(M(Q()[0].current,(function(n){return n.isPending()?n:null})))}function tn(){var n=Q()[0].current;return _t([n],(function(){return V(n)}))}function en(n){function e(n,t,e){return u.references.push(),r(n,w(t,e)),function(){return[u.references[n],function(t){return r(n,w(t,u.references[n]))}]}}function r(e,r){var o=u.references[e];u.references[e]=r,t(e=i[e][1])&&e(r,o),t(n)&&n()}var u={references:[]},i=[];return{registerStateKey:function(n,t){var r=i.length;return i.push([n,t]),e(r,n)},reset:function(){var n=u.references;u.references=[],i.forEach((function(t,r){return e(r,t[0],n[r])}))}}}function rn(n,t){var e=t.suiteId;return t=t.suiteName,{optionalFields:n.registerStateKey((function(){return{}})),suiteId:n.registerStateKey(e),suiteName:n.registerStateKey(t),testCallbacks:n.registerStateKey((function(){return{fieldCallbacks:{},doneCallbacks:[]}})),testObjects:n.registerStateKey((function(n){return{prev:n?n.current:[],current:[]}}))}}function un(n){setTimeout((function(){throw Error(n)}),0)}function on(){return Ct.useX().testCursor.getCursor()}function sn(){return Ct.useX().testCursor.next()}function an(n,e){n=void 0===(n=n.type)?zn.DEFAULT:n,F(t(e));var r={current:{},prev:{}},u=on();return Ct.run({isolate:{type:n,keys:r}},(function(){Ct.useX().testCursor.addLevel(),r.prev=function(){var n=Q()[0].prev;return[].concat(J(n,on())).reduce((function(n,t){return t instanceof kt&&!i(t.key)?(n[t.key]=t,n):n}),{})}(),$((function(n){return J(n,u)[H(u)]=[],n}));var n=e();return Ct.useX().testCursor.removeLevel(),sn(),n}))}function cn(n,t){return!(!t||n.fieldName!==t)}function fn(n,t){return tn().some((function(e){return e.hasFailures()?t&&!cn(e,t)?e=!1:(e=e.warns(),e=n===It.WARNINGS==!!e):e=!1,e}))}function ln(n){return!!function(n){return!!n&&tn().some((function(t){return t.fieldName===n&&t.isOmitted()}))}(n)||!fn(It.ERRORS,n)&&(!b(tn())&&!function(n){var t=z().optionalFields()[0];return vt(nn().filter((function(e){return!(n&&!cn(e,n))&&!0!==t[e.fieldName]})))}(n)&&function(n){var t=tn(),e=z().optionalFields()[0];return t.every((function(t){return!(!n||cn(t,n))||(!0===e[t.fieldName]||t.isTested()||t.isOmitted())}))}(n))}function pn(){var n=Ct.useX().summary;return F(n),n}function dn(n,t){function e(n){i[n===It.ERRORS?At.ERROR_COUNT:At.WARN_COUNT]++,u&&(i[n]=(i[n]||[]).concat(u))}var r=t.fieldName,u=t.message;n[r]=n[r]||$n({errorCount:0,warnCount:0,testCount:0},{errors:[],warnings:[]});var i=n[r];return t.isNonActionable()||(n[r].testCount++,t.isFailing()?e(It.ERRORS):t.isWarning()&&e(It.WARNINGS)),i}function vn(n,t,e){var r;return(null===(r=null==n?void 0:n[e])||void 0===r?void 0:r[t])||[]}function hn(n,t){var e,r={};for(e in n)r[e]=n[e][t]||[];return r}function Nn(n){return En(It.ERRORS,n)}function gn(n){return En(It.WARNINGS,n)}function En(n,t){var e=pn().tests;return t?vn(e,n,t):hn(e,n)}function mn(n,t){return Rn(n,It.ERRORS,t)}function yn(n,t){return Rn(n,It.WARNINGS,t)}function Rn(n,t,e){return n=pn().groups[n],e?vn(n,t,e):hn(n,t)}function bn(n){return Sn(At.ERROR_COUNT,n)}function On(n){return Sn(At.WARN_COUNT,n)}function Sn(n,t){var e,r=pn();return T(t?null===(e=r.tests[t])||void 0===e?void 0:e[n]:r[n])}function Tn(n,t){return _n(It.ERRORS,n,t)}function Cn(n,t){return _n(It.WARNINGS,n,t)}function _n(n,t,e){var r,u,i=pn();if(n=n===It.ERRORS?At.ERROR_COUNT:At.WARN_COUNT,!(t=i.groups[t]))return!1;if(e)return T(null===(r=t[e])||void 0===r?void 0:r[n]);for(var o in t)if(T(null===(u=t[o])||void 0===u?void 0:u[n]))return!0;return!1}function In(n){var t,e=pn();return n?!(null===(t=e.tests[n])||void 0===t||!t.valid):e.valid}function An(){var n=tn(),t={stateRef:z()};return Dt([n],Ct.bind(t,(function(){var n=function(){var n=tn(),t=$n({errorCount:0,warnCount:0,testCount:0},{groups:{},tests:{},valid:!1});return n.reduce((function(n,t){var e=n.tests;e[t.fieldName]=dn(e,t),e[t.fieldName].valid=!1!==e[t.fieldName].valid&&ln(t.fieldName),e=n.groups;var r=t.groupName;return r&&(e[r]=e[r]||{},e[r][t.fieldName]=dn(e[r],t)),n}),t),t.valid=ln(),function(n){for(var t in n.tests)n.errorCount+=n.tests[t].errorCount,n.warnCount+=n.tests[t].warnCount,n.testCount+=n.tests[t].testCount;return n}(t)}(),t=z().suiteName()[0],e={summary:n};return $n(n,{getErrors:Ct.bind(e,Nn),getErrorsByGroup:Ct.bind(e,mn),getWarnings:Ct.bind(e,gn),getWarningsByGroup:Ct.bind(e,yn),hasErrors:Ct.bind(e,bn),hasErrorsByGroup:Ct.bind(e,Tn),hasWarnings:Ct.bind(e,On),hasWarningsByGroup:Ct.bind(e,Cn),isValid:Ct.bind(e,In),suiteName:t})})))}function kn(n){var t=nn();return!b(t)&&(n?t.some((function(t){return cn(t,n)})):vt(t))}function Ln(){var n=tn(),t={stateRef:z()};return qt([n],Ct.bind(t,(function(){return $n({},An(),{done:Ct.bind(t,Kt)})})))}function wn(n,e,r){return!(t(n)&&(!e||r.tests[e]&&!b(r.tests[e].testCount)))}function Wn(n){return!(kn()&&(!n||kn(n)))}function Fn(n,t){(0,z().testCallbacks()[1])((function(e){return t?e.fieldCallbacks[t]=(e.fieldCallbacks[t]||[]).concat(n):e.doneCallbacks.push(n),e}))}function Pn(n){return n.forEach((function(n){return n()}))}function Un(){var n=function(){var n={};return{emit:function(t,e){(n[t]||[]).forEach((function(n){n(e)}))},on:function(t,e){return n[t]=(n[t]||[]).concat(e),{off:function(){n[t]=(n[t]||[]).filter((function(n){return n!==e}))}}}}}();return n.on(Gt.TEST_COMPLETED,(function(t){if(!t.isCanceled()){t.done(),t=t.fieldName;var e=z().testCallbacks()[0].fieldCallbacks;t&&!kn(t)&&d(e[t])&&Pn(e[t]),kn()||n.emit(Gt.ALL_RUNNING_TESTS_FINISHED)}})),n.on(Gt.SUITE_CALLBACK_DONE_RUNNING,(function(){!function(){var n=z().optionalFields()[0];if(!b(n)){var e={};$((function(r){return M(r,(function(r){if(Object.prototype.hasOwnProperty.call(e,r.fieldName))e[r.fieldName]&&r.omit();else{var u=n[r.fieldName];t(u)&&(e[r.fieldName]=u(),e[r.fieldName]&&r.omit())}return r}))}))}}()})),n.on(Gt.ALL_RUNNING_TESTS_FINISHED,(function(){Pn(z().testCallbacks()[0].doneCallbacks)})),n.on(Gt.REMOVE_FIELD,(function(n){tn().forEach((function(t){cn(t,n)&&(t.cancel(),function(n){$((function(t){return M(t,(function(t){return n!==t?t:null}))}))}(t))}))})),n.on(Gt.RESET_FIELD,(function(n){tn().forEach((function(t){cn(t,n)&&t.reset()}))})),n}function xn(){var n=Ct.useX();return F(n.bus),n.bus}function Xn(n){return Dn(0,"tests",n)}function Gn(n){return Dn(1,"tests",n)}function Dn(n,t,e){var r=Ct.useX("hook called outside of a running suite.");e&&[].concat(e).forEach((function(e){o(e)&&(r.exclusion[t][e]=0===n)}))}function qn(n){for(var t in n)if(!0===n[t])return!0;return!1}function Kn(){var n,t=Ct.useX().exclusion;for(n in t.groups)if(t.groups[n])return!0;return!1}function jn(n){return"Wrong arguments passed to group. Group ".concat(n,".")}function Bn(n){var e=n.asyncTest,r=n.message;if(e&&t(e.then)){var u=xn().emit,i=z(),s=Ct.bind({stateRef:i},(function(){Z(),u(Gt.TEST_COMPLETED,n)}));i=Ct.bind({stateRef:i},(function(t){n.isCanceled()||(n.message=o(t)?t:r,n.fail(),s())}));try{e.then(s,i)}catch(n){i()}}}function Hn(n){var t=Q()[0].prev;if(b(t))return Mn(n),n;var e=on();if(t=J(t,e)[H(e)],!i(n.key)){t=n.key,(e=Ct.useX().isolate.keys.prev[t])&&(n=e),e=n;var r=Ct.useX().isolate.keys.current;return i(r[t])?r[t]=e:un('Encountered the same test key "'.concat(t,"\" twice. This may lead to tests overriding each other's results, or to tests being unexpectedly omitted.")),Mn(n),n}return!vt(e=t)||e.fieldName===n.fieldName&&e.groupName===n.groupName||(Ct.useX().isolate.type===zn.EACH||un("Vest Critical Error: Tests called in different order than previous run.\n expected: ".concat(t.fieldName,"\n received: ").concat(n.fieldName,'\n This can happen on one of two reasons:\n 1. You\'re using if/else statements to conditionally select tests. Instead, use "skipWhen".\n 2. You are iterating over a list of tests, and their order changed. Use "each" and a custom key prop so that Vest retains their state.')),function(){var n=Q(),t=n[1],e=n[0].prev;n=J(e,on());var r=Ct.useX().testCursor.cursorAt();n.splice(r),t((function(n){return{prev:e,current:n.current}}))}(),t=null),Mn(n=W(t,n)),n}function Mn(n){var t=on();$((function(e){return J(e,t)[H(t)]=n,e}))}function Vn(n){var e=Zn.EAGER;if(e=!(Ct.useX().mode[0]!==e||!fn(It.ERRORS,n.fieldName)))return n.skip(),Hn(n),sn(),n;if(e=Hn(n),Ct.useX().omitted)return e.omit(),sn(),e;if(function(n){var t=n.fieldName;if(n=n.groupName,Ct.useX().skipped)return!0;var e=Ct.useX(),r=e.exclusion;e=e.inclusion;var u=r.tests,i=u[t];if(!1===i)return!0;if(i=!0===i,n){var o=Ct.useX().exclusion.groups;if(o=Object.prototype.hasOwnProperty.call(o,n)?!1===o[n]:Kn())return!0;if(!0===r.groups[n])return!(i||!qn(u)&&!1!==u[t])}return!!(n=!!Kn()&&!n)||!i&&!!qn(u)&&!w(e[t])}(n))return e.skip(!!Ct.useX().skipped),sn(),e;if(n!==e&&e.fieldName===n.fieldName&&e.groupName===n.groupName&&e.isPending()&&e.cancel(),Mn(n),sn(),n.isUntested()){e=xn();var r=function(n){return Ct.run({currentTest:n},(function(){return n.run()}))}(n);try{r&&t(r.then)?(n.asyncTest=r,n.setPending(),Bn(n)):e.emit(Gt.TEST_COMPLETED,n)}catch(t){throw Error("Unexpected error encountered during test registration.\n Test Object: ".concat(JSON.stringify(n),".\n Error: ").concat(t,"."))}}else(e=n.asyncTest)&&t(e.then)&&(n.setPending(),Bn(n));return n}function Jn(n){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];var u=t(e[1])?e:x([void 0],e,!0);e=u[0],r=u[1],u=u[2],F(o(n),Yn("fieldName","string")),F(t(r),Yn("Test callback","function"));var i=Ct.useX();return Vn(e=new kt(n,r,{message:e,groupName:i.groupName,key:u}))}function Yn(n,t){return"Incompatible params passed to test function. ".concat(n," must be a ").concat(t)}var zn,Qn,Zn,$n=Object.assign,nt=e(r),tt=e(u),et=e(i),rt=e(s),ut=e(a),it=e(c),ot=e(l),st=e(d),at=e(v),ct=e(g),ft=e(E),lt=e(m),pt=e(y),dt=e(R),vt=e(b),ht=e(O),Nt=e(S),gt=e(o),Et=e(C),mt=e(_),yt=e(A),Rt={condition:function(n,t){try{return t(n)}catch(n){return!1}},doesNotEndWith:rt,doesNotStartWith:e(k),endsWith:s,equals:a,greaterThan:f,greaterThanOrEquals:p,gt:f,gte:p,inside:v,isArray:d,isBetween:g,isBlank:E,isBoolean:m,isEmpty:b,isEven:function(n){return!!c(n)&&0==n%2},isFalsy:Et,isKeyOf:O,isNaN:S,isNegative:function(n){return h(n,0)},isNotArray:st,isNotBetween:ct,isNotBlank:ft,isNotBoolean:lt,isNotEmpty:vt,isNotKeyOf:ht,isNotNaN:Nt,isNotNull:nt,isNotNullish:et,isNotNumber:pt,isNotNumeric:it,isNotString:gt,isNotUndefined:tt,isNotValueOf:mt,isNull:r,isNullish:i,isNumber:y,isNumeric:c,isOdd:function(n){return!!c(n)&&0!=n%2},isPositive:T,isString:o,isTruthy:C,isUndefined:u,isValueOf:_,lengthEquals:R,lengthNotEquals:dt,lessThan:h,lessThanOrEquals:N,longerThan:I,longerThanOrEquals:function(n,t){return p(n.length,t)},lt:h,lte:N,matches:A,notEquals:ut,notInside:at,notMatches:yt,numberEquals:l,numberNotEquals:ot,shorterThan:function(n,t){return h(n.length,t)},shorterThanOrEquals:function(n,t){return N(n.length,t)},startsWith:k},bt=P((function(n,t){var e={value:n.value,meta:n.meta||{}};return t?n.set?$n(e,{parent:function(){return t?{value:t.value,meta:t.meta,parent:t.parent}:t}}):t:$n(e,{parent:U})})),Ot=function(){function n(){if(!X())return L((function(n){t[n]=j(n)})),$n(q,t)}var t={context:function(){return bt.useX()},extend:function(t){$n(Rt,t),n()}};return n(),new Proxy($n(q,t),{get:function(n,t){return t in n?n[t]:Rt[t]?j(t):void 0}})}(),St=(Qn=0,function(){return"".concat(Qn++)});!function(n){n[n.DEFAULT=0]="DEFAULT",n[n.SUITE=1]="SUITE",n[n.EACH=2]="EACH",n[n.SKIP_WHEN=3]="SKIP_WHEN",n[n.OMIT_WHEN=4]="OMIT_WHEN",n[n.GROUP=5]="GROUP"}(zn||(zn={})),function(n){n[n.ALL=0]="ALL",n[n.EAGER=1]="EAGER"}(Zn||(Zn={}));var Tt,Ct=P((function(n,t){return t?null:$n({},{exclusion:{tests:{},groups:{}},inclusion:{},isolate:{type:zn.DEFAULT,keys:{current:{},prev:{}}},mode:[Zn.ALL],testCursor:Y()},n)})),_t=B();!function(n){n.Error="error",n.Warning="warning"}(Tt||(Tt={}));var It,At,kt=function(){function n(n,t,e){var r=void 0===e?{}:e;e=r.message;var u=r.groupName;r=r.key,this.key=null,this.id=St(),this.severity=Tt.Error,this.status=Lt,this.fieldName=n,this.testFn=t,u&&(this.groupName=u),e&&(this.message=e),r&&(this.key=r)}return n.prototype.run=function(){try{var n=this.testFn()}catch(t){n=t,u(this.message)&&o(n)&&(this.message=t),n=!1}return!1===n&&this.fail(),n},n.prototype.setStatus=function(n){this.isFinalStatus()&&n!==Xt||(this.status=n)},n.prototype.warns=function(){return this.severity===Tt.Warning},n.prototype.setPending=function(){this.setStatus(Ut)},n.prototype.fail=function(){this.setStatus(this.warns()?Ft:Wt)},n.prototype.done=function(){this.isFinalStatus()||this.setStatus(Pt)},n.prototype.warn=function(){this.severity=Tt.Warning},n.prototype.isFinalStatus=function(){return this.hasFailures()||this.isCanceled()||this.isPassing()},n.prototype.skip=function(n){this.isPending()&&!n||this.setStatus(wt)},n.prototype.cancel=function(){this.setStatus(xt),Z()},n.prototype.reset=function(){this.status=Lt,Z()},n.prototype.omit=function(){this.setStatus(Xt)},n.prototype.valueOf=function(){return!this.isFailing()},n.prototype.hasFailures=function(){return this.isFailing()||this.isWarning()},n.prototype.isNonActionable=function(){return this.isSkipped()||this.isOmitted()||this.isCanceled()},n.prototype.isPending=function(){return this.statusEquals(Ut)},n.prototype.isTested=function(){return this.hasFailures()||this.isPassing()},n.prototype.isOmitted=function(){return this.statusEquals(Xt)},n.prototype.isUntested=function(){return this.statusEquals(Lt)},n.prototype.isFailing=function(){return this.statusEquals(Wt)},n.prototype.isCanceled=function(){return this.statusEquals(xt)},n.prototype.isSkipped=function(){return this.statusEquals(wt)},n.prototype.isPassing=function(){return this.statusEquals(Pt)},n.prototype.isWarning=function(){return this.statusEquals(Ft)},n.prototype.statusEquals=function(n){return this.status===n},n}(),Lt="UNTESTED",wt="SKIPPED",Wt="FAILED",Ft="WARNING",Pt="PASSING",Ut="PENDING",xt="CANCELED",Xt="OMITTED";!function(n){n.WARNINGS="warnings",n.ERRORS="errors"}(It||(It={})),function(n){n.ERROR_COUNT="errorCount",n.WARN_COUNT="warnCount"}(At||(At={}));var Gt,Dt=B(1),qt=B(20),Kt=function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];var e=(n=n.reverse())[0];if(n=n[1],t=Ln(),wn(e,n,t))return t;var r=function(){return e(An())};return Wn(n)?(r(),t):(Fn(r,n),t)};!function(n){n.TEST_COMPLETED="test_completed",n.ALL_RUNNING_TESTS_FINISHED="all_running_tests_finished",n.REMOVE_FIELD="remove_field",n.RESET_FIELD="reset_field",n.SUITE_CALLBACK_DONE_RUNNING="suite_callback_done_running"}(Gt||(Gt={})),Xn.group=function(n){return Dn(0,"groups",n)},Gn.group=function(n){return Dn(1,"groups",n)};var jt=$n(Jn,{memo:function(n){var t=B(10);return function(e){for(var r=[],u=1;u<arguments.length;u++)r[u-1]=arguments[u];u=Ct.useX().testCursor.cursorAt();var i=(r=r.reverse())[0],o=r[1],s=r[2];return u=[z().suiteId()[0],e,u].concat(i),null===(r=t.get(u))?t(u,(function(){return n(e,s,o)})):r[1].isCanceled()?(t.invalidate(u),t(u,(function(){return n(e,s,o)}))):Vn(r[1])}}(Jn)});n.VERSION="4.3.2-dev-2805e3",n.context=Ct,n.create=function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];var r=(n=n.reverse())[0];n=n[1],F(t(r),"vest.create: Expected callback to be a function.");var u=Un(),i=en();return n={stateRef:rn(i,{suiteId:St(),suiteName:n}),bus:u},$n(Ct.bind(n,(function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return i.reset(),an({type:zn.SUITE},(function(){r.apply(void 0,n)})),u.emit(Gt.SUITE_CALLBACK_DONE_RUNNING),Ln()})),{get:Ct.bind(n,An),remove:Ct.bind(n,(function(n){u.emit(Gt.REMOVE_FIELD,n)})),reset:i.reset,resetField:Ct.bind(n,(function(n){u.emit(Gt.RESET_FIELD,n)}))})},n.each=function(n,e){F(t(e),"each callback must be a function"),an({type:zn.EACH},(function(){n.forEach((function(n,t){e(n,t)}))}))},n.eager=function(){var n=Zn.EAGER;Ct.useX().mode[0]=n},n.enforce=Ot,n.group=function(n,e){F(o(n),jn("name must be a string")),F(t(e),jn("callback must be a function")),an({type:zn.GROUP},(function(){Ct.run({groupName:n},e)}))},n.include=function(n){var t=Ct.useX(),e=t.inclusion;return t=t.exclusion,F(o(n)),e[n]=W(t.tests[n],!0),{when:function(t){var e=Ct.useX(),r=e.exclusion;e.inclusion[n]=function(){return Object.prototype.hasOwnProperty.call(r.tests,n)?W(r.tests[n],!0):o(t)?!!r.tests[t]:w(t,w(An))}}}},n.omitWhen=function(n,t){an({type:zn.OMIT_WHEN},(function(){Ct.run({omitted:!!Ct.useX().omitted||w(n,w(An))},(function(){return t()}))}))},n.only=Xn,n.optional=function(n){(0,z().optionalFields()[1])((function(t){if(d(n)||o(n))[].concat(n).forEach((function(n){t[n]=!0}));else for(var e in n)t[e]=n[e];return t}))},n.skip=Gn,n.skipWhen=function(n,t){an({type:zn.SKIP_WHEN},(function(){Ct.run({skipped:!!Ct.useX().skipped||w(n,w(An))},(function(){return t()}))}))},n.test=jt,n.warn=function(){var n=Ct.useX("warn hook called outside of a running suite.");F(n.currentTest,"warn called outside of a test."),n.currentTest.warn()},Object.defineProperty(n,"__esModule",{value:!0})}));
|
|
1
|
+
"use strict";!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((n="undefined"!=typeof globalThis?globalThis:n||self).vest={})}(this,(function(n){function t(n){return"function"==typeof n}function e(n){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return!n.apply(void 0,t)}}function r(n){return null===n}function u(n){return void 0===n}function i(n){return null===n||u(n)}function o(n){return String(n)===n}function s(n,t){return o(n)&&o(t)&&n.endsWith(t)}function a(n,t){return n===t}function c(n){var t=Number(n);return!(isNaN(parseFloat(String(n)))||isNaN(Number(n))||!isFinite(t))}function f(n,t){return c(n)&&c(t)&&Number(n)>Number(t)}function l(n,t){return c(n)&&c(t)&&Number(n)===Number(t)}function p(n,t){return l(n,t)||f(n,t)}function d(n){return!!Array.isArray(n)}function v(n,t){return!!(d(t)||o(t)&&o(n))&&-1!==t.indexOf(n)}function h(n,t){return c(n)&&c(t)&&Number(n)<Number(t)}function N(n,t){return l(n,t)||h(n,t)}function g(n,t,e){return p(n,t)&&N(n,e)}function E(n){return i(n)||o(n)&&!n.trim()}function m(n){return!!n===n}function y(n){return"number"==typeof n}function R(n,t){return l(n.length,t)}function b(n){return!n||(y(n)?0===n:Object.prototype.hasOwnProperty.call(n,"length")?R(n,0):"object"==typeof n&&R(Object.keys(n),0))}function O(n,t){return n in t}function S(n){return Number.isNaN(n)}function T(n){return f(n,0)}function C(n){return!!n}function _(n,t){if(i(t))return!1;for(var e in t)if(t[e]===n)return!0;return!1}function I(n,t){return f(n.length,t)}function A(n,t){return t instanceof RegExp?t.test(n):!!o(t)&&new RegExp(t).test(n)}function k(n,t){return o(n)&&o(t)&&n.startsWith(t)}function L(n){for(var e in Rt){var r=Rt[e];t(r)&&n(e,r)}}function w(n){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];return t(n)?n.apply(void 0,e):n}function W(n,t){var e;return null!==(e=w(n))&&void 0!==e?e:t}function F(n,t){if(!n)throw t instanceof String?t.valueOf():Error(t?w(t):t)}function P(n){function t(t,u){var i,o,s=e();return t=$n({},s||{},null!==(i=w(n,t,s))&&void 0!==i?i:t),i=r.ctx=Object.freeze(t),r.ancestry.unshift(i),u=u(i),r.ancestry.shift(),r.ctx=null!==(o=r.ancestry[0])&&void 0!==o?o:null,u}function e(){return r.ctx}var r={ancestry:[]};return{bind:function(n,e){return function(){for(var r=[],u=0;u<arguments.length;u++)r[u]=arguments[u];return t(n,(function(){return e.apply(void 0,r)}))}},run:t,use:e,useX:function(n){return F(r.ctx,W(n,"Context was used after it was closed")),r.ctx}}}function U(){return null}function x(n,t,e){if(e||2===arguments.length)for(var r,u=0,i=t.length;u<i;u++)!r&&u in t||(r||(r=Array.prototype.slice.call(t,0,u)),r[u]=t[u]);return n.concat(r||Array.prototype.slice.call(t))}function X(){try{return t(Proxy)}catch(n){return!1}}function G(n,t){return n={pass:n},t&&(n.message=t),n}function D(n,t,e){for(var r=[],u=3;u<arguments.length;u++)r[u-3]=arguments[u];return F(m(n)||n&&m(n.pass),"Incorrect return value for rule: "+JSON.stringify(n)),m(n)?G(n):G(n.pass,w.apply(void 0,x([n.message,t,e],r,!1)))}function q(n){function t(t,e,r){return function(){for(var u=[],i=0;i<arguments.length;i++)u[i]=arguments[i];return F((i=D.apply(void 0,x([bt.run({value:n},(function(){return e.apply(void 0,x([n],u,!1))})),r,n],u,!1))).pass,b(i.message)?"enforce/".concat(r," failed with ").concat(JSON.stringify(n)):new String(i.message)),t}}var e={};if(!X())return L((function(n,r){e[n]=t(e,r,n)})),e;var r=new Proxy(e,{get:function(n,e){if(n=Rt[e])return t(r,n,e)}});return r}function K(n,t){function e(n){r=!0,u=n}for(var r=!1,u=null,i=0;i<n.length;i++)if(t(n[i],e,i),r)return u}function j(n){var t,e=[];return function n(r){return function(){for(var u=[],i=0;i<arguments.length;i++)u[i]=arguments[i];var o=Rt[r];e.push((function(n){return D.apply(void 0,x([o.apply(void 0,x([n],u,!1)),r,n],u,!1))}));var s={run:function(n){return W(K(e,(function(e,r){var u,i=bt.run({value:n},(function(){return e(n)}));i.pass||r(G(!!i.pass,null!==(u=w(t,n,i.message))&&void 0!==u?u:i.message))})),G(!0))},test:function(n){return s.run(n).pass},message:function(n){return n&&(t=n),s}};return X()?s=new Proxy(s,{get:function(t,e){return Rt[e]?n(e):t[e]}}):(L((function(t){s[t]=n(t)})),s)}}(n)}function B(n){function t(n){return e.findIndex((function(t){var e=t[0];return R(n,e.length)&&n.every((function(n,t){return n===e[t]}))}))}void 0===n&&(n=1);var e=[],r=function(t,u){var i=r.get(t);return i?i[1]:(u=u(),e.unshift([t.concat(),u]),I(e,n)&&(e.length=n),u)};return r.invalidate=function(n){-1<(n=t(n))&&e.splice(n,1)},r.get=function(n){return e[t(n)]||null},r}function H(n){return(n=[].concat(n))[n.length-1]}function M(n,t){for(var e=[],r=0;r<n.length;r++){var u=n[r];d(u)?e.push(M(u,t)):(u=t(u),nt(u)&&e.push(u))}return e}function V(n){return[].concat(n).reduce((function(n,t){return d(t)?n.concat(V(t)):[].concat(n).concat(t)}),[])}function J(n,t){var e=0;for(t=t.slice(0,-1);e<t.length;e++){var r=t[e];n[r]=W(n[r],[]),n=n[r]}return n}function Y(){function n(){t=[0]}var t=[];return n(),{addLevel:function(){t.push(0)},cursorAt:function(){return H(t)},getCursor:function(){return[].concat(t)},next:function(){return t[t.length-1]++,H(t)},removeLevel:function(){t.pop()},reset:n}}function z(){return Ct.useX().stateRef}function Q(){return z().testObjects()}function Z(){(0,Q()[1])((function(n){return{prev:n.prev,current:[].concat(n.current)}}))}function $(n){(0,Q()[1])((function(t){return{prev:t.prev,current:[].concat(n(t.current))}}))}function nn(){return V(M(Q()[0].current,(function(n){return n.isPending()?n:null})))}function tn(){var n=Q()[0].current;return _t([n],(function(){return V(n)}))}function en(n){function e(n,t,e){return u.references.push(),r(n,w(t,e)),function(){return[u.references[n],function(t){return r(n,w(t,u.references[n]))}]}}function r(e,r){var o=u.references[e];u.references[e]=r,t(e=i[e][1])&&e(r,o),t(n)&&n()}var u={references:[]},i=[];return{registerStateKey:function(n,t){var r=i.length;return i.push([n,t]),e(r,n)},reset:function(){var n=u.references;u.references=[],i.forEach((function(t,r){return e(r,t[0],n[r])}))}}}function rn(n,t){var e=t.suiteId;return t=t.suiteName,{optionalFields:n.registerStateKey((function(){return{}})),suiteId:n.registerStateKey(e),suiteName:n.registerStateKey(t),testCallbacks:n.registerStateKey((function(){return{fieldCallbacks:{},doneCallbacks:[]}})),testObjects:n.registerStateKey((function(n){return{prev:n?n.current:[],current:[]}}))}}function un(n){setTimeout((function(){throw Error(n)}),0)}function on(){return Ct.useX().testCursor.getCursor()}function sn(){return Ct.useX().testCursor.next()}function an(n,e){n=void 0===(n=n.type)?zn.DEFAULT:n,F(t(e));var r={current:{},prev:{}},u=on();return Ct.run({isolate:{type:n,keys:r}},(function(){Ct.useX().testCursor.addLevel(),r.prev=function(){var n=Q()[0].prev;return[].concat(J(n,on())).reduce((function(n,t){return t instanceof kt&&!i(t.key)?(n[t.key]=t,n):n}),{})}(),$((function(n){return J(n,u)[H(u)]=[],n}));var n=e();return Ct.useX().testCursor.removeLevel(),sn(),n}))}function cn(n,t){return!(!t||n.fieldName!==t)}function fn(n,t){return tn().some((function(e){return e.hasFailures()?t&&!cn(e,t)?e=!1:(e=e.warns(),e=n===It.WARNINGS==!!e):e=!1,e}))}function ln(n){return!!function(n){return!!n&&tn().some((function(t){return t.fieldName===n&&t.isOmitted()}))}(n)||!fn(It.ERRORS,n)&&(!b(tn())&&!function(n){var t=z().optionalFields()[0];return vt(nn().filter((function(e){return!(n&&!cn(e,n))&&!0!==t[e.fieldName]})))}(n)&&function(n){var t=tn(),e=z().optionalFields()[0];return t.every((function(t){return!(!n||cn(t,n))||(!0===e[t.fieldName]||t.isTested()||t.isOmitted())}))}(n))}function pn(){var n=Ct.useX().summary;return F(n),n}function dn(n,t){function e(n){i[n===It.ERRORS?At.ERROR_COUNT:At.WARN_COUNT]++,u&&(i[n]=(i[n]||[]).concat(u))}var r=t.fieldName,u=t.message;n[r]=n[r]||$n({errorCount:0,warnCount:0,testCount:0},{errors:[],warnings:[]});var i=n[r];return t.isNonActionable()||(n[r].testCount++,t.isFailing()?e(It.ERRORS):t.isWarning()&&e(It.WARNINGS)),i}function vn(n,t,e){var r;return(null===(r=null==n?void 0:n[e])||void 0===r?void 0:r[t])||[]}function hn(n,t){var e,r={};for(e in n)r[e]=n[e][t]||[];return r}function Nn(n){return En(It.ERRORS,n)}function gn(n){return En(It.WARNINGS,n)}function En(n,t){var e=pn().tests;return t?vn(e,n,t):hn(e,n)}function mn(n,t){return Rn(n,It.ERRORS,t)}function yn(n,t){return Rn(n,It.WARNINGS,t)}function Rn(n,t,e){return n=pn().groups[n],e?vn(n,t,e):hn(n,t)}function bn(n){return Sn(At.ERROR_COUNT,n)}function On(n){return Sn(At.WARN_COUNT,n)}function Sn(n,t){var e,r=pn();return T(t?null===(e=r.tests[t])||void 0===e?void 0:e[n]:r[n])}function Tn(n,t){return _n(It.ERRORS,n,t)}function Cn(n,t){return _n(It.WARNINGS,n,t)}function _n(n,t,e){var r,u,i=pn();if(n=n===It.ERRORS?At.ERROR_COUNT:At.WARN_COUNT,!(t=i.groups[t]))return!1;if(e)return T(null===(r=t[e])||void 0===r?void 0:r[n]);for(var o in t)if(T(null===(u=t[o])||void 0===u?void 0:u[n]))return!0;return!1}function In(n){var t,e=pn();return n?!(null===(t=e.tests[n])||void 0===t||!t.valid):e.valid}function An(){var n=tn(),t={stateRef:z()};return Dt([n],Ct.bind(t,(function(){var n=function(){var n=tn(),t=$n({errorCount:0,warnCount:0,testCount:0},{groups:{},tests:{},valid:!1});return n.reduce((function(n,t){var e=n.tests;e[t.fieldName]=dn(e,t),e[t.fieldName].valid=!1!==e[t.fieldName].valid&&ln(t.fieldName),e=n.groups;var r=t.groupName;return r&&(e[r]=e[r]||{},e[r][t.fieldName]=dn(e[r],t)),n}),t),t.valid=ln(),function(n){for(var t in n.tests)n.errorCount+=n.tests[t].errorCount,n.warnCount+=n.tests[t].warnCount,n.testCount+=n.tests[t].testCount;return n}(t)}(),t=z().suiteName()[0],e={summary:n};return $n(n,{getErrors:Ct.bind(e,Nn),getErrorsByGroup:Ct.bind(e,mn),getWarnings:Ct.bind(e,gn),getWarningsByGroup:Ct.bind(e,yn),hasErrors:Ct.bind(e,bn),hasErrorsByGroup:Ct.bind(e,Tn),hasWarnings:Ct.bind(e,On),hasWarningsByGroup:Ct.bind(e,Cn),isValid:Ct.bind(e,In),suiteName:t})})))}function kn(n){var t=nn();return!b(t)&&(n?t.some((function(t){return cn(t,n)})):vt(t))}function Ln(){var n=tn(),t={stateRef:z()};return qt([n],Ct.bind(t,(function(){return $n({},An(),{done:Ct.bind(t,Kt)})})))}function wn(n,e,r){return!(t(n)&&(!e||r.tests[e]&&!b(r.tests[e].testCount)))}function Wn(n){return!(kn()&&(!n||kn(n)))}function Fn(n,t){(0,z().testCallbacks()[1])((function(e){return t?e.fieldCallbacks[t]=(e.fieldCallbacks[t]||[]).concat(n):e.doneCallbacks.push(n),e}))}function Pn(n){return n.forEach((function(n){return n()}))}function Un(){var n=function(){var n={};return{emit:function(t,e){(n[t]||[]).forEach((function(n){n(e)}))},on:function(t,e){return n[t]=(n[t]||[]).concat(e),{off:function(){n[t]=(n[t]||[]).filter((function(n){return n!==e}))}}}}}();return n.on(Gt.TEST_COMPLETED,(function(t){if(!t.isCanceled()){t.done(),t=t.fieldName;var e=z().testCallbacks()[0].fieldCallbacks;t&&!kn(t)&&d(e[t])&&Pn(e[t]),kn()||n.emit(Gt.ALL_RUNNING_TESTS_FINISHED)}})),n.on(Gt.SUITE_CALLBACK_DONE_RUNNING,(function(){!function(){var n=z().optionalFields()[0];if(!b(n)){var e={};$((function(r){return M(r,(function(r){if(Object.prototype.hasOwnProperty.call(e,r.fieldName))e[r.fieldName]&&r.omit();else{var u=n[r.fieldName];t(u)&&(e[r.fieldName]=u(),e[r.fieldName]&&r.omit())}return r}))}))}}()})),n.on(Gt.ALL_RUNNING_TESTS_FINISHED,(function(){Pn(z().testCallbacks()[0].doneCallbacks)})),n.on(Gt.REMOVE_FIELD,(function(n){tn().forEach((function(t){cn(t,n)&&(t.cancel(),function(n){$((function(t){return M(t,(function(t){return n!==t?t:null}))}))}(t))}))})),n.on(Gt.RESET_FIELD,(function(n){tn().forEach((function(t){cn(t,n)&&t.reset()}))})),n}function xn(){var n=Ct.useX();return F(n.bus),n.bus}function Xn(n){return Dn(0,"tests",n)}function Gn(n){return Dn(1,"tests",n)}function Dn(n,t,e){var r=Ct.useX("hook called outside of a running suite.");e&&[].concat(e).forEach((function(e){o(e)&&(r.exclusion[t][e]=0===n)}))}function qn(n){for(var t in n)if(!0===n[t])return!0;return!1}function Kn(){var n,t=Ct.useX().exclusion;for(n in t.groups)if(t.groups[n])return!0;return!1}function jn(n){return"Wrong arguments passed to group. Group ".concat(n,".")}function Bn(n){var e=n.asyncTest,r=n.message;if(e&&t(e.then)){var u=xn().emit,i=z(),s=Ct.bind({stateRef:i},(function(){Z(),u(Gt.TEST_COMPLETED,n)}));i=Ct.bind({stateRef:i},(function(t){n.isCanceled()||(n.message=o(t)?t:r,n.fail(),s())}));try{e.then(s,i)}catch(n){i()}}}function Hn(n){var t=Q()[0].prev;if(b(t))return Mn(n),n;var e=on();if(t=J(t,e)[H(e)],!i(n.key)){t=n.key,(e=Ct.useX().isolate.keys.prev[t])&&(n=e),e=n;var r=Ct.useX().isolate.keys.current;return i(r[t])?r[t]=e:un('Encountered the same test key "'.concat(t,"\" twice. This may lead to tests overriding each other's results, or to tests being unexpectedly omitted.")),Mn(n),n}return!vt(e=t)||e.fieldName===n.fieldName&&e.groupName===n.groupName||(Ct.useX().isolate.type===zn.EACH||un("Vest Critical Error: Tests called in different order than previous run.\n expected: ".concat(t.fieldName,"\n received: ").concat(n.fieldName,'\n This can happen on one of two reasons:\n 1. You\'re using if/else statements to conditionally select tests. Instead, use "skipWhen".\n 2. You are iterating over a list of tests, and their order changed. Use "each" and a custom key prop so that Vest retains their state.')),function(){var n=Q(),t=n[1],e=n[0].prev;n=J(e,on());var r=Ct.useX().testCursor.cursorAt();n.splice(r),t((function(n){return{prev:e,current:n.current}}))}(),t=null),Mn(n=W(t,n)),n}function Mn(n){var t=on();$((function(e){return J(e,t)[H(t)]=n,e}))}function Vn(n){var e=Zn.EAGER;if(e=!(Ct.useX().mode[0]!==e||!fn(It.ERRORS,n.fieldName)))return n.skip(),Hn(n),sn(),n;if(e=Hn(n),Ct.useX().omitted)return e.omit(),sn(),e;if(function(n){var t=n.fieldName;if(n=n.groupName,Ct.useX().skipped)return!0;var e=Ct.useX(),r=e.exclusion;e=e.inclusion;var u=r.tests,i=u[t];if(!1===i)return!0;if(i=!0===i,n){var o=Ct.useX().exclusion.groups;if(o=Object.prototype.hasOwnProperty.call(o,n)?!1===o[n]:Kn())return!0;if(!0===r.groups[n])return!(i||!qn(u)&&!1!==u[t])}return!!(n=!!Kn()&&!n)||!i&&!!qn(u)&&!w(e[t])}(n))return e.skip(!!Ct.useX().skipped),sn(),e;if(n!==e&&e.fieldName===n.fieldName&&e.groupName===n.groupName&&e.isPending()&&e.cancel(),Mn(n),sn(),n.isUntested()){e=xn();var r=function(n){return Ct.run({currentTest:n},(function(){return n.run()}))}(n);try{r&&t(r.then)?(n.asyncTest=r,n.setPending(),Bn(n)):e.emit(Gt.TEST_COMPLETED,n)}catch(t){throw Error("Unexpected error encountered during test registration.\n Test Object: ".concat(JSON.stringify(n),".\n Error: ").concat(t,"."))}}else(e=n.asyncTest)&&t(e.then)&&(n.setPending(),Bn(n));return n}function Jn(n){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];var u=t(e[1])?e:x([void 0],e,!0);e=u[0],r=u[1],u=u[2],F(o(n),Yn("fieldName","string")),F(t(r),Yn("Test callback","function"));var i=Ct.useX();return Vn(e=new kt(n,r,{message:e,groupName:i.groupName,key:u}))}function Yn(n,t){return"Incompatible params passed to test function. ".concat(n," must be a ").concat(t)}var zn,Qn,Zn,$n=Object.assign,nt=e(r),tt=e(u),et=e(i),rt=e(s),ut=e(a),it=e(c),ot=e(l),st=e(d),at=e(v),ct=e(g),ft=e(E),lt=e(m),pt=e(y),dt=e(R),vt=e(b),ht=e(O),Nt=e(S),gt=e(o),Et=e(C),mt=e(_),yt=e(A),Rt={condition:function(n,t){try{return t(n)}catch(n){return!1}},doesNotEndWith:rt,doesNotStartWith:e(k),endsWith:s,equals:a,greaterThan:f,greaterThanOrEquals:p,gt:f,gte:p,inside:v,isArray:d,isBetween:g,isBlank:E,isBoolean:m,isEmpty:b,isEven:function(n){return!!c(n)&&0==n%2},isFalsy:Et,isKeyOf:O,isNaN:S,isNegative:function(n){return h(n,0)},isNotArray:st,isNotBetween:ct,isNotBlank:ft,isNotBoolean:lt,isNotEmpty:vt,isNotKeyOf:ht,isNotNaN:Nt,isNotNull:nt,isNotNullish:et,isNotNumber:pt,isNotNumeric:it,isNotString:gt,isNotUndefined:tt,isNotValueOf:mt,isNull:r,isNullish:i,isNumber:y,isNumeric:c,isOdd:function(n){return!!c(n)&&0!=n%2},isPositive:T,isString:o,isTruthy:C,isUndefined:u,isValueOf:_,lengthEquals:R,lengthNotEquals:dt,lessThan:h,lessThanOrEquals:N,longerThan:I,longerThanOrEquals:function(n,t){return p(n.length,t)},lt:h,lte:N,matches:A,notEquals:ut,notInside:at,notMatches:yt,numberEquals:l,numberNotEquals:ot,shorterThan:function(n,t){return h(n.length,t)},shorterThanOrEquals:function(n,t){return N(n.length,t)},startsWith:k},bt=P((function(n,t){var e={value:n.value,meta:n.meta||{}};return t?n.set?$n(e,{parent:function(){return t?{value:t.value,meta:t.meta,parent:t.parent}:t}}):t:$n(e,{parent:U})})),Ot=function(){function n(){if(!X())return L((function(n){t[n]=j(n)})),$n(q,t)}var t={context:function(){return bt.useX()},extend:function(t){$n(Rt,t),n()}};return n(),new Proxy($n(q,t),{get:function(n,t){return t in n?n[t]:Rt[t]?j(t):void 0}})}(),St=(Qn=0,function(){return"".concat(Qn++)});!function(n){n[n.DEFAULT=0]="DEFAULT",n[n.SUITE=1]="SUITE",n[n.EACH=2]="EACH",n[n.SKIP_WHEN=3]="SKIP_WHEN",n[n.OMIT_WHEN=4]="OMIT_WHEN",n[n.GROUP=5]="GROUP"}(zn||(zn={})),function(n){n[n.ALL=0]="ALL",n[n.EAGER=1]="EAGER"}(Zn||(Zn={}));var Tt,Ct=P((function(n,t){return t?null:$n({},{exclusion:{tests:{},groups:{}},inclusion:{},isolate:{type:zn.DEFAULT,keys:{current:{},prev:{}}},mode:[Zn.ALL],testCursor:Y()},n)})),_t=B();!function(n){n.Error="error",n.Warning="warning"}(Tt||(Tt={}));var It,At,kt=function(){function n(n,t,e){var r=void 0===e?{}:e;e=r.message;var u=r.groupName;r=r.key,this.key=null,this.id=St(),this.severity=Tt.Error,this.status=Lt,this.fieldName=n,this.testFn=t,u&&(this.groupName=u),e&&(this.message=e),r&&(this.key=r)}return n.prototype.run=function(){try{var n=this.testFn()}catch(t){n=t,u(this.message)&&o(n)&&(this.message=t),n=!1}return!1===n&&this.fail(),n},n.prototype.setStatus=function(n){this.isFinalStatus()&&n!==Xt||(this.status=n)},n.prototype.warns=function(){return this.severity===Tt.Warning},n.prototype.setPending=function(){this.setStatus(Ut)},n.prototype.fail=function(){this.setStatus(this.warns()?Ft:Wt)},n.prototype.done=function(){this.isFinalStatus()||this.setStatus(Pt)},n.prototype.warn=function(){this.severity=Tt.Warning},n.prototype.isFinalStatus=function(){return this.hasFailures()||this.isCanceled()||this.isPassing()},n.prototype.skip=function(n){this.isPending()&&!n||this.setStatus(wt)},n.prototype.cancel=function(){this.setStatus(xt),Z()},n.prototype.reset=function(){this.status=Lt,Z()},n.prototype.omit=function(){this.setStatus(Xt)},n.prototype.valueOf=function(){return!this.isFailing()},n.prototype.hasFailures=function(){return this.isFailing()||this.isWarning()},n.prototype.isNonActionable=function(){return this.isSkipped()||this.isOmitted()||this.isCanceled()},n.prototype.isPending=function(){return this.statusEquals(Ut)},n.prototype.isTested=function(){return this.hasFailures()||this.isPassing()},n.prototype.isOmitted=function(){return this.statusEquals(Xt)},n.prototype.isUntested=function(){return this.statusEquals(Lt)},n.prototype.isFailing=function(){return this.statusEquals(Wt)},n.prototype.isCanceled=function(){return this.statusEquals(xt)},n.prototype.isSkipped=function(){return this.statusEquals(wt)},n.prototype.isPassing=function(){return this.statusEquals(Pt)},n.prototype.isWarning=function(){return this.statusEquals(Ft)},n.prototype.statusEquals=function(n){return this.status===n},n}(),Lt="UNTESTED",wt="SKIPPED",Wt="FAILED",Ft="WARNING",Pt="PASSING",Ut="PENDING",xt="CANCELED",Xt="OMITTED";!function(n){n.WARNINGS="warnings",n.ERRORS="errors"}(It||(It={})),function(n){n.ERROR_COUNT="errorCount",n.WARN_COUNT="warnCount"}(At||(At={}));var Gt,Dt=B(1),qt=B(20),Kt=function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];var e=(n=n.reverse())[0];if(n=n[1],t=Ln(),wn(e,n,t))return t;var r=function(){return e(An())};return Wn(n)?(r(),t):(Fn(r,n),t)};!function(n){n.TEST_COMPLETED="test_completed",n.ALL_RUNNING_TESTS_FINISHED="all_running_tests_finished",n.REMOVE_FIELD="remove_field",n.RESET_FIELD="reset_field",n.SUITE_CALLBACK_DONE_RUNNING="suite_callback_done_running"}(Gt||(Gt={})),Xn.group=function(n){return Dn(0,"groups",n)},Gn.group=function(n){return Dn(1,"groups",n)};var jt=$n(Jn,{memo:function(n){var t=B(10);return function(e){for(var r=[],u=1;u<arguments.length;u++)r[u-1]=arguments[u];u=Ct.useX().testCursor.cursorAt();var i=(r=r.reverse())[0],o=r[1],s=r[2];return u=[z().suiteId()[0],e,u].concat(i),null===(r=t.get(u))?t(u,(function(){return n(e,s,o)})):r[1].isCanceled()?(t.invalidate(u),t(u,(function(){return n(e,s,o)}))):Vn(r[1])}}(Jn)});n.VERSION="4.3.2",n.context=Ct,n.create=function(){for(var n=[],e=0;e<arguments.length;e++)n[e]=arguments[e];var r=(n=n.reverse())[0];n=n[1],F(t(r),"vest.create: Expected callback to be a function.");var u=Un(),i=en();return n={stateRef:rn(i,{suiteId:St(),suiteName:n}),bus:u},$n(Ct.bind(n,(function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t];return i.reset(),an({type:zn.SUITE},(function(){r.apply(void 0,n)})),u.emit(Gt.SUITE_CALLBACK_DONE_RUNNING),Ln()})),{get:Ct.bind(n,An),remove:Ct.bind(n,(function(n){u.emit(Gt.REMOVE_FIELD,n)})),reset:i.reset,resetField:Ct.bind(n,(function(n){u.emit(Gt.RESET_FIELD,n)}))})},n.each=function(n,e){F(t(e),"each callback must be a function"),an({type:zn.EACH},(function(){n.forEach((function(n,t){e(n,t)}))}))},n.eager=function(){var n=Zn.EAGER;Ct.useX().mode[0]=n},n.enforce=Ot,n.group=function(n,e){F(o(n),jn("name must be a string")),F(t(e),jn("callback must be a function")),an({type:zn.GROUP},(function(){Ct.run({groupName:n},e)}))},n.include=function(n){var t=Ct.useX(),e=t.inclusion;return t=t.exclusion,F(o(n)),e[n]=W(t.tests[n],!0),{when:function(t){var e=Ct.useX(),r=e.exclusion;e.inclusion[n]=function(){return Object.prototype.hasOwnProperty.call(r.tests,n)?W(r.tests[n],!0):o(t)?!!r.tests[t]:w(t,w(An))}}}},n.omitWhen=function(n,t){an({type:zn.OMIT_WHEN},(function(){Ct.run({omitted:!!Ct.useX().omitted||w(n,w(An))},(function(){return t()}))}))},n.only=Xn,n.optional=function(n){(0,z().optionalFields()[1])((function(t){if(d(n)||o(n))[].concat(n).forEach((function(n){t[n]=!0}));else for(var e in n)t[e]=n[e];return t}))},n.skip=Gn,n.skipWhen=function(n,t){an({type:zn.SKIP_WHEN},(function(){Ct.run({skipped:!!Ct.useX().skipped||w(n,w(An))},(function(){return t()}))}))},n.test=jt,n.warn=function(){var n=Ct.useX("warn hook called outside of a running suite.");F(n.currentTest,"warn called outside of a test."),n.currentTest.warn()},Object.defineProperty(n,"__esModule",{value:!0})}));
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "4.3.2
|
|
2
|
+
"version": "4.3.2",
|
|
3
3
|
"license": "MIT",
|
|
4
4
|
"name": "vest",
|
|
5
5
|
"author": "ealush",
|
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
"url": "https://github.com/ealush/vest.git/issues"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"context": "
|
|
24
|
-
"n4s": "
|
|
23
|
+
"context": "^2.0.4",
|
|
24
|
+
"n4s": "^4.1.5"
|
|
25
25
|
},
|
|
26
26
|
"homepage": "https://vestjs.dev/",
|
|
27
27
|
"exports": {
|
package/types/vest.d.ts
CHANGED
|
@@ -353,6 +353,6 @@ declare const test: typeof testBase & {
|
|
|
353
353
|
* Sets a running test to warn only mode.
|
|
354
354
|
*/
|
|
355
355
|
declare function warn(): void;
|
|
356
|
-
declare const VERSION = "4.3.2
|
|
356
|
+
declare const VERSION = "4.3.2";
|
|
357
357
|
export { test, create, each, only, skip, warn, group, optional, skipWhen, omitWhen, enforce, VERSION, context, include, eager };
|
|
358
358
|
export type { SuiteResult, SuiteRunResult, SuiteSummary, VestTest, Suite };
|