@@ -243,7 +243,50 @@ describe("Game", () => {
243243 } ) ;
244244 } ) ;
245245
246- describe ( "double-down" , ( ) => { } ) ;
246+ describe ( "double-down" , ( ) => {
247+ const gameDouble = new Game ( ) ;
248+ gameDouble . addPlayer ( { name : "New Player" } ) ;
249+
250+ it ( "sum with 9 - 11, double down" , ( ) => {
251+ gameDouble . roundManager . setBet ( 100 ) ;
252+ gameDouble . roundManager . deal ( ) ;
253+
254+ const card1 = new Card ( { suite : "hearts" , name : "4" } ) ;
255+ const card2 = new Card ( { suite : "spades" , name : "5" } ) ;
256+
257+ gameDouble . players [ 0 ] . resetHand ( ) ;
258+ gameDouble . players [ 0 ] . take ( card1 ) ;
259+ gameDouble . players [ 0 ] . take ( card2 ) ;
260+
261+ gameDouble . roundManager . resetAllowableActions ( ) ;
262+ gameDouble . roundManager . evalAlloableActions ( ) ;
263+
264+ const shouldHave = [ "hit" , "stand" , "double-down" ] ;
265+ expect ( gameDouble . roundManager . allowableActions ) . to . include . members (
266+ shouldHave
267+ ) ;
268+ } ) ;
269+
270+ it ( "non-9 - 11, no double down" , ( ) => {
271+ gameDouble . roundManager . setBet ( 100 ) ;
272+ gameDouble . roundManager . deal ( ) ;
273+
274+ const card1 = new Card ( { suite : "hearts" , name : "2" } ) ;
275+ const card2 = new Card ( { suite : "spades" , name : "3" } ) ;
276+
277+ gameDouble . players [ 0 ] . resetHand ( ) ;
278+ gameDouble . players [ 0 ] . take ( card1 ) ;
279+ gameDouble . players [ 0 ] . take ( card2 ) ;
280+
281+ gameDouble . roundManager . resetAllowableActions ( ) ;
282+ gameDouble . roundManager . evalAlloableActions ( ) ;
283+
284+ const shouldHave = [ "hit" , "stand" ] ;
285+ expect ( gameDouble . roundManager . allowableActions ) . to . include . members (
286+ shouldHave
287+ ) ;
288+ } ) ;
289+ } ) ;
247290 } ) ;
248291 } ) ;
249292} ) ;
0 commit comments