From 91fb4967c255701bc4388fe33726c86e744760cd Mon Sep 17 00:00:00 2001 From: robert Date: Wed, 1 Sep 2021 13:29:44 -0700 Subject: [PATCH 1/2] sportsdataio team spread direction set by moneyline favorite --- .pnp.cjs | 80 ++++++++++++ ...types-npm-27.1.0-6cd20a4327-11899aba81.zip | Bin 0 -> 9960 bytes ...logger-npm-0.2.6-7670f88b66-d34bdaf68c.zip | Bin 0 -> 21311 bytes ...-util-npm-27.1.0-0391e5fd84-8f42fb7b44.zip | Bin 0 -> 27026 bytes ...-jest-npm-27.0.5-9336f30efa-fd53cdb6f9.zip | Bin 0 -> 82641 bytes packages/composites/augur/jest.config.js | 5 + packages/composites/augur/package.json | 3 + .../augur/src/dataProviders/sportsdataio.ts | 21 +++- .../augur/test/unit/calculations.test.ts | 81 +++++++++++++ yarn.lock | 114 ++++++++++++++---- 10 files changed, 280 insertions(+), 24 deletions(-) create mode 100644 .yarn/cache/@jest-types-npm-27.1.0-6cd20a4327-11899aba81.zip create mode 100644 .yarn/cache/bs-logger-npm-0.2.6-7670f88b66-d34bdaf68c.zip create mode 100644 .yarn/cache/jest-util-npm-27.1.0-0391e5fd84-8f42fb7b44.zip create mode 100644 .yarn/cache/ts-jest-npm-27.0.5-9336f30efa-fd53cdb6f9.zip create mode 100644 packages/composites/augur/jest.config.js create mode 100644 packages/composites/augur/test/unit/calculations.test.ts diff --git a/.pnp.cjs b/.pnp.cjs index eebef6adb7..59039cbeac 100755 --- a/.pnp.cjs +++ b/.pnp.cjs @@ -3342,6 +3342,7 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["@types/chai", "npm:4.2.21"], ["@types/chai-spies", "npm:1.0.3"], ["@types/express", "npm:4.17.13"], + ["@types/jest", "npm:27.0.1"], ["@types/luxon", "npm:1.27.1"], ["@types/mocha", "npm:9.0.0"], ["@types/node", "npm:14.17.12"], @@ -3358,10 +3359,12 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["hardhat-deploy", "virtual:894c7069f8aed076d3839d4f435fd974974296cafbca8e3355fff9d622c82029c9e05eeefeb9e2521cd2b7d885c2414fbaa802b29fb061bade185d5a82c32171#npm:0.8.11"], ["hardhat-docgen", "virtual:894c7069f8aed076d3839d4f435fd974974296cafbca8e3355fff9d622c82029c9e05eeefeb9e2521cd2b7d885c2414fbaa802b29fb061bade185d5a82c32171#npm:1.1.1"], ["hardhat-typechain", "virtual:894c7069f8aed076d3839d4f435fd974974296cafbca8e3355fff9d622c82029c9e05eeefeb9e2521cd2b7d885c2414fbaa802b29fb061bade185d5a82c32171#npm:0.3.5"], + ["jest", "virtual:532fdf4c5364453a90c37bb5287483fa331782ecfc41fc8a238ae4c5b9ecbfa540f6b4c584d3930549b0f5a0f6dd6c0d866dbdf0879570565599d51c3b649109#npm:27.0.6"], ["luxon", "npm:1.28.0"], ["mockdate", "npm:3.0.5"], ["resolve", "patch:resolve@npm%3A1.20.0#~builtin::version=1.20.0&hash=00b1ff"], ["rewire", "npm:5.0.0"], + ["ts-jest", "virtual:894c7069f8aed076d3839d4f435fd974974296cafbca8e3355fff9d622c82029c9e05eeefeb9e2521cd2b7d885c2414fbaa802b29fb061bade185d5a82c32171#npm:27.0.5"], ["tslib", "npm:2.3.1"], ["typechain", "npm:4.0.3"], ["typescript", "patch:typescript@npm%3A4.3.5#~builtin::version=4.3.5&hash=d8b4e7"] @@ -7200,6 +7203,18 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["chalk", "npm:4.1.2"] ], "linkType": "HARD", + }], + ["npm:27.1.0", { + "packageLocation": "./.yarn/cache/@jest-types-npm-27.1.0-6cd20a4327-11899aba81.zip/node_modules/@jest/types/", + "packageDependencies": [ + ["@jest/types", "npm:27.1.0"], + ["@types/istanbul-lib-coverage", "npm:2.0.3"], + ["@types/istanbul-reports", "npm:3.0.1"], + ["@types/node", "npm:16.7.2"], + ["@types/yargs", "npm:16.0.4"], + ["chalk", "npm:4.1.2"] + ], + "linkType": "HARD", }] ]], ["@jsdevtools/ono", [ @@ -11457,6 +11472,16 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["bs-logger", [ + ["npm:0.2.6", { + "packageLocation": "./.yarn/cache/bs-logger-npm-0.2.6-7670f88b66-d34bdaf68c.zip/node_modules/bs-logger/", + "packageDependencies": [ + ["bs-logger", "npm:0.2.6"], + ["fast-json-stable-stringify", "npm:2.1.0"] + ], + "linkType": "HARD", + }] + ]], ["bs58", [ ["npm:4.0.1", { "packageLocation": "./.yarn/cache/bs58-npm-4.0.1-8d2a7822b1-b3c5365bb9.zip/node_modules/bs58/", @@ -19131,6 +19156,19 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["picomatch", "npm:2.3.0"] ], "linkType": "HARD", + }], + ["npm:27.1.0", { + "packageLocation": "./.yarn/cache/jest-util-npm-27.1.0-0391e5fd84-8f42fb7b44.zip/node_modules/jest-util/", + "packageDependencies": [ + ["jest-util", "npm:27.1.0"], + ["@jest/types", "npm:27.1.0"], + ["@types/node", "npm:16.7.2"], + ["chalk", "npm:4.1.2"], + ["graceful-fs", "npm:4.2.8"], + ["is-ci", "npm:3.0.0"], + ["picomatch", "npm:2.3.0"] + ], + "linkType": "HARD", }] ]], ["jest-validate", [ @@ -27108,6 +27146,48 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD", }] ]], + ["ts-jest", [ + ["npm:27.0.5", { + "packageLocation": "./.yarn/cache/ts-jest-npm-27.0.5-9336f30efa-fd53cdb6f9.zip/node_modules/ts-jest/", + "packageDependencies": [ + ["ts-jest", "npm:27.0.5"] + ], + "linkType": "SOFT", + }], + ["virtual:894c7069f8aed076d3839d4f435fd974974296cafbca8e3355fff9d622c82029c9e05eeefeb9e2521cd2b7d885c2414fbaa802b29fb061bade185d5a82c32171#npm:27.0.5", { + "packageLocation": "./.yarn/__virtual__/ts-jest-virtual-b178d641ce/0/cache/ts-jest-npm-27.0.5-9336f30efa-fd53cdb6f9.zip/node_modules/ts-jest/", + "packageDependencies": [ + ["ts-jest", "virtual:894c7069f8aed076d3839d4f435fd974974296cafbca8e3355fff9d622c82029c9e05eeefeb9e2521cd2b7d885c2414fbaa802b29fb061bade185d5a82c32171#npm:27.0.5"], + ["@babel/core", null], + ["@types/babel-jest", null], + ["@types/babel__core", null], + ["@types/jest", "npm:27.0.1"], + ["@types/typescript", null], + ["babel-jest", null], + ["bs-logger", "npm:0.2.6"], + ["fast-json-stable-stringify", "npm:2.1.0"], + ["jest", "virtual:532fdf4c5364453a90c37bb5287483fa331782ecfc41fc8a238ae4c5b9ecbfa540f6b4c584d3930549b0f5a0f6dd6c0d866dbdf0879570565599d51c3b649109#npm:27.0.6"], + ["jest-util", "npm:27.1.0"], + ["json5", "npm:2.2.0"], + ["lodash", "npm:4.17.21"], + ["make-error", "npm:1.3.6"], + ["semver", "npm:7.3.5"], + ["typescript", "patch:typescript@npm%3A4.3.5#~builtin::version=4.3.5&hash=d8b4e7"], + ["yargs-parser", "npm:20.2.9"] + ], + "packagePeers": [ + "@babel/core", + "@types/babel-jest", + "@types/babel__core", + "@types/jest", + "@types/typescript", + "babel-jest", + "jest", + "typescript" + ], + "linkType": "HARD", + }] + ]], ["ts-node", [ ["npm:10.2.1", { "packageLocation": "./.yarn/cache/ts-node-npm-10.2.1-18dc22b42d-f37d2827a5.zip/node_modules/ts-node/", diff --git a/.yarn/cache/@jest-types-npm-27.1.0-6cd20a4327-11899aba81.zip b/.yarn/cache/@jest-types-npm-27.1.0-6cd20a4327-11899aba81.zip new file mode 100644 index 0000000000000000000000000000000000000000..1ec3d837c47a0b1d67dff2894eea7896ccbda959 GIT binary patch literal 9960 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 SdF+n<@EUzsO5kLVzy1%rT)aF0 literal 0 HcmV?d00001 diff --git a/.yarn/cache/bs-logger-npm-0.2.6-7670f88b66-d34bdaf68c.zip b/.yarn/cache/bs-logger-npm-0.2.6-7670f88b66-d34bdaf68c.zip new file mode 100644 index 0000000000000000000000000000000000000000..c741a6bf2ea15ae06a7df1cf670aecebe9d0ffb7 GIT binary patch literal 21311 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 z za87u5tPOhJIP(@J9|a1qriH^FAJNx5E3;IE_K1_>`%~fCs<*Sk*yf$}r(L5+ODuof1!TyqTSAL-%(7~~7lB8fGAI%|VLy(=j zaRNlQe#`yfmBF{ z%$y!{<=_sPT z`^-1fUncsw(H)?RtrbS}jaaIQa>w{5pC8NcpFD0GpMJAw6$;%v9CCU;b3x6)zcLV5 z(4Xf9x!*SWy14r>z5ghxrM>c;A`Tg3jz8mFOLc>6SXksy41RUNc+HWdBU77&w=)pq zgB?_zJ7lqyN#u{Bs_Prnlh{l29*~?I(;I49T*A@deSO3Em|`i z9_e#a@@&cFoPojNqRe5VE|AwuS1pP>@BvGgGLuH)jCBty%*?zGRR2)hIkF%`IHQbD zhFINW?2J*deh*xxsF{y?IFjWi;L5chrFpN3{$3&?)4js}_5$$zxRpfen|r+h0IgMy7Jfw5f?a)MZ@Y5+Xxi zu7&$J?Oyts7Mf~(Ny(V&&pGw6<SNPcvyGsjy-?8-L3(TgRQAwXL(LmXolk+ZpW9Gy+cM#2_h}r zLrO|D+$yH|&Q49hHMaJiGaY+>D7!mt%FiX?& z6;`dT3=ziNEZaLX9Q)^%23q%|XIDl)rjnFIJ6zflJ+jO$57`9>S3(eSMsrrArj&l}azA_@VTMLW(CT=+Op4_V zJm-w5MX0V7e8DMxMTo*p+C_;$SQ;QTUDP7r9ugUtpbJ5md%!N>ga3YX>C&4EPbWQOSwes)vt(q zMKD+^&TKv+OwLX<<-LVN;iFA8Ee9+wCQf3LoilA(NdK1cV32`*Un`!<+7fTlLVc^8x)mR^`Wqs^m zyIF>(N$bG3RwEZu%Ke9jhxQX*;jQWf99R0zG}>kN>As?w!EHrBV0Uz0Bh%u ztL6${kE1(**8DXS=bP;xBgGT!V(&|wbf-iKY!2D{kJosaTCCRO?)~g*E|aS6eIu(C zG`&`k4u*D`I#}PcqV-KDlp%gBC$-dkH=${>X{p)d%4+%vNya%Z@abIcCJQS|$@h$j zRVgwY#fcm*J5cPc_%hbAFPS!dB&L0jKmU+tL%!9gFI z2i=9hMEW;~dNO_m1G~O#o=yv4wkx<($F#ak_(oV~RhE-#xsE!NWk=-oFAj?750j}n z)s^q}WrEK6;^Rmq53+SK?~pw5@kJ{XdzDiSCR`9778S?cX!s8NNTwlVo@s6zv#rke z$~*B829Z0zo4o1dsa}S1#$(DBF1QU6*1&=x0U4wPbpcrSA87l&S~^+4@x@5{9UczH zi-Hwd3%9D1lN(xT?U_yZvmP7qDd@lSqO$2)QcmGvw>tPmCF_;V5>qPYWXUR{%ihBL z1q({|ODtvZ6IMBK_B$^PpFbh~=eiBf|D5JAG6UHETk)orj7XR2D;XUJ0t7_%A4Zy4 z8yWwhGorHxq$`eE_b?!~-J*36DyuvL$rORneamCx&9zcn6LU;kNrf)n*|gyHUb z+odp{F5%~B%$v52 zvW=RzB;1BUxBD9HLjf~*5rTVF(_1JsR4m?I5Rg$w+W7dU$qhSp|3sk@h_ox%aQjW{ z1mm{RB_YL;!m#^LZ5JDO-e^ohreXfi>nq+cS?r-$$4RV#a?F5m)1)}uJ8{|PUUvbQrJyqgj7Q*N)iCk0uX z&J3FTb7Pw*H0J!|=M61$WL{n$1!z8Lse{6p4i%K~@Jf2ri~Q^kw8Hxss+N`)?rqZ8 z);SzoK`AQ=ZeF>XNmb@IUd!Et1!0h6Id>$BUPh4Mm7$3q|JaoX z`+!?mwx2)E^ELG*(m2O&jxiRvJS*mIWFM77a3$W^E2$^S-QibhVER2RJr&%6&30Tt zdDM3ca>S9JGVCea3zFo^rb6b*dOMUuDjyi;aANc$hjAY2XsxeMOwABCm_4hsSl~u( zh*@KvRvCiLVsu?t2&E|!7LlpLVFF_t8pE#y#;No1i*X!T`H~*Y&NzQTke|aN7+GQ= z@ww7+g;&1VKaF+`q-G_t<0%_)E*bKqL3a@FD=z+yErAJLPU+^*n@$Ej$~M2284}~s z2Oq77fqqqp*7tkuqoq=2{X+)O+nqzkE?|+M669T#uy7I&jVg z`*}#1dpOG3wQxn6T7Lr+nossjnS~g}=jsfFksOJ7oQc3#t@&!5i{{XjtPGD$bZEyU?{_iYzj~0OMAwU&+Oxr0u9RR6gq+5FcFMui2 zCCUE*B#k}W3WG*PCapehf@cJ7y#!^BD8~n3ipouWY-^9c0s5As0ka`L81F}nx~vul zb0xPR&ZTD?8<8Ma){POOM~YkiLtVOce~C+Ib~K}=Kct3$d7Ce>Igq$Bj&U!4uo(Ch zHt{P$94Y>|FmZ=hzk7%~f}@LH@>fU)dJb&OS@v4cX;tkH;bca^sb}iYS*U+|O>ZXq zxBU0Ek;!S#*FR7BvH

nFY)NR#Dy1Un(bb`5Z!8h%Uk3wKZIt;}ng&t5M1bHC#YZ z|7qP{LhES5{EC^h%}4-x6Hi39cLXm-BtrnC zeh$gx2Om*gv0nXMRo#9MRu48FlP-NWK88N&QV*V3@a>iy zduWKdW4khipq@5SE!QJfmsOwx*(bIH;e8mY;g-JUY&a6JOgd0{`x=w=a;ZSNHUCBY z_S&Xy9p$gZ0Ii+1qW&*KM1QHze`$>WhvX|YTlX@+uHT}qr2vVvj9T%6j?WpIdcg}r z^cUcQ)Wj)BAmlwijwGCoKuq<fY9-0WMIJRC@1&REjf+&a1uSi2o_hCwm+-k8<|UxqJV4WgW7$clzFF9ZB;OO zS0OK1jztkYNDgLfi66gysH3)dw1Y{8@axOP^oW8~GdyD<-M zq=~ezjAf_j5l-Vi7Wb&L26ztXED~s8RY0o@5y$ci3NxE|9XZP8dpvprqVy1^z-#3y zU~W^Mh4P3p!~NS|@$fyvN!%YC2&fzr2#ET>Bga4RU=A2p69=rap?18g67UFZCF!3Z zkj)PpVHILs(MJ!p6wYA(I2k;Q>$Sr${inNi{|9+9h*F#!Q*0A9M7J0{z(jGn|kA^ zs5T-ZlIIXPVy#{a^-=BK9ce0Syb^xrbp|@8-wEhoV8JO2cR|~-6RBXfs8>fE=d0`! zdkLySC-vIf1pY?X3JJ$97#$9P7;PaNxD*-L<4Rg7GJ4&vn$7 zCq7zQT2WnikWm`Ei;}KYBmz&Tk+e;UZD+D5KQ?N;mV<73fB<^t! z(j%m{>G{n_{O+v0CFK-sE>*1@!nQ-tL8YgN8QKkTk7j}0HP)_1JQ^5Rv80H+oHZEz zX()Q1na{L}IKolMc_f9I7U+p1a}NS*{ZMfOo#$YDLt6J@M+&XFb{(Jd?bbQV3X!H~ ziYg;e@Wc9;&@)b4-6w2bgon{pQFf&D?boYv;$V0XY zfcln*6XGGwed8c)8ps5=78+Q*%d3;{qhD%O8?4nt*fTPvj+^AD2Y%>iIYEMIkNn|z zx1r5YD_Ke!K!!PCqaIIK!WBx)RX#u6%i;JVoMBFJZ;h*UQn0+!$DyvET6692D4bV) zUP^MT*XKTN@V5vKn=cDIc{ni;QjB&&_?ml_B^~&bNfSIs?)rolm&A&@5Lxrpk!%1# zEkEL6iB2WLyv?kle5JnC4>xl}IP4u*yBWJNABeWCyzz}cPu_*&1g_M;SyDxEX}Ajw zeV`^xIO)SbZa6FC*@b)J5! zFcLgu;%J;Zw679W0Uox#=cc21H)NCVyQJrDdwo4&Yi@ZaZgziM#7}G#vnh_etwRP= z5fxksQ&&YZ9_?1rN~C5;(^FI~C#M@F+XpT;dYHZtgKTS+SB-|l0KpJ`8grOK0_CnR zgo({W?j1>U4o<$}EkaVg2XQzlKS69Ya&|c};jzi=mSHarE5gka;?n%HaU7cNV9WfD z<-X=BhGPk;_D%Z^Kq<^+-cP2hkHGRPS)r^RX|=p##6Q?d$|vQjjkW~yDFC}^)Kcr| zFi~oVPK(Q2uC+mUxqK(HrxP1~NsoCD70Ay0V{ z0UWjvoF`iD4vhA^Aixpp@B@isd5ynQVP1|v zb9Z-!4hq=Bg>fs3dmVw&`2ntlYI%H9_89p#wwD~TPIs(p3`*WpmV&P1ie_{~m4g1- z^CLgLg-MBfcXPtZ+3>zNFsezl1I-Dj7SC{VB8wwEcqEDGbBSk`h+%0rF}pE=dg?s` zQa}nXIA6BI*Nnu}_FAXkOh<8?XBB#+IJ8FNhBN6*Mu5;4luGx4ss#sS zL1UdY=I1NQ8Vwlblam6zB_TnM$$+a-gCX9-Y0h*65qo`hW__}4;UADzk)3b-n1WPf z;E72w=Y0HA&q4>0l?Z`WS?K-=l4cvai_pvq2WF+uuu@2Q$2+U|=N+}r`>*-em@Rk{^3Q+U&30>ih`!c|`KT^9H#yQov~fy4yG=FL@8+C{cZ+0ET*{qqOd^=ExlMU3kPv^1y2gl*1!}ocUJYf1+V< z2}Mxg5Rv4N`a!c4{S<=)jF*7qN0K;QJSaDJwzrj`KkN0{L$tIk=}T7y45bEbK@e50 ztIE{Srzzn7!v-afgykParGS_yZpTAeO6oaNVg?{A~6sEV#!&bo9 ziy1(B$`e}D$Gl)jmkQE(LC}hvW4p@LxR(y;9bZsjo(<`>&SJ|I)Mg$6A;J(v?>u zRu~Z752*`^R{X3Xr&8zSRsto;RaUI2l}}*uhp@?_MmXkvKjdhCwC}?7k(f4W-~|ot zaxw$lES*Y`vz3@+m7Ug}9iJf-(dZdQ!8{WC!Sh?-u74?tDT_>{PgcKa&`?FJLtbo! zTtlPC)%;v~7)YlkBQ!pSK9p2~Hs-|d1||6@w+q&1kAR3Dapq*Oc(ImV1k1n}1+@Lt zQ4j+mVSB)^2ynv9%8a4OU(3}u8Uxc&83onhV#ZL9?xHr)W~M~`b50Xi69v`w`_};K zE>xQX87Y{KRxYfo9`kXgkg~Y^B4+BH;qK;wcd1*m3(d^ls;D(Fq*RL+I2#YaPn`W~ z*%1%7p+zvwTt`_D#n=Hxqa*JE0Z-O%FBTe$Ac{f^7UV10xJ!Xho+sKi<-v=VD8J&x zlyx8>!N!r`${z|>7_qUNSpbb*=R$&b{0alt{57H^K42R{3?{AbQye(`3gr|Y69(LP zm+tCxlEQQ-kg>y{0rj!90h5IH`g?>!2GXH4Q=&(iP+a28E&h4ab8}l`Ct}|0SQ|#q zkcE+;J(OW>dj9z}Dj5Q%HLqB6*4pzK_!ZY}=ZtJ^?7~wU91bh9J;y#%MJ+YtULHx9 z3K7|S)jv2moe@|4>ujnkgM#bg-IGvd$`G_5+2U{&?p}7 zo|>aXSC?&~%QJ;Ys3x{Q@NRB=w3{3dwD3jFX1CA8Is;kzNizMNh)x8zEC%p=HF)vT zGVJf0jM~+1g~sOk>RheI)XdqW5}Hac^$q6E!9!sk-=qkpB4gFSJ)S2lI;*KB?!jJy z<1rsj_{>uPkvRAVn9hnQOr`n_(gxt2p7Hbry&tX1lyDgc29cCp%>|3h+rN&|hZgne zbDT;Gynk?_Tq(3?uqKHD*0$CU z9%6Aa(h)vAh!oHry)?WZJ@4PN(d3<~@G-&T!lk1smh|U~yt)e6&Y#YFm2u*`z!wtg zqzs&@oYS~y_d3D%i{#HRV8$k?ClxJLN*wJ!#5ac1+NMjYt$aTbH#)BF*wY`uHh4n8 zpA~}IrdhEgB?$w({M_PeFWfy`Yg>&i1f%1~ggO)*SF*iYB8~dV{I5AYOQXqZToIdp z?#v_&Jt3;s1Gm&X{hQ=}w)yefS=zIRUv!BXbuCY}b1SzE; za6m5|a+K-$ZHtg3A??(`U6tM;soKWG#K3k<4`wGzX@4I#Nl}*?Bx4d>QAN`Tw_RO1 zgZtF>!}7;X#ZTE)mRaHKrW~pWa-$kk^>PlwEvwAp?;p;2E1Fpgi*=eNXREO%B~%Tq z6J)P5yZvRyt2QGe&MgDs6);>kXk;J0k@79C9m3i=jN%M7IHB8tt(7og+o@`L@Rf+` zjY`vQCgzU$_Sy!C)k}{e+o5>}J-NKfaSVg8bmnOw&sf>PtErauS@(vvj<{l*XiezJ z%WIYmr!XB0-NJE$o%Pp6M8VvNO}A_pZb6|t5nOMUdE^-=pMsCB% zrr*y_hmz8MI(c&r1_ml&=NIXCJLHE6GloC7`r0!SWEnl=$F9&tv81W_f_QKA8;|J57BNuz1 z&s)R-4Tky*$Ixv?zcu>Ar=1KQuG?D|PD@x>n#G(T&=7fh4feYc05P#r%y2m@B31K7 z4zZ4y>Dgz$c_iO`mUQ=Nj#TTXY~DoUCsO6gT8SPcSnKIt2GRXV+|5Rf+^ZWrc;Q674UR_gk_s}s<)5#>Z&5U>$Hssv5@b+(JUlOwb^!*J#dztP zRQKX+3YG-wB;Tslm99X9F4^Nm#iwVK1$WJ5jd}tla4TqjYp;)|vxtag!9a63U4&NE z`7SrUKoUH$rBsb4T6N92d}Wv9*4ulmzH>UT@P~z_93pQS--&OL<8wlhq@+p7);F9fpuS)Zu%fhxlY zJ|s{tFoSJ_R}#*ri!zoV9>fuJR>> zOUoWi!^$9Z-x31fw(=TC2;~QkSJ4XkVAJx@Gu6v*c$Hn6qXs4Z?KwbAjw5p_KZ?_%r)z z3eRxI4o*)$?%(5=m1z-Df_=`E2wEWkcRERE#tJB)ntsTYc65_qS5~!%auj5^(_}DF zNPNo2&!dOJX%LN|%7UuzcDk3#lPK`rHCT`N);1%siC@|M!cN3qGXyj|ZlUM;-yZ0~ zF-}Jx51qG^QD_E=F)Csw$Vg;{I;f?Sk;Q2842OW4T?<>W74;)jkx1A50#8>#!y>L; zA5Em6>~Gxs@c4LNRaIHLrzNvK1BK_)b`?pp-<1Q_CVcnb=>yN38-L8JGY~xNPfhBcA$hA)Ff= zSkcL?j(#{rkM^R~I5s3WXdW^RYx*)~^lMPW>2?Y}WwrUi7T1^&WbYh4>`-8svI2T!@!!_6lDvwyX#i zZb1M(=E&GS$*|Tv9q4IViiN1;2!>@@X)9*8 z9P#0dF(e)-he@$Y`TQfH;2e2astMQSKI@hTwG z$dLcb8T@Idg&)is&RgJ9~WU8a0ZbL?el!Wk~6bcH)PL_N3@S z@*1k!KFDMgD&iRCn@gnb%=+=EF&=aR)x8tO)_BTfnL?5xIN(q+lMgfua3#yU6xp

{?a%{1d@2OD-A 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�Xys7SjhPdsG~sJ_d&E5kZ0Nxjrsj==iNhl)j^3Fpp=6}0@I7qP6=qA zEhrHWoKD|U0(@uKiG?;=k;oTd%y|ol-c4#9bNFD{=9`_{g7JTl!eP}-&DAE9g zxO4y`1DbUQUHbg-@n zbwy|)3WNq~V1;7X`!U@(v`zzRG;3njz_j~g5`h*yK#`AH*hIGN|Cr#=N&*NUJB1Yv ztfpV*f-!-iS$GhJ2@cKtf^bD$EO5+m045P=k`xpP zID=ILQzU>%1e!4fMc(LP5dmWXOkiks4FuyDU<3ah4PatJ(@!A#m?0MSZt(yn8E8%h eltCC_lldzm_>G3`M_(=sd^ZEHgpZBUfBhe@W!swo literal 0 HcmV?d00001 diff --git a/.yarn/cache/ts-jest-npm-27.0.5-9336f30efa-fd53cdb6f9.zip b/.yarn/cache/ts-jest-npm-27.0.5-9336f30efa-fd53cdb6f9.zip new file mode 100644 index 0000000000000000000000000000000000000000..a4e91f0604071b6176744b80daba95d71a448ee4 GIT binary patch literal 82641 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

N}QT3vm97nTj`1h-hhj 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

RoIjU=e0=m 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 bTyBpi6`=}yIwhq5`0t0oN=j=0q@?s8p&mLD literal 0 HcmV?d00001 diff --git a/packages/composites/augur/jest.config.js b/packages/composites/augur/jest.config.js new file mode 100644 index 0000000000..97cb83671a --- /dev/null +++ b/packages/composites/augur/jest.config.js @@ -0,0 +1,5 @@ +/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */ +module.exports = { + preset: 'ts-jest', + testEnvironment: 'node', +} diff --git a/packages/composites/augur/package.json b/packages/composites/augur/package.json index 6f7007a31a..255291048b 100644 --- a/packages/composites/augur/package.json +++ b/packages/composites/augur/package.json @@ -55,6 +55,7 @@ "@types/chai": "^4.2.21", "@types/chai-spies": "^1", "@types/express": "*", + "@types/jest": "^27.0.1", "@types/luxon": "^1.27.1", "@types/mocha": "^9.0.0", "@types/node": "^14.14.35", @@ -70,6 +71,8 @@ "hardhat-deploy": "0.8.11", "hardhat-docgen": "^1.1.0", "hardhat-typechain": "^0.3.5", + "jest": "^27.0.6", + "ts-jest": "^27.0.5", "typechain": "^4.0.3", "typescript": "^4.2.3" } diff --git a/packages/composites/augur/src/dataProviders/sportsdataio.ts b/packages/composites/augur/src/dataProviders/sportsdataio.ts index 00ca1e464e..63c1d4f2bb 100644 --- a/packages/composites/augur/src/dataProviders/sportsdataio.ts +++ b/packages/composites/augur/src/dataProviders/sportsdataio.ts @@ -33,7 +33,7 @@ interface NFLEvent { OverUnder: number | null } -interface TeamSchedule { +export interface TeamSchedule { Date: string GameID: number AwayTeamName: string @@ -346,7 +346,7 @@ export const createTeam: Execute = async (input, context) => { awayTeamName: event.AwayTeamName, awayTeamId: event.AwayTeamID, startTime, - homeSpread: event.PointSpread || 0, + homeSpread: calcHomeSpread(event), totalScore: event.OverUnder || 0, createSpread: event.PointSpread !== null, createTotalScore: event.OverUnder !== null, @@ -364,6 +364,23 @@ export const createTeam: Execute = async (input, context) => { }) } +export function calcHomeSpread(event: TeamSchedule): number { + if (event.HomeTeamMoneyLine === null || event.PointSpread === null) return 0 + + const homeFavored = event.HomeTeamMoneyLine < 0 // negative moneyline is favored + return homeFavored ? ensurePositive(event.PointSpread) : ensureNegative(event.PointSpread) +} + +function ensureNegative(n: number): number { + if (n > 0) n = -n + return n +} + +function ensurePositive(n: number): number { + if (n < 0) n = -n + return n +} + interface FightSchedule { Active: boolean DateTime: string diff --git a/packages/composites/augur/test/unit/calculations.test.ts b/packages/composites/augur/test/unit/calculations.test.ts new file mode 100644 index 0000000000..017d55e155 --- /dev/null +++ b/packages/composites/augur/test/unit/calculations.test.ts @@ -0,0 +1,81 @@ +import { calcHomeSpread, TeamSchedule } from '../../src/dataProviders/sportsdataio' + +describe('calculations', () => { + describe('calcHomeSpread', () => { + it('positive, favored -> pos', () => { + const spreadIn = 1.5 + const event: TeamSchedule = makeFakeEvent({ + PointSpread: spreadIn, + HomeTeamMoneyLine: -1, // negative means favored + }) + expect(calcHomeSpread(event)).toEqual(spreadIn) + }) + it('negative, favored -> pos', () => { + const spreadIn = -1.5 + const event: TeamSchedule = makeFakeEvent({ + PointSpread: spreadIn, + HomeTeamMoneyLine: -1, // negative means favored + }) + expect(calcHomeSpread(event)).toEqual(-spreadIn) + }) + it('positive, disfavored -> neg', () => { + const spreadIn = 1.5 + const event: TeamSchedule = makeFakeEvent({ + PointSpread: spreadIn, + HomeTeamMoneyLine: +1, // positive means disfavored + }) + expect(calcHomeSpread(event)).toEqual(-spreadIn) + }) + it('negative, disfavored -> neg', () => { + const spreadIn = -1.5 + const event: TeamSchedule = makeFakeEvent({ + PointSpread: spreadIn, + HomeTeamMoneyLine: +1, // positive means disfavored + }) + expect(calcHomeSpread(event)).toEqual(spreadIn) + }) + it('pos, missing moneyline -> 0', () => { + const spreadIn = 1.5 + const event: TeamSchedule = makeFakeEvent({ + PointSpread: spreadIn, + }) + expect(calcHomeSpread(event)).toEqual(0) + }) + it('neg, missing moneyline -> 0', () => { + const spreadIn = -1.5 + const event: TeamSchedule = makeFakeEvent({ + PointSpread: spreadIn, + }) + expect(calcHomeSpread(event)).toEqual(0) + }) + it('missing spread, favored -> 0', () => { + const event: TeamSchedule = makeFakeEvent({ + HomeTeamMoneyLine: -1, // negative means favored + }) + expect(calcHomeSpread(event)).toEqual(0) + }) + it('missing spread, disfavored -> 0', () => { + const event: TeamSchedule = makeFakeEvent({ + HomeTeamMoneyLine: +1, // positive means disfavored + }) + expect(calcHomeSpread(event)).toEqual(0) + }) + }) +}) + +function makeFakeEvent(override: Partial): TeamSchedule { + return { + Date: '', + GameID: 0, + AwayTeamName: '', + AwayTeamID: 0, + HomeTeamName: '', + HomeTeamID: 0, + Status: '', + PointSpread: null, + AwayTeamMoneyLine: null, + HomeTeamMoneyLine: null, + OverUnder: null, + ...override, + } +} diff --git a/yarn.lock b/yarn.lock index a72c27b62e..c9cc7463d8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1480,6 +1480,7 @@ __metadata: "@types/chai": ^4.2.21 "@types/chai-spies": ^1 "@types/express": "*" + "@types/jest": ^27.0.1 "@types/luxon": ^1.27.1 "@types/mocha": ^9.0.0 "@types/node": ^14.14.35 @@ -1496,10 +1497,12 @@ __metadata: hardhat-deploy: 0.8.11 hardhat-docgen: ^1.1.0 hardhat-typechain: ^0.3.5 + jest: ^27.0.6 luxon: ^1.27.0 mockdate: ^3.0.5 resolve: 1.20.0 rewire: ^5.0.0 + ts-jest: ^27.0.5 tslib: ^2.1.0 typechain: ^4.0.3 typescript: ^4.2.3 @@ -5024,6 +5027,19 @@ __metadata: languageName: node linkType: hard +"@jest/types@npm:^27.1.0": + version: 27.1.0 + resolution: "@jest/types@npm:27.1.0" + dependencies: + "@types/istanbul-lib-coverage": ^2.0.0 + "@types/istanbul-reports": ^3.0.0 + "@types/node": "*" + "@types/yargs": ^16.0.0 + chalk: ^4.0.0 + checksum: 11899aba8103e00332baab35eb7ed435e4e06b270d02ca75fc6ccf08e41f36abae7b25d623377da47596c3e817c102e79e99caf717e6ec8eb78a85fdaa439ee8 + languageName: node + linkType: hard + "@jsdevtools/ono@npm:^7.1.3": version: 7.1.3 resolution: "@jsdevtools/ono@npm:7.1.3" @@ -8480,6 +8496,15 @@ __metadata: languageName: node linkType: hard +"bs-logger@npm:0.x": + version: 0.2.6 + resolution: "bs-logger@npm:0.2.6" + dependencies: + fast-json-stable-stringify: 2.x + checksum: d34bdaf68c64bd099ab97c3ea608c9ae7d3f5faa1178b3f3f345acd94e852e608b2d4f9103fb2e503f5e69780e98293df41691b84be909b41cf5045374d54606 + languageName: node + linkType: hard + "bs58@npm:*, bs58@npm:^4.0.0, bs58@npm:^4.0.1": version: 4.0.1 resolution: "bs58@npm:4.0.1" @@ -11974,7 +11999,7 @@ __metadata: languageName: node linkType: hard -"fast-json-stable-stringify@npm:^2.0.0": +"fast-json-stable-stringify@npm:2.x, fast-json-stable-stringify@npm:^2.0.0": version: 2.1.0 resolution: "fast-json-stable-stringify@npm:2.1.0" checksum: b191531e36c607977e5b1c47811158733c34ccb3bfde92c44798929e9b4154884378536d26ad90dfecd32e1ffc09c545d23535ad91b3161a27ddbb8ebe0cbecb @@ -15127,6 +15152,20 @@ fsevents@~2.1.1: languageName: node linkType: hard +"jest-util@npm:^27.0.0": + version: 27.1.0 + resolution: "jest-util@npm:27.1.0" + dependencies: + "@jest/types": ^27.1.0 + "@types/node": "*" + chalk: ^4.0.0 + graceful-fs: ^4.2.4 + is-ci: ^3.0.0 + picomatch: ^2.2.3 + checksum: 8f42fb7b448749d7f5ebc3580eee0be2ab3f1ac4ab9adb52e737fe9083df3c963b781c819a94cc5ca463e186caa32ebfede1bc43d1fc3cadb5c5f930073ecc80 + languageName: node + linkType: hard + "jest-util@npm:^27.0.6": version: 27.0.6 resolution: "jest-util@npm:27.0.6" @@ -15455,6 +15494,17 @@ fsevents@~2.1.1: languageName: node linkType: hard +"json5@npm:2.x, json5@npm:^2.1.2": + version: 2.2.0 + resolution: "json5@npm:2.2.0" + dependencies: + minimist: ^1.2.5 + bin: + json5: lib/cli.js + checksum: e88fc5274bb58fc99547baa777886b069d2dd96d9cfc4490b305fd16d711dabd5979e35a4f90873cefbeb552e216b041a304fe56702bedba76e19bc7845f208d + languageName: node + linkType: hard + "json5@npm:^0.5.0, json5@npm:^0.5.1": version: 0.5.1 resolution: "json5@npm:0.5.1" @@ -15475,17 +15525,6 @@ fsevents@~2.1.1: languageName: node linkType: hard -"json5@npm:^2.1.2": - version: 2.2.0 - resolution: "json5@npm:2.2.0" - dependencies: - minimist: ^1.2.5 - bin: - json5: lib/cli.js - checksum: e88fc5274bb58fc99547baa777886b069d2dd96d9cfc4490b305fd16d711dabd5979e35a4f90873cefbeb552e216b041a304fe56702bedba76e19bc7845f208d - languageName: node - linkType: hard - "jsonfile@npm:^2.1.0": version: 2.4.0 resolution: "jsonfile@npm:2.4.0" @@ -16458,7 +16497,7 @@ fsevents@~2.1.1: languageName: node linkType: hard -"lodash@npm:*, lodash@npm:^4.17.11, lodash@npm:^4.17.12, lodash@npm:^4.17.14, lodash@npm:^4.17.15, lodash@npm:^4.17.19, lodash@npm:^4.17.20, lodash@npm:^4.17.21, lodash@npm:^4.17.3, lodash@npm:^4.17.4, lodash@npm:^4.7.0": +"lodash@npm:*, lodash@npm:4.x, lodash@npm:^4.17.11, lodash@npm:^4.17.12, lodash@npm:^4.17.14, lodash@npm:^4.17.15, lodash@npm:^4.17.19, lodash@npm:^4.17.20, lodash@npm:^4.17.21, lodash@npm:^4.17.3, lodash@npm:^4.17.4, lodash@npm:^4.7.0": version: 4.17.21 resolution: "lodash@npm:4.17.21" checksum: eb835a2e51d381e561e508ce932ea50a8e5a68f4ebdd771ea240d3048244a8d13658acbd502cd4829768c56f2e16bdd4340b9ea141297d472517b83868e677f7 @@ -16628,7 +16667,7 @@ fsevents@~2.1.1: languageName: node linkType: hard -"make-error@npm:^1.1.1": +"make-error@npm:1.x, make-error@npm:^1.1.1": version: 1.3.6 resolution: "make-error@npm:1.3.6" checksum: b86e5e0e25f7f777b77fabd8e2cbf15737972869d852a22b7e73c17623928fccb826d8e46b9951501d3f20e51ad74ba8c59ed584f610526a48f8ccf88aaec402 @@ -20623,7 +20662,7 @@ resolve@1.17.0: languageName: node linkType: hard -"semver@npm:*, semver@npm:^7.1.1, semver@npm:^7.1.2, semver@npm:^7.1.3, semver@npm:^7.2.1, semver@npm:^7.3.2, semver@npm:^7.3.4, semver@npm:^7.3.5": +"semver@npm:*, semver@npm:7.x, semver@npm:^7.1.1, semver@npm:^7.1.2, semver@npm:^7.1.3, semver@npm:^7.2.1, semver@npm:^7.3.2, semver@npm:^7.3.4, semver@npm:^7.3.5": version: 7.3.5 resolution: "semver@npm:7.3.5" dependencies: @@ -22375,6 +22414,37 @@ resolve@1.17.0: languageName: node linkType: hard +"ts-jest@npm:^27.0.5": + version: 27.0.5 + resolution: "ts-jest@npm:27.0.5" + dependencies: + bs-logger: 0.x + fast-json-stable-stringify: 2.x + jest-util: ^27.0.0 + json5: 2.x + lodash: 4.x + make-error: 1.x + semver: 7.x + yargs-parser: 20.x + peerDependencies: + "@babel/core": ">=7.0.0-beta.0 <8" + "@types/jest": ^27.0.0 + babel-jest: ">=27.0.0 <28" + jest: ^27.0.0 + typescript: ">=3.8 <5.0" + peerDependenciesMeta: + "@babel/core": + optional: true + "@types/jest": + optional: true + babel-jest: + optional: true + bin: + ts-jest: cli.js + checksum: fd53cdb6f913cbe802799d2b491f70f33c52c840c4b8483cecf600ff360efbd00c8d7ed9eb0dd677219f330ee38928b7b9890e9853e9f4d3574b9d8e1dcf4a30 + languageName: node + linkType: hard + "ts-node@npm:^10.2.1": version: 10.2.1 resolution: "ts-node@npm:10.2.1" @@ -24241,6 +24311,13 @@ resolve@1.17.0: languageName: node linkType: hard +"yargs-parser@npm:20.x, yargs-parser@npm:^20.2.2, yargs-parser@npm:^20.2.3": + version: 20.2.9 + resolution: "yargs-parser@npm:20.2.9" + checksum: 8bb69015f2b0ff9e17b2c8e6bfe224ab463dd00ca211eece72a4cd8a906224d2703fb8a326d36fdd0e68701e201b2a60ed7cf81ce0fd9b3799f9fe7745977ae3 + languageName: node + linkType: hard + "yargs-parser@npm:^2.4.1": version: 2.4.1 resolution: "yargs-parser@npm:2.4.1" @@ -24251,13 +24328,6 @@ resolve@1.17.0: languageName: node linkType: hard -"yargs-parser@npm:^20.2.2, yargs-parser@npm:^20.2.3": - version: 20.2.9 - resolution: "yargs-parser@npm:20.2.9" - checksum: 8bb69015f2b0ff9e17b2c8e6bfe224ab463dd00ca211eece72a4cd8a906224d2703fb8a326d36fdd0e68701e201b2a60ed7cf81ce0fd9b3799f9fe7745977ae3 - languageName: node - linkType: hard - "yargs-parser@npm:^7.0.0": version: 7.0.0 resolution: "yargs-parser@npm:7.0.0" From 42c99362044e61b2ca45255d925b0a7ff734b70e Mon Sep 17 00:00:00 2001 From: robert Date: Thu, 2 Sep 2021 12:18:41 -0700 Subject: [PATCH 2/2] correct behavior is to favor the most-negative moneyline --- .../augur/src/dataProviders/sportsdataio.ts | 20 ++-- .../augur/test/unit/calculations.test.ts | 102 ++++++++---------- 2 files changed, 58 insertions(+), 64 deletions(-) diff --git a/packages/composites/augur/src/dataProviders/sportsdataio.ts b/packages/composites/augur/src/dataProviders/sportsdataio.ts index 63c1d4f2bb..7d9a4ab699 100644 --- a/packages/composites/augur/src/dataProviders/sportsdataio.ts +++ b/packages/composites/augur/src/dataProviders/sportsdataio.ts @@ -365,18 +365,26 @@ export const createTeam: Execute = async (input, context) => { } export function calcHomeSpread(event: TeamSchedule): number { - if (event.HomeTeamMoneyLine === null || event.PointSpread === null) return 0 - - const homeFavored = event.HomeTeamMoneyLine < 0 // negative moneyline is favored - return homeFavored ? ensurePositive(event.PointSpread) : ensureNegative(event.PointSpread) + const { HomeTeamMoneyLine, AwayTeamMoneyLine, PointSpread } = event + if (HomeTeamMoneyLine === null) return 0 + if (AwayTeamMoneyLine === null) return 0 + if (PointSpread === null) return 0 + + // If one is negative then it's favored. + // If both are negative then the most-negative is favored. + // Ergo, the smallest is favored. + const homeFavored = HomeTeamMoneyLine < AwayTeamMoneyLine + + // Here we canculate home spread specifically, which should be positive is home is favored. + return homeFavored ? ensurePositive(PointSpread) : ensureNegative(PointSpread) } -function ensureNegative(n: number): number { +export function ensureNegative(n: number): number { if (n > 0) n = -n return n } -function ensurePositive(n: number): number { +export function ensurePositive(n: number): number { if (n < 0) n = -n return n } diff --git a/packages/composites/augur/test/unit/calculations.test.ts b/packages/composites/augur/test/unit/calculations.test.ts index 017d55e155..c10f85da5a 100644 --- a/packages/composites/augur/test/unit/calculations.test.ts +++ b/packages/composites/augur/test/unit/calculations.test.ts @@ -1,65 +1,51 @@ -import { calcHomeSpread, TeamSchedule } from '../../src/dataProviders/sportsdataio' +import { + calcHomeSpread, + ensureNegative, + ensurePositive, + TeamSchedule, +} from '../../src/dataProviders/sportsdataio' describe('calculations', () => { describe('calcHomeSpread', () => { - it('positive, favored -> pos', () => { - const spreadIn = 1.5 - const event: TeamSchedule = makeFakeEvent({ - PointSpread: spreadIn, - HomeTeamMoneyLine: -1, // negative means favored - }) - expect(calcHomeSpread(event)).toEqual(spreadIn) - }) - it('negative, favored -> pos', () => { - const spreadIn = -1.5 - const event: TeamSchedule = makeFakeEvent({ - PointSpread: spreadIn, - HomeTeamMoneyLine: -1, // negative means favored - }) - expect(calcHomeSpread(event)).toEqual(-spreadIn) - }) - it('positive, disfavored -> neg', () => { - const spreadIn = 1.5 - const event: TeamSchedule = makeFakeEvent({ - PointSpread: spreadIn, - HomeTeamMoneyLine: +1, // positive means disfavored - }) - expect(calcHomeSpread(event)).toEqual(-spreadIn) - }) - it('negative, disfavored -> neg', () => { - const spreadIn = -1.5 - const event: TeamSchedule = makeFakeEvent({ - PointSpread: spreadIn, - HomeTeamMoneyLine: +1, // positive means disfavored - }) - expect(calcHomeSpread(event)).toEqual(spreadIn) - }) - it('pos, missing moneyline -> 0', () => { - const spreadIn = 1.5 - const event: TeamSchedule = makeFakeEvent({ - PointSpread: spreadIn, - }) - expect(calcHomeSpread(event)).toEqual(0) - }) - it('neg, missing moneyline -> 0', () => { - const spreadIn = -1.5 - const event: TeamSchedule = makeFakeEvent({ - PointSpread: spreadIn, - }) - expect(calcHomeSpread(event)).toEqual(0) - }) - it('missing spread, favored -> 0', () => { - const event: TeamSchedule = makeFakeEvent({ - HomeTeamMoneyLine: -1, // negative means favored - }) - expect(calcHomeSpread(event)).toEqual(0) - }) - it('missing spread, disfavored -> 0', () => { - const event: TeamSchedule = makeFakeEvent({ - HomeTeamMoneyLine: +1, // positive means disfavored + enum r { + zero, + positive, + negative, + } + const testcases = [ + // favor the most negative line + { spread: 1.5, home: -1, away: +1, result: 1.5 }, + { spread: 1.5, home: -2, away: -1, result: 1.5 }, + { spread: 1.5, home: +1, away: -1, result: -1.5 }, + { spread: 1.5, home: -1, away: -2, result: -1.5 }, + + // input sign shouldn't matter + { spread: -1.5, home: -1, away: +1, result: 1.5 }, + { spread: -1.5, home: -2, away: -1, result: 1.5 }, + { spread: -1.5, home: +1, away: -1, result: -1.5 }, + { spread: -1.5, home: -1, away: -2, result: -1.5 }, + + // if lines are the same then spread should be zero anyway + { spread: 0, home: -1, away: -1, result: 0 }, + + // if a field is missing then return zero + { spread: null, home: -1, away: -1, result: 0 }, + { spread: 1.5, home: null, away: -1, result: 0 }, + { spread: 1.5, home: -1, away: null, result: 0 }, + ] + + for (const testcase of testcases) { + const { spread, home, away, result } = testcase + it(`calc with lines ${home}:${away} :: ${spread} -> ${result}`, () => { + const event = makeFakeEvent({ + PointSpread: spread, + HomeTeamMoneyLine: home, + AwayTeamMoneyLine: away, + }) + const calc = calcHomeSpread(event) + expect(calc).toEqual(result) }) - expect(calcHomeSpread(event)).toEqual(0) - }) + } }) })