public EquipmentBundle CreateStandardBundle()
        {
            var monitor = new EquipmentItem()
            {
                Name = "Monitor"
            };

            var keyboard = new EquipmentItem()
            {
                Name = "Keyboard"
            };

            var headset = new EquipmentItem()
            {
                Name = "Headset"
            };

            var standardBundle = new EquipmentBundle();

            standardBundle.Add(monitor);
            standardBundle.Add(keyboard);
            standardBundle.Add(headset);

            return(standardBundle);
        }
        public void AssignStandardBundleToEmployee_EmployeeId_ReturnsCorrectEmployee()
        {
            var employeeId = new Guid();

            var testItem = new EquipmentItem()
            {
                Name = "Test"
            };
            var testBundle = new EquipmentBundle();

            testBundle.Add(testItem);
            var bundleFactory = new Mock <IEquipmentBundleFactory>();

            bundleFactory.Setup(x => x.CreateStandardBundle())
            .Returns(testBundle);

            var employeeService = new Mock <IEmployeeService>();
            var testEmployee    = new Employee()
            {
                EmployeeId = employeeId,
                Bundle     = testBundle
            };

            employeeService.Setup(x => x.Connect(It.IsAny <Guid>(), It.IsAny <EquipmentBundle>()))
            .Returns(testEmployee);

            var auditService = new Mock <IAuditService>();
            var service      = new EquipmentService.EquipmentService(bundleFactory.Object, employeeService.Object, auditService.Object);
            var result       = service.AssignStandardBundleToEmployee(employeeId);

            Assert.Equal(employeeId, result.EmployeeId);
            Assert.Single(result.Bundle.Items);
            auditService.Verify(x => x.WriteEmploeeInformation(It.Is <Employee>(y => y == testEmployee)));
        }
 public Employee Connect(Guid employGuid, EquipmentBundle bundle)
 {
     return(new Employee()
     {
         EmployeeId = employGuid,
         Bundle = bundle
     });
 }
Exemplo n.º 4
0
 public void AddStatsFromAllEquipments(EquipmentBundle bundle)
 {
     AddWeapon(bundle.Weapon);
     AddEquipmentData(bundle.Head);
     AddEquipmentData(bundle.Feet);
     AddEquipmentData(bundle.OffHand);
     AddEquipmentData(bundle.Pet);
 }
        public EquipmentBundle CreateStandardBundle()
        {
            var testItem = new EquipmentItem {
                Name = "Test"
            };

            var testBundle = new EquipmentBundle();

            testBundle.Add(testItem);

            return(testBundle);
        }
        public void AssignStandardBundleToEmployee_EmployeeId_ReturnsCorrectEmployee()
        {
            // Mock: Simulate the behavior of service

            // Arrange
            var employeeId = new Guid();
            var testItem   = new EquipmentItem
            {
                Name = "Test"
            };

            var testBundle = new EquipmentBundle();

            testBundle.Add(testItem);

            // bundle Mock
            var bundleFactoryMock = new Mock <IEquipmentBundleFactory>();

            // function to Mock
            bundleFactoryMock.Setup(x => x.CreateStandardBundle()).Returns(testBundle);


            // Mock Employee
            var testEmployee = new Employee
            {
                EmployeeId = employeeId,
                Bundle     = testBundle
            };
            var employeeServiceMock = new Mock <IEmployeeService>();

            // connect will work with any Guid or any bundle
            //employeeServiceMock.Setup(x => x.Connect(It.Is<Guid>(y => y == employeeId), It.IsAny<EquipmentBundle>()))
            //    .Returns(testEmployee);
            employeeServiceMock.Setup(x => x.Connect(It.IsAny <Guid>(), It.IsAny <EquipmentBundle>()))
            .Returns(testEmployee);

            var auditServiceMock = new Mock <IAuditService>();

            var service = new EquipmentService.EquipmentService(bundleFactoryMock.Object, employeeServiceMock.Object, auditServiceMock.Object);


            // Act
            var result = service.AssignStandardBundleToEmployee(employeeId);


            // Assert
            Assert.Equal(employeeId, result.EmployeeId);
            Assert.Single(result.Bundle.Items);
            auditServiceMock.Verify(x => x.WriteEmployeeInformation(It.Is <Employee>(y => y == testEmployee)));
        }
Exemplo n.º 7
0
        public void Add_NewItemPassed_ItemAddedInInternalList()
        {
            var item = new EquipmentItem()
            {
                Name = "Item"
            };

            var bundle = new EquipmentBundle();

            bundle.Add(item);

            Assert.Single(bundle.Items);
            Assert.Equal(item, bundle.Items.Single());
        }
        public async Task <IActionResult> Create([Bind("Title, Description, Status")] EquipmentBundle bundle)
        {
            if (ModelState.IsValid)
            {
                var now = DateTime.Now;
                bundle.CreatedOn = now;
                bundle.UpdatedOn = now;

                _context.EquipmentBundles.Add(bundle);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Details), new { id = bundle.Id }));
            }

            return(RedirectToAction(nameof(Index)));
        }
        public async Task <IActionResult> UnArchive(EquipmentBundle bundle)
        {
            var bundleInDb = _context.EquipmentBundles.Single(x => x.Id == bundle.Id);

            if (bundleInDb == null)
            {
                return(RedirectToAction(nameof(Details), new { id = bundle.Id }));
            }

            bundleInDb.Status    = bundle.Status;
            bundleInDb.UpdatedOn = DateTime.Now;

            await _context.SaveChangesAsync();

            return(RedirectToAction(nameof(Details), new { id = bundle.Id }));
        }
Exemplo n.º 10
0
        public ActionResult Save(EquipmentBundle equipmentBundle)
        {
            if (equipmentBundle.Id == 0)
            {
                _context.EquipmentBundles.Add(equipmentBundle);
            }
            else
            {
                var equipmentInDb = _context.EquipmentBundles.Single(x => x.Id == equipmentBundle.Id);
                equipmentInDb.Title       = equipmentBundle.Title.Trim();
                equipmentInDb.Description = equipmentBundle.Description.Trim();
            }

            _context.SaveChanges();
            return(RedirectToAction("Details", new { id = equipmentBundle.Id }));
        }
Exemplo n.º 11
0
        public void ConnectEmployerAndEquipmentBundle()
        {
            var item = new EquipmentItem()
            {
                Name = "Monitor"
            };

            var bundle = new EquipmentBundle();

            bundle.Add(item);

            var service = new EmployeeService();

            var result = service.Connect(new Guid(), bundle);

            Assert.Equal(bundle, result.Bundle);
        }
        public async Task <IActionResult> Update([Bind("Id, Title, Description, Status")] EquipmentBundle bundle)
        {
            if (ModelState.IsValid)
            {
                var bundleInDb = _context.EquipmentBundles.Single(x => x.Id == bundle.Id);

                if (bundleInDb == null)
                {
                    return(RedirectToAction(nameof(Details), new { id = bundle.Id }));
                }

                bundleInDb.Title       = bundle.Title;
                bundleInDb.Description = bundle.Description;
                bundleInDb.Status      = bundle.Status;

                bundleInDb.UpdatedOn = DateTime.Now;

                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Details), new { id = bundle.Id }));
            }

            return(RedirectToAction(nameof(Index)));
        }
Exemplo n.º 13
0
        public ActionResult AddEquipmentToBundle(EquipmentBundle equipmentBundle)
        {
            var unpreparedEquipmentIds = Request.Form["equipmentListItems"];
            var equipmentIds           = unpreparedEquipmentIds.Split(',').Select(x => Convert.ToInt32(x)).ToList();
            var equipmentBundleInDb    = _context.EquipmentBundles.Include("Equipments").Single(x => x.Id == equipmentBundle.Id);

            if (equipmentBundleInDb == null)
            {
                return(HttpNotFound());
            }

            foreach (var equipmentId in equipmentIds)
            {
                var equipment = _context.Equipments.Single(x => x.Id == equipmentId);
                if (equipment == null)
                {
                    return(HttpNotFound());
                }
                equipmentBundleInDb.Equipments.Add(equipment);
            }

            _context.SaveChanges();
            return(RedirectToAction("Details", new { id = equipmentBundle.Id }));
        }
 public Employee Connect(Guid EmployeeId, EquipmentBundle Bundle) => new Employee
 {
     EmployeeId = EmployeeId, Bundle = Bundle
 };