Couple small bug fixes
diff --git a/api/api.go b/api/api.go index ca2d365..317690d 100644 --- a/api/api.go +++ b/api/api.go
@@ -420,7 +420,11 @@ return fmt.Errorf("CheckOrderFulfillability: Could not parse HTTP response to pb3: %v", err) } - // We ignore price for now. This is difficult to verify without knowing aggregator specific taxes/fees. + // Price is difficult to verify without knowing aggregator specific taxes/fees. We only check that it is present. + if resp.GetFeesAndTaxes() == nil || cmp.Diff(fpb.Price{}, *resp.GetFeesAndTaxes(), cmp.Comparer(proto.Equal)) == "" { + return fmt.Errorf("invalid response. CheckOrderFulfillability.FeesAndTaxes must be populated. Offending response: %v", resp) + } + orderFulfillability := resp.GetFulfillability() // TODO(ccawdrey): Add validation cases for other OrderFulFillability enums. if diff := cmp.Diff(orderFulfillability.GetResult(), mpb.OrderFulfillability_CAN_FULFILL); diff != "" {
diff --git a/utils/utils.go b/utils/utils.go index 7e2bf7c..6e4d65d 100644 --- a/utils/utils.go +++ b/utils/utils.go
@@ -90,7 +90,7 @@ } for i := 0; i < int(availability.GetSpotsOpen()); i++ { - // This deterministic which is fine given that we just want to get a mix of ticket types. + // This is deterministic which is fine given that we just want to get a mix of ticket types. ticketTypeIndex := rand.Intn(len(tickets)) // Calculate price of line item. if lineItem.GetPrice().GetCurrencyCode() == "" && tickets[ticketTypeIndex].GetPrice().GetCurrencyCode() != "" { @@ -121,8 +121,7 @@ merchantServiceID := merchantService(service.GetMerchantId(), service.GetServiceId()) for _, ticket := range service.GetTicketType() { // TicketType can't have an empty price message or ticket_type_id. If it does it's excluded from map. - diff := cmp.Diff(&fpb.Price{}, ticket.GetPrice(), cmp.Comparer(proto.Equal)) - if len(ticket.GetTicketTypeId()) == 0 || diff == "" { + if ticket.GetPrice() == nil || len(ticket.GetTicketTypeId()) == 0 || cmp.Diff(fpb.Price{}, *ticket.GetPrice(), cmp.Comparer(proto.Equal)) == "" { continue }