6. Test implementation (both)

All partners that are using v3 REST API of the Booking server specification should test their server using the Maps Booking v3 Test Client.

Partners using v2 of the gRPC specification should test their server internally using the Maps Booking v2 Test Client.

Once you have the tests passing internally and have your server security certificate set up, Google will run a final set of tests to confirm all endpoints are working correctly and the server certificate is valid. Please note that our testing client only supports the CheckAvailabilty/CreateBooking flow and does not support leases.

When testing v2 API you can also run the following command to validate your certificate is installed correctly on your server (replace YOUR_URL and YOUR_PORT with your Booking server details):

echo "" | openssl s_client  -connect YOUR_URL:YOUR_PORT  -showcerts -CApath /etc/ssl/certs

Google will test the following use cases to ensure the functionality of your Booking server implementation. We will also test and monitor latency. All of these tests must pass prior to Step 8.

Connectivity test cases

  • Endpoint secured via SSL
  • Exposes valid server certificate
  • Accepts our client certificate
  • Rejects invalid client certificate
  • Health check implemented and succeeds

Booking creation test cases

  • A booking can be created from a requested slot
  • Business logic error show up in the response if booking creation fails
  • If a CreateBooking attempt succeeds, the same response is returned when the same CreateBookingRequest (including idempotency_token) is received again
  • If a CreateBooking attempt fails, retry when the same CreateBookingRequest is received again
  • Bookings show up in the merchant's interface
  • Classes can be filled to the expected max. number of spots

Booking mutation test cases

  • Existing bookings can be canceled
  • Existing bookings can be rescheduled to a different slot of the same service
  • Rescheduling to an unavailable slot fails

Booking information retrieval test cases

  • Booking status and prepayment status can be read for a created, updated, or canceled booking
  • A collection of bookings can be listed for a user

Have questions?

Be sure to check out our FAQs.

Next step

NEXT STEP: Call Google APIs for real-time updates (you)