You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

105 lines
3.0 KiB

  1. using Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.BuyerAggregate;
  2. using Microsoft.eShopOnContainers.Services.Ordering.Domain.AggregatesModel.OrderAggregate;
  3. using System;
  4. using Xunit;
  5. public class BuyerAggregateTest
  6. {
  7. public BuyerAggregateTest()
  8. { }
  9. [Fact]
  10. public void Create_buyer_item_success()
  11. {
  12. //Arrange
  13. var identity = new Guid().ToString();
  14. //Act
  15. var fakeBuyerItem = new Buyer(identity);
  16. //Assert
  17. Assert.NotNull(fakeBuyerItem);
  18. }
  19. [Fact]
  20. public void Create_buyer_item_fail()
  21. {
  22. //Arrange
  23. var identity = string.Empty;
  24. //Act - Assert
  25. Assert.Throws<ArgumentNullException>(() => new Buyer(identity));
  26. }
  27. [Fact]
  28. public void add_payment_success()
  29. {
  30. //Arrange
  31. var cardTypeId = 1;
  32. var alias = "fakeAlias";
  33. var cardNumber = "124";
  34. var securityNumber = "1234";
  35. var cardHolderName = "FakeHolderNAme";
  36. var expiration = DateTime.Now.AddYears(1);
  37. var identity = new Guid().ToString();
  38. var fakeBuyerItem = new Buyer(identity);
  39. //Act
  40. var result = fakeBuyerItem.AddPaymentMethod(cardTypeId, alias, cardNumber, securityNumber, cardHolderName, expiration);
  41. //Assert
  42. Assert.NotNull(result);
  43. }
  44. [Fact]
  45. public void create_payment_method_success()
  46. {
  47. //Arrange
  48. var cardTypeId = 1;
  49. var alias = "fakeAlias";
  50. var cardNumber = "124";
  51. var securityNumber = "1234";
  52. var cardHolderName = "FakeHolderNAme";
  53. var expiration = DateTime.Now.AddYears(1);
  54. var fakePaymentMethod = new PaymentMethod(cardTypeId, alias, cardNumber, securityNumber, cardHolderName, expiration);
  55. //Act
  56. var result = new PaymentMethod(cardTypeId, alias, cardNumber, securityNumber, cardHolderName, expiration);
  57. //Assert
  58. Assert.NotNull(result);
  59. }
  60. [Fact]
  61. public void create_payment_method_expiration_fail()
  62. {
  63. //Arrange
  64. var cardTypeId = 1;
  65. var alias = "fakeAlias";
  66. var cardNumber = "124";
  67. var securityNumber = "1234";
  68. var cardHolderName = "FakeHolderNAme";
  69. var expiration = DateTime.Now.AddYears(-1);
  70. //Act - Assert
  71. Assert.Throws<ArgumentException>(() => new PaymentMethod(cardTypeId, alias, cardNumber, securityNumber, cardHolderName, expiration));
  72. }
  73. [Fact]
  74. public void payment_method_isEqualTo()
  75. {
  76. //Arrange
  77. var cardTypeId = 1;
  78. var alias = "fakeAlias";
  79. var cardNumber = "124";
  80. var securityNumber = "1234";
  81. var cardHolderName = "FakeHolderNAme";
  82. var expiration = DateTime.Now.AddYears(1);
  83. //Act
  84. var fakePaymentMethod = new PaymentMethod(cardTypeId, alias, cardNumber, securityNumber, cardHolderName, expiration);
  85. var result = fakePaymentMethod.IsEqualTo(cardTypeId, cardNumber, expiration);
  86. //Assert
  87. Assert.True(result);
  88. }
  89. }