1. when: "The shopping cart is retrieved"
    2. HttpResponse<Cart> response = httpClient.exchange(HttpRequest.GET('/shopping/cart'), Cart) (1)
    3. .blockingFirst()
    4. Cart cart = response.body()
    5. then: "The shopping cart is present as well as a session id header"
    6. response.header(HttpHeaders.AUTHORIZATION_INFO) != null (2)
    7. cart.items.isEmpty()
    1. String sessionId = response.header(HttpHeaders.AUTHORIZATION_INFO); (1)
    2. response = client.exchange(
    3. HttpRequest.POST("/shopping/cart/Apple", "")
    4. .header(HttpHeaders.AUTHORIZATION_INFO, sessionId), Cart.class) (2)
    1. val sessionId = response.header(HttpHeaders.AUTHORIZATION_INFO) (1)
    2. response = client.exchange(
    3. HttpRequest.POST("/shopping/cart/Apple", "")
    4. .header(HttpHeaders.AUTHORIZATION_INFO, sessionId), Cart::class.java) (2)
    5. .blockingFirst()
    6. cart = response.body()
    1The AUTHORIZATION_INFO is retrieved from the response
    2And then sent as a header in the subsequent request