@@ -55,9 +55,9 @@ void using_default_id() throws Exception {
5555
5656 var api = new AdventOfCodeApi ("" );
5757
58- var leaderboardIds = Map .of (1 , "123456" );
58+ var leaderboards = Map .of (1 , new AdventOfCodeLeaderboard ( "123456" , "join-code" ) );
5959
60- var aoc = new AdventOfCode ("PT0S" , leaderboardIds , api );
60+ var aoc = new AdventOfCode ("PT0S" , leaderboards , api );
6161
6262 //@formatter:off
6363 var message = new ChatCommandBuilder (aoc )
@@ -69,7 +69,7 @@ void using_default_id() throws Exception {
6969 var bot = mock (IBot .class );
7070
7171 var response = aoc .onMessage (message , bot );
72- assertLeaderboardResponse ("123456" , response );
72+ assertLeaderboardResponse ("123456" , "join-code" , response );
7373 }
7474
7575 @ Test
@@ -83,9 +83,9 @@ void no_default_id() {
8383
8484 var api = new AdventOfCodeApi ("" );
8585
86- Map <Integer , String > leaderboardIds = Map .of ();
86+ Map <Integer , AdventOfCodeLeaderboard > leaderboards = Map .of ();
8787
88- var command = new AdventOfCode ("PT0S" , leaderboardIds , api );
88+ var command = new AdventOfCode ("PT0S" , leaderboards , api );
8989
9090 //@formatter:off
9191 var message = new ChatCommandBuilder (command )
@@ -116,9 +116,9 @@ void override_default_id() throws Exception {
116116
117117 var api = new AdventOfCodeApi ("" );
118118
119- var leaderboardIds = Map .of (1 , "123456" );
119+ var leaderboards = Map .of (1 , new AdventOfCodeLeaderboard ( "123456" ) );
120120
121- var aoc = new AdventOfCode ("PT0S" , leaderboardIds , api );
121+ var aoc = new AdventOfCode ("PT0S" , leaderboards , api );
122122
123123 //@formatter:off
124124 var message = new ChatCommandBuilder (aoc )
@@ -131,7 +131,7 @@ void override_default_id() throws Exception {
131131 var bot = mock (IBot .class );
132132
133133 var response = aoc .onMessage (message , bot );
134- assertLeaderboardResponse ("098765" , response );
134+ assertLeaderboardResponse ("098765" , null , response );
135135 }
136136
137137 @ Test
@@ -145,9 +145,9 @@ void not_active() {
145145
146146 var api = new AdventOfCodeApi ("" );
147147
148- Map <Integer , String > leaderboardIds = Map .of ();
148+ Map <Integer , AdventOfCodeLeaderboard > leaderboards = Map .of ();
149149
150- var aoc = new AdventOfCode ("PT0S" , leaderboardIds , api );
150+ var aoc = new AdventOfCode ("PT0S" , leaderboards , api );
151151
152152 //@formatter:off
153153 var message = new ChatCommandBuilder (aoc )
@@ -173,9 +173,9 @@ void nextRun() {
173173
174174 var api = new AdventOfCodeApi ("" );
175175
176- Map <Integer , String > leaderboardIds = Map .of ();
176+ Map <Integer , AdventOfCodeLeaderboard > leaderboards = Map .of ();
177177
178- var aoc = new AdventOfCode ("PT15M" , leaderboardIds , api );
178+ var aoc = new AdventOfCode ("PT15M" , leaderboards , api );
179179
180180 assertEquals (Duration .ofMinutes (15 ).toMillis (), aoc .nextRun ());
181181 }
@@ -191,9 +191,9 @@ void nextRun_not_december() {
191191
192192 var api = new AdventOfCodeApi ("" );
193193
194- Map <Integer , String > leaderboardIds = Map .of ();
194+ Map <Integer , AdventOfCodeLeaderboard > leaderboards = Map .of ();
195195
196- var aoc = new AdventOfCode ("PT15M" , leaderboardIds , api );
196+ var aoc = new AdventOfCode ("PT15M" , leaderboards , api );
197197
198198 assertTrue (aoc .nextRun () > Duration .ofMinutes (15 ).toMillis ());
199199 }
@@ -260,9 +260,9 @@ void announce_completions() throws Exception {
260260
261261 var api = new AdventOfCodeApi ("" );
262262
263- var leaderboardIds = Map .of (1 , "123456" );
263+ var leaderboards = Map .of (1 , new AdventOfCodeLeaderboard ( "123456" ) );
264264
265- var aoc = new AdventOfCode ("PT0S" , leaderboardIds , api );
265+ var aoc = new AdventOfCode ("PT0S" , leaderboards , api );
266266
267267 var bot = mock (IBot .class );
268268
@@ -324,9 +324,9 @@ void announce_completions_anon_user() throws Exception {
324324
325325 var api = new AdventOfCodeApi ("" );
326326
327- var leaderboardIds = Map .of (1 , "123456" );
327+ var leaderboards = Map .of (1 , new AdventOfCodeLeaderboard ( "123456" ) );
328328
329- var aoc = new AdventOfCode ("PT0S" , leaderboardIds , api );
329+ var aoc = new AdventOfCode ("PT0S" , leaderboards , api );
330330
331331 var bot = mock (IBot .class );
332332
@@ -376,9 +376,9 @@ void announce_completions_at_symbol_in_username() throws Exception {
376376
377377 var api = new AdventOfCodeApi ("" );
378378
379- var leaderboardIds = Map .of (1 , "123456" );
379+ var leaderboards = Map .of (1 , new AdventOfCodeLeaderboard ( "123456" ) );
380380
381- var aoc = new AdventOfCode ("PT0S" , leaderboardIds , api );
381+ var aoc = new AdventOfCode ("PT0S" , leaderboards , api );
382382
383383 var bot = mock (IBot .class );
384384
@@ -392,10 +392,12 @@ void announce_completions_at_symbol_in_username() throws Exception {
392392 verify (bot ).sendMessage (1 , expected );
393393 }
394394
395- private static void assertLeaderboardResponse (String expectedId , ChatActions actual ) {
395+ private static void assertLeaderboardResponse (String expectedId , String joinCode , ChatActions actual ) {
396+ var joinCodeStr = (joinCode == null ) ? "" : System .lineSeparator () + " Leaderboard join code: " + joinCode ;
397+
396398 //'@' symbols should be removed from usernames
397399 var expected = """
398- Leaderboard URL: http://adventofcode.com/2017/leaderboard/private/view/%s
400+ Leaderboard URL: http://adventofcode.com/2017/leaderboard/private/view/%s%s
399401 1. gzgreg (score: 312) *****|*****|.....|.....|..... 20 stars
400402 2. Unihedron (score: 306) *****|*****|.....|.....|..... 20 stars
401403 3. geisterfurz007 (score: 230) *****|*****|.....|.....|..... 20 stars
@@ -412,7 +414,7 @@ private static void assertLeaderboardResponse(String expectedId, ChatActions act
412414 13. Michael Prieto (score: 31) **^..|.....|.....|.....|..... 5 stars
413415 14. Simon (score: 26) **.^.|.....|.....|.....|..... 5 stars
414416 15. Hey, Michael, what's up? (score: 0) .....|.....|.....|.....|..... 0 stars
415- """ .formatted (expectedId ).stripTrailing ();
417+ """ .formatted (expectedId , joinCodeStr ).stripTrailing ();
416418
417419 assertMessage (expected , actual );
418420 }
0 commit comments