Example #1
0
 public ExchangeImpl()
 {
     exchangeRepoService = ExchangeRepoServiceBean.getBean();
     conditionService    = ConditionServiceBean.getBean();
     patronService       = PatronServiceBean.getBean();
     mediaService        = MediaServiceBean.getBean();
 }
 public PatronInsertUpdateForm(PatronForm patronForm)
 {
     InitializeComponent();
     patronService   = PatronServiceBean.getBean();
     this.patronForm = patronForm;
     employeeService = EmployeeServiceBean.getBean();
 }
Example #3
0
 public EmployeeInsertUpdateSearchForm(EmployeeForm employeeForm)
 {
     InitializeComponent();
     employeeService   = EmployeeServiceBean.getBean();
     this.employeeForm = employeeForm;
     patronService     = PatronServiceBean.getBean();
 }
Example #4
0
 public CheckOutImpl()
 {
     checkOutRepoService = CheckOutRepoServiceBean.getBean();
     conditionService    = ConditionServiceBean.getBean();
     patronService       = PatronServiceBean.getBean();
     mediaService        = MediaServiceBean.getBean();
     employeeService     = EmployeeServiceBean.getBean();
 }
Example #5
0
 public static PatronService getBean()
 {
     if (patronService == null)
     {
         patronService = new PatronImpl();
     }
     return(patronService);
 }
 public CheckOutDetailsForm()
 {
     InitializeComponent();
     patronService   = PatronServiceBean.getBean();
     employeeService = EmployeeServiceBean.getBean();
     mediaService    = MediaServiceBean.getBean();
     exchangeService = ExchangeServiceBean.getBean();
     checkOutService = CheckOutServiceBean.getBean();
 }
        public void CheckInBookLate()
        {
            CheckOut(barcode1);

            const int daysLate = 2;

            SetTimeServiceToLateByDays(Classification1, daysLate);
            scanner.AcceptBarcode(barcode1);

            var patron = new PatronService().Retrieve(patronId1);

            Assert.That(patron.Balance, Is.EqualTo(RetrievePolicy(Classification1).FineAmount(daysLate)));
        }
        public void Add_New_Patron()
        {
            var mockSet = new Mock <DbSet <Patron> >();
            var mockCtx = new Mock <LibraryDbContext>();

            mockCtx.Setup(c => c.Patrons).Returns(mockSet.Object);
            var sut = new PatronService(mockCtx.Object);

            sut.Add(new Patron());

            mockCtx.Verify(s => s.Add(It.IsAny <Patron>()), Times.Once());
            mockCtx.Verify(c => c.SaveChanges(), Times.Once());
        }
        public void CheckInBook()
        {
            CheckOut(barcode1);
            scanner.AcceptBarcode(barcode1);

            var holding = holdingService.Retrieve(barcode1);

            Assert.That(holding.HeldByPatronId, Is.EqualTo(Holding.NoPatron));
            Assert.That(holding.IsCheckedOut, Is.False);

            var patron = new PatronService().Retrieve(patronId1);

            Assert.That(patron.Holdings.Count, Is.EqualTo(0));
        }
        public void CheckOutBook()
        {
            scanner.AddNewMaterial(Isbn1);

            TimeService.NextTime = CheckoutTime;
            scanner.AcceptLibraryCard(patronId1);
            scanner.AcceptBarcode(barcode1);
            scanner.CompleteCheckout();

            var holding = holdingService.Retrieve(barcode1);

            Assert.That(holding.HeldByPatronId, Is.EqualTo(patronId1));
            Assert.That(holding.CheckOutTimestamp, Is.EqualTo(CheckoutTime));

            var patron = new PatronService().Retrieve(patronId1);

            Assert.That(patron.Holdings, Is.EqualTo(new List <string> {
                barcode1
            }));
        }
        public void Get_Patron_By_Id()
        {
            var patrons = GetPatrons().AsQueryable();

            var mockSet = new Mock <DbSet <Patron> >();

            mockSet.As <IQueryable <Patron> >().Setup(b => b.Provider).Returns(patrons.Provider);
            mockSet.As <IQueryable <Patron> >().Setup(b => b.Expression).Returns(patrons.Expression);
            mockSet.As <IQueryable <Patron> >().Setup(b => b.ElementType).Returns(patrons.ElementType);
            mockSet.As <IQueryable <Patron> >().Setup(b => b.GetEnumerator()).Returns(patrons.GetEnumerator);

            var mockCtx = new Mock <LibraryDbContext>();

            mockCtx.Setup(c => c.Patrons).Returns(mockSet.Object);

            var sut    = new PatronService(mockCtx.Object);
            var branch = sut.Get(1);

            branch.FirstName.Should().Be("Jane");
        }
        public void Initialize()
        {
            classificationService = new StubClassificationService();
            classificationService.AddBook(Classification1, "T1", "A1", "2001");
            classificationService.AddBook(Classification2, "T2", "A2", "2002");

            scanner = new ScanStation(Branch1Id, classificationService);

            holdingService = new HoldingService();
            holdingService.DeleteAllHoldings();

            patronService = new PatronService();
            PatronService.DeleteAllPatrons();

            patronId1 = patronService.Add("Joe");
            patronId2 = patronService.Add("Jane");

            var holding = scanner.AddNewMaterial(Isbn1);

            Assert.That(holding.Barcode, Is.EqualTo(barcode1));
        }
        public void Get_Patron_Holds()
        {
            var options = new DbContextOptionsBuilder <LibraryDbContext>()
                          .UseInMemoryDatabase("Gets_patron_holds")
                          .Options;

            using (var context = new LibraryDbContext(options))
            {
                var card = new LibraryCard
                {
                    Id = 83
                };

                var hold = new Hold
                {
                    Id           = 56,
                    LibraryAsset = new Book {
                        Id = 1
                    },
                    LibraryCard = card
                };

                var patron = new Patron
                {
                    Id          = 8,
                    LibraryCard = card
                };

                context.Patrons.Add(patron);
                context.Holds.Add(hold);
                context.SaveChanges();
            }

            using (var context = new LibraryDbContext(options))
            {
                var sut    = new PatronService(context);
                var result = sut.GetHolds(8);
                result.Count().Should().Be(1);
            }
        }
        public void Get_All_Patrons()
        {
            var patrons = GetPatrons().AsQueryable();

            var mockSet = new Mock <DbSet <Patron> >();

            mockSet.As <IQueryable <Patron> >().Setup(b => b.Provider).Returns(patrons.Provider);
            mockSet.As <IQueryable <Patron> >().Setup(b => b.Expression).Returns(patrons.Expression);
            mockSet.As <IQueryable <Patron> >().Setup(b => b.ElementType).Returns(patrons.ElementType);
            mockSet.As <IQueryable <Patron> >().Setup(b => b.GetEnumerator()).Returns(patrons.GetEnumerator);

            var mockCtx = new Mock <LibraryDbContext>();

            mockCtx.Setup(c => c.Patrons).Returns(mockSet.Object);

            var sut         = new PatronService(mockCtx.Object);
            var queryResult = sut.GetAll().ToList();

            queryResult.Should().AllBeOfType(typeof(Patron));
            queryResult.Should().HaveCount(2);
            queryResult.Should().Contain(a => a.FirstName == "Jane");
            queryResult.Should().Contain(a => a.FirstName == "Jack");
        }
        public void Get_Patron_Checkouts()
        {
            var options = new DbContextOptionsBuilder <LibraryDbContext>()
                          .UseInMemoryDatabase("Gets_patron_checkouts")
                          .Options;

            using (var context = new LibraryDbContext(options))
            {
                var book = new Book
                {
                    Id    = 231,
                    Title = "Compilers - Principles, Techniques, and Tools"
                };

                var video = new Video
                {
                    Id    = 8878,
                    Title = "The Great British Baking Show"
                };

                var card = new LibraryCard
                {
                    Id = 801
                };

                var patron = new Patron
                {
                    Id          = 72,
                    LibraryCard = card
                };

                context.Patrons.Add(patron);
                context.Videos.Add(video);
                context.Books.Add(book);
                context.SaveChanges();

                var checkouts = new List <Checkout>
                {
                    new Checkout
                    {
                        Id           = 1992,
                        LibraryCard  = card,
                        LibraryAsset = book
                    },
                    new Checkout
                    {
                        Id           = 1993,
                        LibraryCard  = card,
                        LibraryAsset = video
                    },
                    new Checkout
                    {
                        Id           = 1994,
                        LibraryCard  = card,
                        LibraryAsset = new Book {
                            Title = "Frankenstein "
                        }
                    }
                };

                context.Checkouts.AddRange(checkouts);
                context.SaveChanges();
            }

            using (var context = new LibraryDbContext(options))
            {
                var sut       = new PatronService(context);
                var result    = sut.GetCheckouts(72);
                var checkouts = result as Checkout[] ?? result.ToArray();
                checkouts.Length.Should().Be(3);
            }
        }
 public void Initialize()
 {
     PatronService.DeleteAllPatrons();
     service = new PatronService();
     id1     = service.Add(Name1);
 }
 public void Persistence()
 {
     service = new PatronService();
     Assert.That(service.Retrieve(id1), Is.Not.Null);
 }
Example #18
0
 public PatronForm()
 {
     InitializeComponent();
     patronService = PatronServiceBean.getBean();
 }
        public void Get_Patron_Checkout_History()
        {
            var options = new DbContextOptionsBuilder <LibraryDbContext>()
                          .UseInMemoryDatabase("Gets_patron_checkout_history")
                          .Options;

            using (var context = new LibraryDbContext(options))
            {
                var book = new Book
                {
                    Id    = 86,
                    Title = "The Enchiridion"
                };

                var video = new Video
                {
                    Id    = 2193,
                    Title = "Blade Runner"
                };

                var card = new LibraryCard
                {
                    Id = 82
                };

                var patron = new Patron
                {
                    Id          = 7,
                    LibraryCard = card
                };

                context.Patrons.Add(patron);
                context.Videos.Add(video);
                context.Books.Add(book);
                context.SaveChanges();

                var checkoutHistories = new List <CheckoutHistory>
                {
                    new CheckoutHistory
                    {
                        Id           = 1,
                        LibraryCard  = card,
                        LibraryAsset = book
                    },
                    new CheckoutHistory
                    {
                        Id           = 2,
                        LibraryCard  = card,
                        LibraryAsset = video
                    }
                };

                context.CheckoutHistories.AddRange(checkoutHistories);
                context.SaveChanges();
            }

            using (var context = new LibraryDbContext(options))
            {
                var sut               = new PatronService(context);
                var result            = sut.GetCheckoutHistory(7);
                var checkoutHistories = result as CheckoutHistory[] ?? result.ToArray();
                checkoutHistories.Length.Should().Be(2);
            }
        }
Example #20
0
 public PatronStatistic()
 {
     InitializeComponent();
     patronService = PatronServiceBean.getBean();
 }