Advertisement
Guest User

Untitled

a guest
Feb 28th, 2019
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.90 KB | None | 0 0
  1. [Test]//NOT FINISHED!
  2. public async Task C20577_Get_basket_content_invalid_travel_pass_error()
  3. {/*
  4. var account = await AccountBuilder.Find("add2.autotests@turnit.com").Get();
  5. var service = (await ServicesBuilder.GetTravelServices(account)).Take(1);
  6.  
  7. var journey = await JourneyBuilder.SearchOutbound().WithTravelAccount(account).GetFirstJourney();
  8. var basket = await BasketBuilder.AddOnewayJourney(journey).WithTravelAccount(account).WithTravelServices(service).WithFinishedPayment().GetBasket();
  9. */
  10. //1
  11. var authTokenClient = new AuthTokenClient
  12. {
  13. ClientId = "autotest_user",
  14. ClientSecret = "autotests",
  15. Username = "add1.autotests@turnit.com",
  16. Password = "autotests"
  17. };
  18. var authTokenRequest = await AuthTokenRequest.Successful(SimpleApiProvider, GrantType.Password, authTokenClient);
  19. var apiProviderWithTravelPass = new ApiProvider(Profiles.GetBaseUrl(TestContext.Parameters["environment"]), authTokenRequest.ResponseBody);
  20. //2
  21. var basketRequest = (await CreateShoppingBasketRequest.Successful(apiProviderWithTravelPass));
  22. var expectedBasket = ShoppingBasketRepository.LoadShoppingBasketDataByCode
  23. (basketRequest.ResponseBody.ShoppingBasketCode);
  24.  
  25. var shoppingBasket = new ShoppingBasket
  26. {
  27. Data = new ShoppingBasketData
  28. {
  29. Guid = basketRequest.ResponseBody.ShoppingBasketGuid,
  30. Code = basketRequest.ResponseBody.ShoppingBasketCode,
  31. Id = expectedBasket.Id
  32. }
  33. };
  34. //3
  35. var travelServicesRequest = await GetTravelServicesRequest.Successful(apiProviderWithTravelPass, CurrencyXc.EUR);
  36. //4
  37. var addTravelPassesParameters = new AddTravelPassesParameters
  38. {
  39. TravelPasses = travelServicesRequest.ResponseBody.TravelServices.Select(x => new AddTravelPassesParameters.TravelPass
  40. {
  41. TravelServiceId = x.TravelServiceGuid, //This might be wrong in basket builder!
  42. ConditionId = x.Conditions.First().ConditionGuid,
  43. ZonePairPriceId = x.Conditions.First().ZonePairPrices.First().ZonePairPriceGuid
  44. })
  45. };
  46. var addTravelPassRequest = await AddTravelPassesRequest.Successful(apiProviderWithTravelPass,
  47. basketRequest.ResponseBody.ShoppingBasketGuid, addTravelPassesParameters);
  48. //5
  49. var travelPassRequest = await GetTravelPassesRequest.Successful(apiProviderWithTravelPass);
  50. //6
  51. var searchParameters = new SearchJourneysParameters
  52. {
  53. Currency = CurrencyXc.EUR,
  54. DepartureDate = DateTime.Today.AddDays(1),
  55. OriginStopId = DomesticDirect.OriginRouteStop.StopId,
  56. DestinationStopId = DomesticDirect.DestinationRouteStop.StopId,
  57. Fareclasses = OneAdult,
  58. TravelPassNumber = travelPassRequest.ResponseBody.TravelPasses.First().Number
  59. };
  60. var journeyRequest =
  61. await SearchJourneysByTravelPassRequest.Successful(apiProviderWithTravelPass, searchParameters);
  62. //7
  63. var journeyAddParameters = new AddJourneysParameters
  64. {
  65. OutboundJourney = new JourneyToAdd(journeyRequest.ResponseBody.Journeys.First().JourneyGuid, PriceClass.Regular)
  66. };
  67. await AddJourneysRequest.Successful(apiProviderWithTravelPass,
  68. basketRequest.ResponseBody.ShoppingBasketGuid, journeyAddParameters);
  69. //8
  70. var payParameters = new PayWithExternalPaymentParameters
  71. {
  72. Currency = CurrencyXc.EUR,
  73. AdditionalInfo = "string",
  74. PaymentMethodIdentificator = "string",
  75. ReferenceNumber = null
  76. };
  77. await PayWithExternalPaymentRequest.Successful(apiProviderWithTravelPass,
  78. basketRequest.ResponseBody.ShoppingBasketGuid, payParameters);
  79. //9
  80.  
  81. var request = await GetShoppingBasketContentRequest.Failed(ApiProvider, basketRequest.ResponseBody.ShoppingBasketGuid);
  82.  
  83. try
  84. {
  85. Assert.AreEqual(HttpStatusCode.BadRequest, request.StatusCode);
  86. Assert.AreEqual(new ValidationError
  87. {
  88. ErrorCode = "invalid_travel_passes",
  89. ErrorReason = null
  90. }, request.ResponseBody);
  91. }
  92. finally
  93. {
  94. await SalesEngine.DeleteBasket(shoppingBasket);
  95. }
  96. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement