Add a bracket report.

This commit is contained in:
Patrick Fairbank
2022-08-20 21:23:00 -07:00
parent b812b9e16e
commit 37073e4a1d
6 changed files with 77 additions and 18 deletions

View File

@@ -21,7 +21,7 @@ func TestRankingsCsvReport(t *testing.T) {
recorder := web.getHttpResponse("/reports/csv/rankings")
assert.Equal(t, 200, recorder.Code)
assert.Equal(t, "text/plain", recorder.HeaderMap["Content-Type"][0])
assert.Equal(t, "text/plain", recorder.Header()["Content-Type"][0])
expectedBody := "Rank,TeamId,RankingPoints,AutoPoints,EndgamePoints,TeleopPoints,Wins,Losses,Ties," +
"Played\n1,254,20,625,90,554,3,2,1,10\n2,1114,18,700,625,90,1,3,2,10\n\n"
assert.Equal(t, expectedBody, recorder.Body.String())
@@ -38,7 +38,7 @@ func TestRankingsPdfReport(t *testing.T) {
// Can't really parse the PDF content and check it, so just check that what's sent back is a PDF.
recorder := web.getHttpResponse("/reports/pdf/rankings")
assert.Equal(t, 200, recorder.Code)
assert.Equal(t, "application/pdf", recorder.HeaderMap["Content-Type"][0])
assert.Equal(t, "application/pdf", recorder.Header()["Content-Type"][0])
}
func TestScheduleCsvReport(t *testing.T) {
@@ -58,7 +58,7 @@ func TestScheduleCsvReport(t *testing.T) {
recorder := web.getHttpResponse("/reports/csv/schedule/qualification")
assert.Equal(t, 200, recorder.Code)
assert.Equal(t, "text/plain", recorder.HeaderMap["Content-Type"][0])
assert.Equal(t, "text/plain", recorder.Header()["Content-Type"][0])
expectedBody := "Match,Type,Time,Red1,Red1IsSurrogate,Red2,Red2IsSurrogate,Red3,Red3IsSurrogate,Blue1," +
"Blue1IsSurrogate,Blue2,Blue2IsSurrogate,Blue3,Blue3IsSurrogate\n1,qualification," + match1Time.String() +
",1,false,2,false,3,false,4,true,5,true,6,true\n2,qualification," + match2Time.String() +
@@ -79,7 +79,7 @@ func TestSchedulePdfReport(t *testing.T) {
// Can't really parse the PDF content and check it, so just check that what's sent back is a PDF.
recorder := web.getHttpResponse("/reports/pdf/schedule/practice")
assert.Equal(t, 200, recorder.Code)
assert.Equal(t, "application/pdf", recorder.HeaderMap["Content-Type"][0])
assert.Equal(t, "application/pdf", recorder.Header()["Content-Type"][0])
}
func TestTeamsCsvReport(t *testing.T) {
@@ -94,7 +94,7 @@ func TestTeamsCsvReport(t *testing.T) {
recorder := web.getHttpResponse("/reports/csv/teams")
assert.Equal(t, 200, recorder.Code)
assert.Equal(t, "text/plain", recorder.HeaderMap["Content-Type"][0])
assert.Equal(t, "text/plain", recorder.Header()["Content-Type"][0])
expectedBody := "Number,Name,Nickname,City,StateProv,Country,RookieYear,RobotName,HasConnected\n254,\"NASA\"," +
"\"The Cheesy Poofs\",\"San Jose\",\"CA\",\"USA\",1999,\"Barrage\",false\n1114,\"GM\",\"Simbotics\"," +
"\"St. Catharines\",\"ON\",\"Canada\",2003,\"Simbot Evolution\",false\n\n"
@@ -111,7 +111,7 @@ func TestTeamsPdfReport(t *testing.T) {
// Can't really parse the PDF content and check it, so just check that what's sent back is a PDF.
recorder := web.getHttpResponse("/reports/pdf/teams")
assert.Equal(t, 200, recorder.Code)
assert.Equal(t, "application/pdf", recorder.HeaderMap["Content-Type"][0])
assert.Equal(t, "application/pdf", recorder.Header()["Content-Type"][0])
}
func TestWpaKeysCsvReport(t *testing.T) {
@@ -124,7 +124,16 @@ func TestWpaKeysCsvReport(t *testing.T) {
recorder := web.getHttpResponse("/reports/csv/wpa_keys")
assert.Equal(t, 200, recorder.Code)
assert.Equal(t, "text/csv", recorder.HeaderMap["Content-Type"][0])
assert.Equal(t, "attachment; filename=wpa_keys.csv", recorder.HeaderMap["Content-Disposition"][0])
assert.Equal(t, "text/csv", recorder.Header()["Content-Type"][0])
assert.Equal(t, "attachment; filename=wpa_keys.csv", recorder.Header()["Content-Disposition"][0])
assert.Equal(t, "254,12345678\r\n1114,9876543210\r\n", recorder.Body.String())
}
func TestBracketPdfReport(t *testing.T) {
web := setupTestWeb(t)
recorder := web.getHttpResponse("/reports/pdf/bracket")
assert.Equal(t, 200, recorder.Code)
assert.Equal(t, "text/html; charset=utf-8", recorder.Header()["Content-Type"][0])
assert.Contains(t, recorder.Body.String(), "Finals")
}