コード例 #1
0
        public void SaveTest()
        {
            var provider = new MultiWeekFakeBiometricRepository();
            var range    = provider.GetNewObligatedRange();

            Assert.True(range.ObligatedRangeWeeks.Count == 21);

            var w1 = range.ObligatedRangeWeeks.Take(7);
            var w2 = range.ObligatedRangeWeeks.Skip(7).Take(7);
            var w3 = range.ObligatedRangeWeeks.Skip(14).Take(7);

            w1.ForEach(o => Assert.True(o.WeekNumber == 1));
            w2.ForEach(o => Assert.True(o.WeekNumber == 2));
            w3.ForEach(o => Assert.True(o.WeekNumber == 3));



            var service = new ObligatedRangesService();

            service.Save(range);

            var l = range.ObligatedRangeWeeks.ToList();

            l.AddRange(provider.GetWeek(4));
            range.ObligatedRangeWeeks = l;


            service.Save(range);

            Assert.True(range.ObligatedRangeWeeks.Count == 28);

            // DELETE test
            range.ObligatedRangeWeeks.Skip(7).Take(7).ForEach(o => { o.IsRemoved = true; });
            service.Save(range);


            using (var db = new EngineContext())
            {
                var updatedRange = db.ObligatedRanges.Find(range.Id);


                w1 = updatedRange.ObligatedRangeWeeks.Take(7);
                w2 = updatedRange.ObligatedRangeWeeks.Skip(7).Take(7);
                Assert.True(updatedRange.ObligatedRangeWeeks.Count == 21);

                w1.ForEach(o => Assert.True(o.WeekNumber == 1));
                w2.ForEach(o => Assert.True(o.WeekNumber == 3));
            }


            service.Delete(range.Id);
        }
コード例 #2
0
        public void MultiWeekPersonnelTaradodTestDetail()
        {
            // ایجاد دیتای فیک
            var fakeBiometricRepository = new MultiWeekFakeBiometricRepository();

            fakeBiometricRepository.init();



            // اطلاعات از تاریخ تا تاریخ را بده برای پرسنل خاص
            var c             = new PersonnelTaradodInfoService();
            var personnelId   = fakeBiometricRepository.personnel.Id;
            var fromDate      = DateTime.Now;
            var toDate        = DateTime.Now.AddDays(15);
            var biometricData = c.GetBiometricData(personnelId, fromDate, toDate);


            // بازه موظفی شخص
            ObligatedRange obligatedRange = c.GetObligatedRange(personnelId);

            Assert.NotNull(obligatedRange);
            Assert.True(obligatedRange.ObligatedRangeWeeks.Count >= 14);


            // محاسبه اطلاعات
            List <BiometryCalculatedDetail> taradodInfo = c.CompareAndJoin(fakeBiometricRepository.workgroupRange.DateTime.Value, toDate, biometricData, obligatedRange);

            // روز اول
            var firstDay = taradodInfo.ElementAt(1);

            /*ValidateFirst(firstDay);
             *
             * var nineDay=taradodInfo.ElementAt(9);
             * ValidateNine(nineDay);*/


            //   Assert.True(taradodInfo.Count==biometricData.Count());


            // محاسبه جمع
            BiometryCalculatedDetail total = c.CalculateTotal(taradodInfo);
        }