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.

104 lines
2.9 KiB

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