"port":              float64(52001),
						"router_group_guid": "router-group-guid-002",
						"backend_ip":        "1.2.3.4",
						"backend_port":      float64(60000),
						"modification_tag":  map[string]interface{}{"guid": "", "index": float64(0)},
						"ttl":               float64(0),
					}
					log_data := map[string][]interface{}{"tcp_mapping_deletion": []interface{}{data}}

					Expect(logger.Logs()[0].Message).To(ContainSubstring("request"))
					Expect(logger.Logs()[0].Data["tcp_mapping_deletion"]).To(Equal(log_data["tcp_mapping_deletion"]))
				})

				Context("when database fails to delete", func() {
					BeforeEach(func() {
						database.DeleteTcpRouteMappingReturns(errors.New("stuff broke"))
					})
					It("responds with a server error", func() {
						request = handlers.NewTestRequest(tcpMappings)
						tcpRouteMappingsHandler.Delete(responseRecorder, request)

						Expect(responseRecorder.Code).To(Equal(http.StatusInternalServerError))
						Expect(responseRecorder.Body.String()).To(ContainSubstring("stuff broke"))
					})
				})

				Context("when route to be deleted is not present", func() {
					BeforeEach(func() {
						database.DeleteTcpRouteMappingReturns(db.DBError{Type: db.KeyNotFound, Message: "The specified key is not found"})
					})
					It("doesn't fail", func() {