public void ReportDeliveryFinal_ShouldReturnTrue_WhenSucceeds()
        {
            string trackingId = "PYJRB4HZ6";

            DAL.Receipient customer = new DAL.Receipient()
            {
                Name       = "Johannes",
                Street     = "Street",
                PostalCode = "A-1230"
            };
            var hop = new DAL.HopArrival()
            {
                Code = "BNDA01"
            };

            DAL.Parcel DALp = new DAL.Parcel()
            {
                TrackingId = trackingId,
                Receipient = customer,
                Sender     = customer
            };

            DALp.FutureHops.Add(hop);
            _mock.Setup(x => x.GetByTrackingID(trackingId)).Returns(DALp);
            _mock.Setup(x => x.Update(It.IsAny <DAL.Parcel>()));
            List <DAL.Webhook> deleteList = new List <DAL.Webhook>();

            _mockHook.Setup(x => x.GetWebhooksByTrackingID(trackingId)).Returns(deleteList);
            // Act
            var result = _controller.ReportDeliveryFinal(trackingId);

            // Assert
            Assert.IsTrue(result);
        }
        public void ReportDeliveryFinal_ShouldReturnFalse_WhenNotValid()
        {
            string trackingId = "PYJRB4HZ6";

            DAL.Receipient customer = new DAL.Receipient()
            {
                Name       = "Johannes",
                Street     = "Street",
                PostalCode = "FALSCH"
            };
            var hop = new DAL.HopArrival()
            {
                Code = "BNDA01"
            };

            DAL.Parcel DALp = new DAL.Parcel()
            {
                TrackingId = trackingId,
                Receipient = customer,
                Sender     = customer
            };

            DALp.FutureHops.Add(hop);
            _mock.Setup(x => x.GetByTrackingID(trackingId)).Returns(DALp);
            _mock.Setup(x => x.Update(It.IsAny <DAL.Parcel>()));
            // Act
            var result = _controller.ReportDeliveryFinal(trackingId);

            // Assert
            Assert.IsFalse(result);
        }
        public void StaffReportHop_ShouldReturnTrue_WhenSucceeds_Truck()
        {
            string trackingId = "PYJRB4HZ6";
            string code       = "BNDA04";

            DAL.Receipient customer = new DAL.Receipient()
            {
                Name       = "Johannes",
                Street     = "Street",
                PostalCode = "A-1230"
            };
            var hop = new DAL.HopArrival()
            {
                Code = "BNDA04"
            };

            DAL.Parcel DALp = new DAL.Parcel()
            {
                TrackingId = trackingId,
                Receipient = customer,
                Sender     = customer
            };

            DAL.Warehouse wh = new DAL.Warehouse()
            {
                Code        = "ABC233",
                Description = "Truck",
                HopType     = "Truck"
            };

            DALp.FutureHops.Add(hop);
            DALp.FutureHops.Add(hop);
            _mock.Setup(x => x.GetByTrackingID(trackingId)).Returns(DALp);
            _mockHOP.Setup(x => x.GetByCode(code)).Returns(wh);
            _mock.Setup(x => x.Update(It.IsAny <DAL.Parcel>()));
            //moq
            // Act
            var result = _controller.StaffReportHop(trackingId, code);

            // Assert
            Assert.IsTrue(result);
        }