@@ -2937,20 +2937,6 @@ describe('prepareContestProviderPresets', () => {
29372937 expect ( group . getProvider ( ContestType . ABC ) ) . toBeInstanceOf ( ABC212ToABC318Provider ) ;
29382938 } ) ;
29392939
2940- test ( 'expects to create DPs preset correctly' , ( ) => {
2941- const group = prepareContestProviderPresets ( ) . dps ( ) ;
2942-
2943- expect ( group . getGroupName ( ) ) . toBe ( 'EDPC・TDPC・FPS 24' ) ;
2944- expect ( group . getMetadata ( ) ) . toEqual ( {
2945- buttonLabel : 'EDPC・TDPC・FPS 24' ,
2946- ariaLabel : 'EDPC and TDPC and FPS 24 contests' ,
2947- } ) ;
2948- expect ( group . getSize ( ) ) . toBe ( 3 ) ;
2949- expect ( group . getProvider ( ContestType . EDPC ) ) . toBeInstanceOf ( EDPCProvider ) ;
2950- expect ( group . getProvider ( ContestType . TDPC ) ) . toBeInstanceOf ( TDPCProvider ) ;
2951- expect ( group . getProvider ( ContestType . FPS_24 ) ) . toBeInstanceOf ( FPS24Provider ) ;
2952- } ) ;
2953-
29542940 test ( 'expects to create Typical90 preset correctly' , ( ) => {
29552941 const group = prepareContestProviderPresets ( ) . Typical90 ( ) ;
29562942
@@ -2983,14 +2969,87 @@ describe('prepareContestProviderPresets', () => {
29832969 ) ;
29842970 } ) ;
29852971
2972+ test ( 'expects to create DPs preset correctly' , ( ) => {
2973+ const group = prepareContestProviderPresets ( ) . dps ( ) ;
2974+
2975+ expect ( group . getGroupName ( ) ) . toBe ( 'EDPC・TDPC・FPS 24' ) ;
2976+ expect ( group . getMetadata ( ) ) . toEqual ( {
2977+ buttonLabel : 'EDPC・TDPC・FPS 24' ,
2978+ ariaLabel : 'EDPC and TDPC and FPS 24 contests' ,
2979+ } ) ;
2980+ expect ( group . getSize ( ) ) . toBe ( 3 ) ;
2981+ expect ( group . getProvider ( ContestType . EDPC ) ) . toBeInstanceOf ( EDPCProvider ) ;
2982+ expect ( group . getProvider ( ContestType . TDPC ) ) . toBeInstanceOf ( TDPCProvider ) ;
2983+ expect ( group . getProvider ( ContestType . FPS_24 ) ) . toBeInstanceOf ( FPS24Provider ) ;
2984+ } ) ;
2985+
2986+ test ( 'expects to create ACL preset correctly with 3 providers' , ( ) => {
2987+ const group = prepareContestProviderPresets ( ) . Acl ( ) ;
2988+
2989+ expect ( group . getGroupName ( ) ) . toBe ( 'AtCoder Library Contests' ) ;
2990+ expect ( group . getMetadata ( ) ) . toEqual ( {
2991+ buttonLabel : 'AtCoder Library (ACL)' ,
2992+ ariaLabel : 'Filter ACL Contests' ,
2993+ } ) ;
2994+ expect ( group . getSize ( ) ) . toBe ( 3 ) ;
2995+ expect ( group . getProvider ( ContestType . ACL_PRACTICE ) ) . toBeInstanceOf ( ACLPracticeProvider ) ;
2996+ expect ( group . getProvider ( ContestType . ABC_LIKE ) ) . toBeInstanceOf ( ACLBeginnerProvider ) ;
2997+ expect ( group . getProvider ( ContestType . ARC_LIKE ) ) . toBeInstanceOf ( ACLProvider ) ;
2998+ } ) ;
2999+
3000+ test ( 'expects to create JOI First Qual Round preset correctly with 1 provider' , ( ) => {
3001+ const group = prepareContestProviderPresets ( ) . JOIFirstQualRound ( ) ;
3002+
3003+ expect ( group . getGroupName ( ) ) . toBe ( 'JOI 一次予選' ) ;
3004+ expect ( group . getMetadata ( ) ) . toEqual ( {
3005+ buttonLabel : 'JOI 一次予選' ,
3006+ ariaLabel : 'Filter JOI First Qualifying Round' ,
3007+ } ) ;
3008+ expect ( group . getSize ( ) ) . toBe ( 1 ) ;
3009+ expect ( group . getProvider ( ContestType . JOI ) ) . toBeInstanceOf ( JOIFirstQualRoundProvider ) ;
3010+ } ) ;
3011+
3012+ test ( 'expects to create JOI Second Qual and Semi-Final Round preset correctly with 3 providers' , ( ) => {
3013+ const group = prepareContestProviderPresets ( ) . JOISecondQualAndSemiFinalRound ( ) ;
3014+
3015+ expect ( group . getGroupName ( ) ) . toBe ( 'JOI 二次予選・本選' ) ;
3016+ expect ( group . getMetadata ( ) ) . toEqual ( {
3017+ buttonLabel : 'JOI 二次予選・本選' ,
3018+ ariaLabel : 'Filter JOI Second Qual Round' ,
3019+ } ) ;
3020+ expect ( group . getSize ( ) ) . toBe ( 3 ) ;
3021+ expect ( group . getProvider ( ContestType . JOI , '2020Onwards' ) ) . toBeInstanceOf (
3022+ JOISecondQualRound2020OnwardsProvider ,
3023+ ) ;
3024+ expect ( group . getProvider ( ContestType . JOI , 'from2006To2019' ) ) . toBeInstanceOf (
3025+ JOIQualRoundFrom2006To2019Provider ,
3026+ ) ;
3027+ expect ( group . getProvider ( ContestType . JOI , 'semiFinal' ) ) . toBeInstanceOf (
3028+ JOISemiFinalRoundProvider ,
3029+ ) ;
3030+ } ) ;
3031+
29863032 test ( 'expects to verify all presets are functions' , ( ) => {
29873033 const presets = prepareContestProviderPresets ( ) ;
29883034
29893035 expect ( typeof presets . ABS ) . toBe ( 'function' ) ;
29903036 expect ( typeof presets . ABC319Onwards ) . toBe ( 'function' ) ;
29913037 expect ( typeof presets . ABC212ToABC318 ) . toBe ( 'function' ) ;
3038+ expect ( typeof presets . ABC126ToABC211 ) . toBe ( 'function' ) ;
3039+ expect ( typeof presets . ABC042ToABC125 ) . toBe ( 'function' ) ;
3040+ expect ( typeof presets . ARC104Onwards ) . toBe ( 'function' ) ;
3041+ expect ( typeof presets . ARC058ToARC103 ) . toBe ( 'function' ) ;
3042+ expect ( typeof presets . AGC001Onwards ) . toBe ( 'function' ) ;
3043+ expect ( typeof presets . ABCLike ) . toBe ( 'function' ) ;
3044+ expect ( typeof presets . ABC001ToABC041 ) . toBe ( 'function' ) ;
3045+ expect ( typeof presets . ARC001ToARC057 ) . toBe ( 'function' ) ;
29923046 expect ( typeof presets . Typical90 ) . toBe ( 'function' ) ;
3047+ expect ( typeof presets . TessokuBook ) . toBe ( 'function' ) ;
3048+ expect ( typeof presets . MathAndAlgorithm ) . toBe ( 'function' ) ;
29933049 expect ( typeof presets . dps ) . toBe ( 'function' ) ;
3050+ expect ( typeof presets . Acl ) . toBe ( 'function' ) ;
3051+ expect ( typeof presets . JOIFirstQualRound ) . toBe ( 'function' ) ;
3052+ expect ( typeof presets . JOISecondQualAndSemiFinalRound ) . toBe ( 'function' ) ;
29943053 } ) ;
29953054
29963055 test ( 'expects each preset to create independent instances' , ( ) => {
0 commit comments