diff --git a/scouting/webserver/requests/requests.go b/scouting/webserver/requests/requests.go
index 1fc0ae4..fffafb3 100644
--- a/scouting/webserver/requests/requests.go
+++ b/scouting/webserver/requests/requests.go
@@ -310,14 +310,14 @@
 		a := response.MatchList[i]
 		b := response.MatchList[j]
 
-		aMatchTypeIndex, err := findIndexInList(MATCH_TYPE_ORDERING, a.CompLevel)
-		if err != nil {
-			err = errors.New(fmt.Sprint("Comp level ", a.CompLevel, " not found in sorting list ", MATCH_TYPE_ORDERING, " : ", err))
+		aMatchTypeIndex, err2 := findIndexInList(MATCH_TYPE_ORDERING, a.CompLevel)
+		if err2 != nil {
+			err = errors.New(fmt.Sprint("Comp level ", a.CompLevel, " not found in sorting list ", MATCH_TYPE_ORDERING, " : ", err2))
 			return false
 		}
-		bMatchTypeIndex, err := findIndexInList(MATCH_TYPE_ORDERING, b.CompLevel)
-		if err != nil {
-			err = errors.New(fmt.Sprint("Comp level ", b.CompLevel, " not found in sorting list ", MATCH_TYPE_ORDERING, " : ", err))
+		bMatchTypeIndex, err2 := findIndexInList(MATCH_TYPE_ORDERING, b.CompLevel)
+		if err2 != nil {
+			err = errors.New(fmt.Sprint("Comp level ", b.CompLevel, " not found in sorting list ", MATCH_TYPE_ORDERING, " : ", err2))
 			return false
 		}
 
diff --git a/scouting/webserver/requests/requests_test.go b/scouting/webserver/requests/requests_test.go
index 3b9033a..27a45e6 100644
--- a/scouting/webserver/requests/requests_test.go
+++ b/scouting/webserver/requests/requests_test.go
@@ -124,80 +124,78 @@
 
 // Validates that we can request the full match list.
 func TestRequestAllMatches(t *testing.T) {
-	t.Skip("TODO(phil/emily): Figure out why this test is failing.")
-
 	db := MockDatabase{
 		matches: []db.TeamMatch{
 			{
-				MatchNumber: 1, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 1, SetNumber: 1, CompLevel: "qm",
 				Alliance: "R", AlliancePosition: 1, TeamNumber: 5,
 			},
 			{
-				MatchNumber: 1, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 1, SetNumber: 1, CompLevel: "qm",
 				Alliance: "R", AlliancePosition: 2, TeamNumber: 42,
 			},
 			{
-				MatchNumber: 1, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 1, SetNumber: 1, CompLevel: "qm",
 				Alliance: "R", AlliancePosition: 3, TeamNumber: 600,
 			},
 			{
-				MatchNumber: 1, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 1, SetNumber: 1, CompLevel: "qm",
 				Alliance: "B", AlliancePosition: 1, TeamNumber: 971,
 			},
 			{
-				MatchNumber: 1, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 1, SetNumber: 1, CompLevel: "qm",
 				Alliance: "B", AlliancePosition: 2, TeamNumber: 400,
 			},
 			{
-				MatchNumber: 1, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 1, SetNumber: 1, CompLevel: "qm",
 				Alliance: "B", AlliancePosition: 3, TeamNumber: 200,
 			},
 			{
-				MatchNumber: 2, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 2, SetNumber: 1, CompLevel: "qm",
 				Alliance: "R", AlliancePosition: 1, TeamNumber: 6,
 			},
 			{
-				MatchNumber: 2, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 2, SetNumber: 1, CompLevel: "qm",
 				Alliance: "R", AlliancePosition: 2, TeamNumber: 43,
 			},
 			{
-				MatchNumber: 2, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 2, SetNumber: 1, CompLevel: "qm",
 				Alliance: "R", AlliancePosition: 3, TeamNumber: 601,
 			},
 			{
-				MatchNumber: 2, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 2, SetNumber: 1, CompLevel: "qm",
 				Alliance: "B", AlliancePosition: 1, TeamNumber: 972,
 			},
 			{
-				MatchNumber: 2, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 2, SetNumber: 1, CompLevel: "qm",
 				Alliance: "B", AlliancePosition: 2, TeamNumber: 401,
 			},
 			{
-				MatchNumber: 2, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 2, SetNumber: 1, CompLevel: "qm",
 				Alliance: "B", AlliancePosition: 3, TeamNumber: 201,
 			},
 			{
-				MatchNumber: 3, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 3, SetNumber: 1, CompLevel: "qm",
 				Alliance: "R", AlliancePosition: 1, TeamNumber: 7,
 			},
 			{
-				MatchNumber: 3, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 3, SetNumber: 1, CompLevel: "qm",
 				Alliance: "R", AlliancePosition: 2, TeamNumber: 44,
 			},
 			{
-				MatchNumber: 3, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 3, SetNumber: 1, CompLevel: "qm",
 				Alliance: "R", AlliancePosition: 3, TeamNumber: 602,
 			},
 			{
-				MatchNumber: 3, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 3, SetNumber: 1, CompLevel: "qm",
 				Alliance: "B", AlliancePosition: 1, TeamNumber: 973,
 			},
 			{
-				MatchNumber: 3, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 3, SetNumber: 1, CompLevel: "qm",
 				Alliance: "B", AlliancePosition: 2, TeamNumber: 402,
 			},
 			{
-				MatchNumber: 3, SetNumber: 1, CompLevel: "qual",
+				MatchNumber: 3, SetNumber: 1, CompLevel: "qm",
 				Alliance: "B", AlliancePosition: 3, TeamNumber: 202,
 			},
 		},
@@ -220,15 +218,15 @@
 			// MatchNumber, SetNumber, CompLevel
 			// R1, R2, R3, B1, B2, B3
 			{
-				1, 1, "qual",
+				1, 1, "qm",
 				5, 42, 600, 971, 400, 200,
 			},
 			{
-				2, 1, "qual",
+				2, 1, "qm",
 				6, 43, 601, 972, 401, 201,
 			},
 			{
-				3, 1, "qual",
+				3, 1, "qm",
 				7, 44, 602, 973, 402, 202,
 			},
 		},
