public void VoucherAggregate_Generate_InvalidEstateId_ErrorIsThrown() { VoucherAggregate aggregate = VoucherAggregate.Create(TestData.VoucherId); Should.Throw <ArgumentNullException>(() => { aggregate.Generate(TestData.OperatorIdentifier, Guid.Empty, TestData.TransactionId, TestData.GeneratedDateTime, TestData.Value); }); }
public void VoucherAggregate_Generate_InvalidValue_ErrorIsThrown(Decimal value) { VoucherAggregate aggregate = VoucherAggregate.Create(TestData.VoucherId); Should.Throw <ArgumentOutOfRangeException>(() => { aggregate.Generate(TestData.OperatorIdentifier, TestData.EstateId, TestData.TransactionId, TestData.GeneratedDateTime, value); }); }
public void VoucherAggregate_Redeem_VoucherNotGenerated_ErrorThrown() { VoucherAggregate aggregate = VoucherAggregate.Create(TestData.VoucherId); Should.Throw <InvalidOperationException>(() => { aggregate.Redeem(TestData.RedeemedDateTime); }); }
public void VoucherAggregate_Issue_VoucherNotGenerated_ErrorThrown() { VoucherAggregate aggregate = VoucherAggregate.Create(TestData.VoucherId); Should.Throw <InvalidOperationException>(() => { aggregate.Issue(TestData.RecipientEmail, TestData.RecipientMobile, TestData.IssuedDateTime); }); }
public void VoucherAggregate_AddBarcode_VoucherNotGenerated_ErrorThrown() { VoucherAggregate aggregate = VoucherAggregate.Create(TestData.VoucherId); Should.Throw <InvalidOperationException>(() => { aggregate.AddBarcode(TestData.Barcode); }); }
public static VoucherAggregate GetVoucherAggregateWithRecipientMobile() { VoucherAggregate aggregate = VoucherAggregate.Create(TestData.VoucherId); aggregate.Generate(TestData.OperatorIdentifier, TestData.EstateId, TestData.TransactionId, TestData.GeneratedDateTime, TestData.Value); aggregate.AddBarcode(TestData.Barcode); aggregate.Issue(null, TestData.RecipientMobile, TestData.IssuedDateTime); return(aggregate); }
public void VoucherAggregate_Redeem_VoucherNotIssued_ErrorThrown() { VoucherAggregate aggregate = VoucherAggregate.Create(TestData.VoucherId); aggregate.Generate(TestData.OperatorIdentifier, TestData.EstateId, TestData.TransactionId, TestData.GeneratedDateTime, TestData.Value); Should.Throw <InvalidOperationException>(() => { aggregate.Redeem(TestData.RedeemedDateTime); }); }
public void VoucherAggregate_AddBarcode_BarcodeIsAdded() { VoucherAggregate aggregate = VoucherAggregate.Create(TestData.VoucherId); aggregate.Generate(TestData.OperatorIdentifier, TestData.EstateId, TestData.TransactionId, TestData.GeneratedDateTime, TestData.Value); aggregate.AddBarcode(TestData.Barcode); var voucher = aggregate.GetVoucher(); voucher.Barcode.ShouldBe(TestData.Barcode); }
public void VoucherAggregate_Issue_EitherEmailOrMobileIsRequired_ErrorThrown(String recipientEmail, String recipientMobile) { VoucherAggregate aggregate = VoucherAggregate.Create(TestData.VoucherId); aggregate.Generate(TestData.OperatorIdentifier, TestData.EstateId, TestData.TransactionId, TestData.GeneratedDateTime, TestData.Value); Should.Throw <ArgumentNullException>(() => { aggregate.Issue(recipientEmail, recipientMobile, TestData.IssuedDateTime); }); }
public void VoucherAggregate_Issue_VoucherIsIssued() { VoucherAggregate aggregate = VoucherAggregate.Create(TestData.VoucherId); aggregate.Generate(TestData.OperatorIdentifier, TestData.EstateId, TestData.TransactionId, TestData.GeneratedDateTime, TestData.Value); aggregate.Issue(TestData.RecipientEmail, TestData.RecipientMobile, TestData.IssuedDateTime); var voucher = aggregate.GetVoucher(); voucher.IsIssued.ShouldBeTrue(); }
public void VoucherAggregate_Generate_VoucherAlreadyIssued_ErrorThrown() { VoucherAggregate aggregate = VoucherAggregate.Create(TestData.VoucherId); aggregate.Generate(TestData.OperatorIdentifier, TestData.EstateId, TestData.TransactionId, TestData.GeneratedDateTime, TestData.Value); aggregate.Issue(TestData.RecipientEmail, TestData.RecipientMobile, TestData.IssuedDateTime); Should.Throw <InvalidOperationException>(() => { aggregate.Generate(TestData.OperatorIdentifier, TestData.EstateId, TestData.TransactionId, TestData.IssuedDateTime, TestData.Value); }); }
public void VoucherAggregate_AddBarcode_InvalidBarcode_ErrorThrown(String barcode) { VoucherAggregate aggregate = VoucherAggregate.Create(TestData.VoucherId); aggregate.Generate(TestData.OperatorIdentifier, TestData.EstateId, TestData.TransactionId, TestData.GeneratedDateTime, TestData.Value); Should.Throw <ArgumentException>(() => { aggregate.AddBarcode(barcode); }); }
public void VoucherAggregate_Generate_VoucherIsGenerated() { VoucherAggregate aggregate = VoucherAggregate.Create(TestData.VoucherId); aggregate.Generate(TestData.OperatorIdentifier, TestData.EstateId, TestData.TransactionId, TestData.GeneratedDateTime, TestData.Value); var voucher = aggregate.GetVoucher(); voucher.IsGenerated.ShouldBeTrue(); voucher.EstateId.ShouldBe(TestData.EstateId); voucher.IsIssued.ShouldBeFalse(); voucher.GeneratedDateTime.ShouldBe(TestData.GeneratedDateTime); voucher.VoucherCode.ShouldNotBeNullOrEmpty(); voucher.TransactionId.ShouldBe(TestData.TransactionId); }
public void VoucherAggregate_CanBeCreated_IsCreated() { VoucherAggregate aggregate = VoucherAggregate.Create(TestData.VoucherId); aggregate.AggregateId.ShouldBe(TestData.VoucherId); }