Example #1
0
        public async Task CreateAssetEnquiry_ShouldThrowException_WhenAssetAlreadyExists_InDbContext()
        {
            var request = new TrackAReportRequest {
                ReferenceNumber = AssetEnquiryConstants.EXISTING_EXTERNAL_ID
            };

            using (var db = new InthubContext(ContextOptions))
            {
                var availabilityService = CreateAssetEnquiryService(db);

                var result = await Assert.ThrowsAsync <AssetAlreadyExistsException>(() => availabilityService.CreateAssetEnquiry(request));

                Assert.Equal(string.Format(ExceptionMessage.ASSET_ENQUIRY_ALREADY_EXISTS, AssetEnquiryConstants.EXISTING_EXTERNAL_ID), result.Message);
            }
        }
Example #2
0
        private void Seed()
        {
            using (var context = new InthubContext(ContextOptions))
            {
                context.Database.EnsureDeleted();
                context.Database.EnsureCreated();

                var assetEnquiries = SetAssetEnquries();
                if (assetEnquiries.Any())
                {
                    context.AssetEnquiries.AddRange(assetEnquiries);
                }

                context.SaveChanges();
            }
        }
Example #3
0
        public async Task CreateAssetEnquiry_ShouldReturn_Successfully_AfterCreatingAssetEnquriy_InDb()
        {
            var request = new TrackAReportRequest {
                ReferenceNumber = AssetEnquiryConstants.NEW_ENQIRY, AssetId = "123", AssetType = EAssetType.StreetLightFault
            };

            using (var db = new InthubContext(ContextOptions))
            {
                var availabilityService = CreateAssetEnquiryService(db);

                await availabilityService.CreateAssetEnquiry(request);

                var assetEnquiry = db.AssetEnquiries
                                   .FirstOrDefault(_ => _.ExternalReference == request.ReferenceNumber);
                Assert.NotNull(assetEnquiry);
            }
        }
Example #4
0
 private AssetEnquiryService CreateAssetEnquiryService(InthubContext db) =>
 new AssetEnquiryService(db);
Example #5
0
 public AssetEnquiryService(InthubContext db) => _db = db;