Пример #1
0
        public async Task <IActionResult> UpdatePushNotification([ModelBinder(typeof(JsonModelBinder <PushNotificationDto>))] Delta <PushNotificationDto> pushNotificationDelta)
        {
            if (!ModelState.IsValid)
            {
                return(await Error());
            }

            var currentPushNotification = _pushNotificationApiService.GetPushNotificationById(pushNotificationDelta.Dto.Id);

            if (currentPushNotification == null)
            {
                return(await Error(HttpStatusCode.NotFound, "push_notification", "not found"));
            }

            pushNotificationDelta.Merge(currentPushNotification);

            //stores
            if (pushNotificationDelta.Dto.StoreIds.Count > 0)
            {
                await AddValidStores(pushNotificationDelta, currentPushNotification);
            }

            _pushNotificationService.UpdatePushNotification(currentPushNotification);

            await UserActivityService.InsertActivityAsync("EditPushNotification", $"Edited a push notification (ID = {currentPushNotification.Id})", currentPushNotification);

            var rootObj = new PushNotificationRootObject();

            rootObj.PushNotifications.Add(currentPushNotification.ToDto());

            var json = JsonFieldsSerializer.Serialize(rootObj, string.Empty);

            return(new RawJsonActionResult(json));
        }
Пример #2
0
        public async Task <IActionResult> UpdateItem([ModelBinder(typeof(JsonModelBinder <ItemDto>))] Delta <ItemDto> itemDelta)
        {
            if (!ModelState.IsValid)
            {
                return(await Error());
            }

            var currentItem = _itemApiService.GetItemById(itemDelta.Dto.Id);

            if (currentItem == null)
            {
                return(await Error(HttpStatusCode.NotFound, "item", "not found"));
            }

            itemDelta.Merge(currentItem);

            await _itemRepository.UpdateAsync(currentItem);

            //activity log
            await UserActivityService.InsertActivityAsync("EditItem", $"Edited a item (ID = {currentItem.Id})", currentItem);

            var itemDto = currentItem.ToDto();

            var itemsRootObject = new ItemsRootObject();

            itemsRootObject.Items.Add(itemDto);

            var json = JsonFieldsSerializer.Serialize(itemsRootObject, string.Empty);

            return(new RawJsonActionResult(json));
        }
Пример #3
0
        public async Task <IActionResult> CreateItem([ModelBinder(typeof(JsonModelBinder <ItemDto>))] Delta <ItemDto> itemDelta)
        {
            if (!ModelState.IsValid)
            {
                return(await Error());
            }

            var newItem = new Item();

            itemDelta.Merge(newItem);

            await _itemRepository.InsertAsync(newItem);

            //activity log
            await UserActivityService.InsertActivityAsync("AddNewItem", $"Added a new item (ID = {newItem.Id})", newItem);

            var newItemDto = newItem.ToDto();

            var itemsRootObject = new ItemsRootObject();

            itemsRootObject.Items.Add(newItemDto);

            var json = JsonFieldsSerializer.Serialize(itemsRootObject, string.Empty);

            return(new RawJsonActionResult(json));
        }
        public static void AddProductToFavorite(int ProductShopID, Guid UserID = new Guid())
        {
            if (UserID == Guid.Empty && LS.isHaveID())
            {
                UserID = LS.CurrentUser.ID;
            }
            if (UserID == Guid.Empty)
            {
                return;
            }
            var fav = LS.CurrentEntityContext.ProductFavorites.FirstOrDefault(x => x.ProductShopID == ProductShopID &&
                                                                              x.UserID == UserID);

            if (fav == null)
            {
                UserActivityService.InsertFavoriteProduct(UserID, ProductShopID, false
                                                          , HttpContext.Current.Request.RawUrl,
                                                          HttpContext.Current.Request.UrlReferrer != null ? HttpContext.Current.Request.UrlReferrer.OriginalString : null
                                                          , LS.GetUser_IP(HttpContext.Current.Request));

                fav = new ProductFavorite()
                {
                    CreateDate    = DateTime.Now,
                    ProductShopID = ProductShopID,
                    UserID        = UserID
                };
                LS.CurrentEntityContext.ProductFavorites.Add(fav);
                LS.CurrentEntityContext.SaveChanges();
            }
        }
        public void SelectUptoThreeActivities_Below_Three_Return_False_Test()
        {
            IUserService         _userService         = new UserService(_context);
            IActivityService     _activityService     = new ActivityService(_context);
            IUserActivityService _userActivityService = new UserActivityService(_context);
            ApplicationUser      user = new ApplicationUser {
                UserName = "******"
            };
            bool userSaveResult = _userService.AddUser(user);

            RecretionalActivity kayaking = new RecretionalActivity {
                ActivityName = "Kayaking"
            };

            _activityService.AddAnActivity(kayaking);
            RecretionalActivity camping = new RecretionalActivity {
                ActivityName = "Camping"
            };

            _activityService.AddAnActivity(camping);

            if (userSaveResult)
            {
                _userActivityService.ChooseAnActivity(user, kayaking);
                _userActivityService.ChooseAnActivity(user, camping);
            }

            bool selectUpToThreeActivities = _userActivityService.CanChooseUptoThreeActivities(user);

            Assert.IsFalse(selectUpToThreeActivities);
        }
Пример #6
0
        public async Task <IActionResult> CreatePushNotification([ModelBinder(typeof(JsonModelBinder <PushNotificationDto>))] Delta <PushNotificationDto> pushNotificationDelta)
        {
            if (!ModelState.IsValid)
            {
                return(await Error());
            }

            var newPushNotification = new PushNotification();

            pushNotificationDelta.Merge(newPushNotification);

            await _pushNotificationService.InsertPushNotification(newPushNotification);

            //stores
            if (pushNotificationDelta.Dto.StoreIds.Count > 0)
            {
                await AddValidStores(pushNotificationDelta, newPushNotification);

                _pushNotificationService.UpdatePushNotification(newPushNotification);
            }

            await UserActivityService.InsertActivityAsync("AddNewPushNotification", $"Added a new push notification (ID = {newPushNotification.Id})", newPushNotification);

            var rootObj = new PushNotificationRootObject();

            rootObj.PushNotifications.Add(newPushNotification.ToDto());

            var json = JsonFieldsSerializer.Serialize(rootObj, string.Empty);

            return(new RawJsonActionResult(json));
        }
Пример #7
0
        public async Task <IActionResult> UpdateShelfLocation([ModelBinder(typeof(JsonModelBinder <ShelfLocationDto>))] Delta <ShelfLocationDto> shelfLocationDelta)
        {
            if (!ModelState.IsValid)
            {
                return(await Error());
            }

            var currentShelfLocation = _shelfLocationApiService.GetShelfLocationById(shelfLocationDelta.Dto.Id);

            if (currentShelfLocation == null)
            {
                return(await Error(HttpStatusCode.NotFound, "shelf_location", "not found"));
            }

            shelfLocationDelta.Merge(currentShelfLocation);

            await _shelfLocationRepository.UpdateAsync(currentShelfLocation);

            await UserActivityService.InsertActivityAsync("EditShelfLocation", $"Edited a shelf location (ID = {currentShelfLocation.Id})", currentShelfLocation);

            var shelfLocationDto = currentShelfLocation.ToDto();

            var rootObject = new ShelfLocationRootObject();

            rootObject.ShelfLocation.Add(shelfLocationDto);

            var json = JsonFieldsSerializer.Serialize(rootObject, string.Empty);

            return(new RawJsonActionResult(json));
        }
Пример #8
0
        public async Task <IActionResult> CreateDevice([ModelBinder(typeof(JsonModelBinder <DeviceDto>))] Delta <DeviceDto> deviceDelta)
        {
            if (!ModelState.IsValid)
            {
                return(await Error());
            }

            var newDevice = _factory.Initialize();

            deviceDelta.Merge(newDevice);

            await _deviceService.InsertDevice(newDevice);

            await UpdateTenantMappings(newDevice, deviceDelta.Dto.TenantIds);

            //activity log
            await UserActivityService.InsertActivityAsync("AddNewDevice", $"Added a new device (ID = {newDevice.Id})", newDevice);

            var newDeviceDto = _dtoHelper.PrepareDeviceDto(newDevice);

            var devicesRootObject = new DevicesRootObject();

            devicesRootObject.Devices.Add(newDeviceDto);

            var json = JsonFieldsSerializer.Serialize(devicesRootObject, string.Empty);

            return(new RawJsonActionResult(json));
        }
Пример #9
0
        public async Task <IActionResult> CreateShelfLocation([ModelBinder(typeof(JsonModelBinder <ShelfLocationDto>))] Delta <ShelfLocationDto> shelfLocationDelta)
        {
            if (!ModelState.IsValid)
            {
                return(await Error());
            }

            var newShelfLocation = new ShelfLocation();

            shelfLocationDelta.Merge(newShelfLocation);

            await _shelfLocationRepository.InsertAsync(newShelfLocation);

            await UserActivityService.InsertActivityAsync("AddNewShelfLocation", $"Added a new shelf location (ID = {newShelfLocation.Id})", newShelfLocation);

            var newShelfLocationDto = newShelfLocation.ToDto();

            var rootObject = new ShelfLocationRootObject();

            rootObject.ShelfLocation.Add(newShelfLocationDto);

            var json = JsonFieldsSerializer.Serialize(rootObject, string.Empty);

            return(new RawJsonActionResult(json));
        }
        public void SetRankAnActivityTest()
        {
            IUserService         _userService         = new UserService(_context);
            IActivityService     _activityService     = new ActivityService(_context);
            IUserActivityService _userActivityService = new UserActivityService(_context);
            ApplicationUser      user = new ApplicationUser {
                UserName = "******"
            };
            bool userSaveResult = _userService.AddUser(user);

            RecretionalActivity kayaking = new RecretionalActivity {
                ActivityName = "Kayaking"
            };

            _activityService.AddAnActivity(kayaking);
            RecretionalActivity camping = new RecretionalActivity {
                ActivityName = "Camping"
            };

            _activityService.AddAnActivity(camping);

            if (userSaveResult)
            {
                _userActivityService.ChooseAnActivity(user, kayaking);
                _userActivityService.ChooseAnActivity(user, camping);
            }

            bool setKayakingAsFiveStarRatingResult = _userActivityService.SetRankAnActivity(user, kayaking, Rating.fiveStar);
            bool setCampingAsFourStarRatingResult  = _userActivityService.SetRankAnActivity(user, camping, Rating.fourStar);

            Assert.IsTrue(setKayakingAsFiveStarRatingResult);
            Assert.IsTrue(setCampingAsFourStarRatingResult);
        }
Пример #11
0
        public async Task <IActionResult> CreateRole([ModelBinder(typeof(JsonModelBinder <RoleDto>))] Delta <RoleDto> roleDelta)
        {
            if (!ModelState.IsValid)
            {
                return(await Error());
            }

            var newRole = _factory.Initialize();

            roleDelta.Merge(newRole);

            await UserService.InsertRoleAsync(newRole);

            //permission
            if (roleDelta.Dto.PermissionIds.Count > 0)
            {
                await AddValidPermissions(roleDelta, newRole);

                await UserService.UpdateRoleAsync(newRole);
            }

            await UserActivityService.InsertActivityAsync("AddNewRole", $"Added a new role (ID = {newRole.Id})", newRole);

            var newRoleDto = newRole.ToDto();

            var rootObj = new RolesRootObject();

            rootObj.Roles.Add(newRoleDto);

            var json = JsonFieldsSerializer.Serialize(rootObj, string.Empty);

            return(new RawJsonActionResult(json));
        }
Пример #12
0
        public async Task <IActionResult> Validate([FromBody] string rawString)
        {
            if (string.IsNullOrEmpty(rawString))
            {
                return(await Error(HttpStatusCode.BadRequest, "payload", "invalid payload"));
            }

            var validHeader = Request.Headers.TryGetValue("Device-SerialNo", out var val);

            if (!validHeader)
            {
                return(await Error(HttpStatusCode.BadRequest, "serial-no", "invalid header"));
            }

            var result = await _licenseApiService.ValidateLicense(rawString, val.FirstOrDefault());

            if (result != null && result.Length > 0)
            {
                return(await Error(HttpStatusCode.Unauthorized, "license", string.Join(" ", result)));
            }

            await UserActivityService.InsertActivityAsync("ValidateLicense", $"Validated license on device (ID = {val.FirstOrDefault()})");

            return(Ok(new LicenseRootObject {
                IsValid = true
            }));
        }
Пример #13
0
        private UserActivityService CreateUserActivityService()
        {
            var userId  = Guid.Parse(User.Identity.GetUserId());
            var service = new UserActivityService(userId);

            return(service);
        }
Пример #14
0
        // GET: UserActivity
        public ActionResult Index()
        {
            var userId  = Guid.Parse(User.Identity.GetUserId());
            var service = new UserActivityService(userId);
            var model   = service.GetAllUserActivities();

            return(View(model));
        }
Пример #15
0
 public ActionResult Password()
 {
     UserActivityService.InsertUserClick(LS.CurrentUser.ID,
                                         Request.RawUrl,
                                         Request.UrlReferrer != null ? Request.UrlReferrer.OriginalString : null
                                         , LS.GetUser_IP(Request));
     return(View());
 }
        public ActionResult _GetShopInfo(int shopID)
        {
            var culture = new System.Globalization.CultureInfo("he-IL");
            var data    = LS.GetFirst <Shop>(x => x.ID == shopID);

            UserActivityService.InsertShopOpen(LS.CurrentUser.ID, shopID
                                               , Request.RawUrl,
                                               Request.UrlReferrer != null ? Request.UrlReferrer.OriginalString : null
                                               , LS.GetUser_IP(Request));
            data.ShopCommentModels = ShoppingService.GetShopComments(shopID);
            //data.ShopType = LS.Get<ShopType>()
            //    .FirstOrDefault(x => data.ShopTypeIDs!= null && data.ShopTypeIDs.Contains(x.ID.ToString() ) );

            var curdate  = DateTime.Now.Date;
            var lastdate = curdate.AddDays(7);

            data.WorkTimes = LS.CurrentEntityContext.ShopWorkTimes.Where(x => x.ShopID == shopID && x.Active &&
                                                                         (!x.IsSpecial || (x.Date >= curdate && x.Date <= lastdate)))
                             .OrderBy(x => x.IsSpecial).ThenBy(x => x.Day).ThenBy(x => x.Date)
                             .Select(x => new ShipTimeModel()
            {
                Date        = x.Date,
                Day         = x.Day,
                TimeFromInt = x.TimeFrom,
                TimeToInt   = x.TimeTo,
                IsSpecial   = x.IsSpecial,
            }).ToList();

            foreach (var t in data.WorkTimes)
            {
                t.DayStr       = culture.DateTimeFormat.GetDayName(t.Day);
                t.TimeFromeStr = TimeSpan.FromMinutes(t.TimeFromInt).ToString("hh':'mm"); //ntToTime(t.TimeFromInt);
                t.TimeToStr    = TimeSpan.FromMinutes(t.TimeToInt).ToString("hh':'mm");
                t.DateStr      = t.Date.ToString("dd/MM");
            }

            data.ShipTimes = _db.ShopShipTimes.Where(x => x.ShopID == shopID && x.Active && !x.IsSpecial)
                             .Select(x => new ShipTimeModel()
            {
                Date        = x.Date,
                Day         = x.Day,
                TimeFromInt = x.TimeFrom,
                TimeToInt   = x.TimeTo,
            }).ToList();
            foreach (var t in data.ShipTimes)
            {
                t.DayStr       = t.DayStr = culture.DateTimeFormat.GetDayName(t.Day);
                t.TimeFromeStr = TimeSpan.FromMinutes(t.TimeFromInt).ToString("hh':'mm");
                t.TimeToStr    = TimeSpan.FromMinutes(t.TimeToInt).ToString("hh':'mm");
            }

            if (!string.IsNullOrEmpty(data.Theme))
            {
                this.HttpContext.Items["ShopTheme"] = data.Theme;
            }

            return(PartialView("_ShopInfoPopup", data));
        }
Пример #17
0
        private async Task LaunchApplicationAsync(string page, object launchParam)
        {
            Window.Current.Activate();
//{[{

            // TODO WTS: This is a sample to demonstrate how to add a UserActivity. Please adapt and move this method call to where you consider convenient in your app.
            await UserActivityService.AddSampleUserActivity();

//}]}
        }
        public void GetTopOneRegionChoosenByTheRegisteredUsersTest()
        {
            IUserService         _userService         = new UserService(_context);
            IActivityService     _activityService     = new ActivityService(_context);
            IRegionService       _regionService       = new RegionService(_context);
            IUserActivityService _userActivityService = new UserActivityService(_context);
            // Region
            Region bd = new Region {
                RegionName = "Bangladesh"
            };
            Region usa = new Region {
                RegionName = "USA"
            };
            Region canada = new Region {
                RegionName = "Canada"
            };

            _regionService.AddRegion(bd);
            _regionService.AddRegion(usa);
            _regionService.AddRegion(canada);

            ApplicationUser test = new ApplicationUser {
                UserName = "******", Region = bd
            };
            ApplicationUser alif = new ApplicationUser {
                UserName = "******", Region = usa
            };
            ApplicationUser hamza = new ApplicationUser {
                UserName = "******", Region = canada
            };
            ApplicationUser kabir = new ApplicationUser {
                UserName = "******", Region = bd
            };
            ApplicationUser saif = new ApplicationUser {
                UserName = "******", Region = canada
            };
            ApplicationUser salman = new ApplicationUser {
                UserName = "******", Region = bd
            };

            _userService.AddUser(test);
            _userService.AddUser(alif);
            _userService.AddUser(hamza);
            _userService.AddUser(kabir);
            _userService.AddUser(saif);
            _userService.AddUser(salman);



            var topRegion = _userActivityService.GetTopFiveRegionChoosenByTheRegisteredUsers().FirstOrDefault();

            Assert.IsNotNull(topRegion);
            Assert.AreEqual(bd.RegionName, topRegion.Region.RegionName);
        }
        public async Task GetById_EmptyId_ArgumentException()
        {
            var repository = new Mock <IUserActivityRepository>();

            repository.Setup(r => r.GetById(It.IsAny <string>()))
            .ReturnsAsync(It.IsAny <UserActivity>());

            var service = new UserActivityService(repository.Object);

            await Assert.ThrowsAsync <ArgumentNullException>(() => service.GetById(string.Empty));
        }
Пример #20
0
        public async Task <IActionResult> CreateUser([ModelBinder(typeof(JsonModelBinder <UserDto>))] Delta <UserDto> userDelta)
        {
            if (!ModelState.IsValid)
            {
                return(await Error());
            }

            var newUser = _factory.Initialize();

            userDelta.Merge(newUser);

            await UserService.InsertUserAsync(newUser);

            await InsertFirstAndLastNameGenericAttributes(userDelta.Dto.FirstName, userDelta.Dto.LastName, newUser);

            //password
            if (!string.IsNullOrWhiteSpace(userDelta.Dto.Password))
            {
                await AddPassword(userDelta.Dto.Password, newUser);
            }

            //roles
            if (userDelta.Dto.RoleIds.Count > 0)
            {
                AddValidRoles(userDelta, newUser);
            }

            //stores
            if (userDelta.Dto.StoreIds.Count > 0)
            {
                await AddValidStores(userDelta, newUser);
            }

            await UserService.UpdateUserAsync(newUser);

            var newUserDto = newUser.ToDto();

            newUserDto.FirstName    = userDelta.Dto.FirstName;
            newUserDto.LastName     = userDelta.Dto.LastName;
            newUserDto.UserPassword = _userApiService.GetUserPassword(newUserDto.Id);

            //activity log
            await UserActivityService.InsertActivityAsync("AddNewUser", $"Added a new user (ID = {newUser.Id})", newUser);

            var usersRootObject = new UsersRootObject();

            usersRootObject.Users.Add(newUserDto);

            var json = JsonFieldsSerializer.Serialize(usersRootObject, string.Empty);

            return(new RawJsonActionResult(json));
        }
        public async Task GetById_NonExistingDocumentId_Null()
        {
            var repository = new Mock <IUserActivityRepository>();

            repository.Setup(r => r.GetById("5e1b9429757df200173c6c36"))
            .ReturnsAsync(new UserActivity("buy", "2016-09-22T13:57:31.2311892-04:00"));

            var service = new UserActivityService(repository.Object);

            var document = await service.GetById("999999999999999999999999");

            Assert.Null(document);
        }
        public async Task Create_NullObject_ArgumentNullException()
        {
            var repository = new Mock <IUserActivityRepository>();

            var expectedDocumentId = "5e1b9429757df200173c6c36";

            repository.Setup(r => r.Create(It.IsAny <UserActivity>())).ReturnsAsync(expectedDocumentId);

            var service = new UserActivityService(repository.Object);

            await Assert.ThrowsAsync <ArgumentNullException>(() =>
                                                             service.Create(null));
        }
Пример #23
0
        public ActionResult DiscountHistory()
        {
            UserActivityService.InsertUserClick(LS.CurrentUser.ID,
                                                Request.RawUrl,
                                                Request.UrlReferrer != null ? Request.UrlReferrer.OriginalString : null
                                                , LS.GetUser_IP(Request));
            if (!LS.isHaveID())
            {
                return(Redirect("~/"));
            }
            var model = LS.CurrentUser;

            return(View(model));
        }
        public async Task GetAll_Returns_AllUserActivities()
        {
            var repository = new Mock <IUserActivityRepository>();

            repository.Setup(r => r.GetAll()).ReturnsAsync(new List <UserActivity> {
                new UserActivity("buy", "2016-09-22T13:57:31.2311892-04:00"),
                new UserActivity("click", "2016-09-23T22:50:11.2311892-04:00"),
                new UserActivity("scroll", "2016-08-30T12:11:22.5671892-04:00"),
            });

            var service = new UserActivityService(repository.Object);
            var result  = await service.GetAll();

            Assert.Equal(3, result.ToList().Count);
        }
        public async Task Create_EmptyTimeStamp_ArgumentException()
        {
            var repository = new Mock <IUserActivityRepository>();

            var expectedDocumentId = "5e1b9429757df200173c6c36";

            repository.Setup(r => r.Create(It.IsAny <UserActivity>())).ReturnsAsync(expectedDocumentId);

            var service = new UserActivityService(repository.Object);

            await Assert.ThrowsAsync <ArgumentException>(() =>
                                                         service.Create(new UserActivityRequest {
                Event = "buy", TimeStamp = string.Empty
            }));
        }
Пример #26
0
        private void CreateServices()
        {
            QuizService         = new QuizService(QuizRepo, QuizRatingRepo);
            QuestionService     = new QuestionService(QuestionRepo);
            AnswerService       = new AnswerService(AnswerRepo);
            QuizCategoryService = new QuizCategoryService(QuizCategoryRepo);
            QuizResultService   = new QuizResultService(QuizRepo, QuizResultRepo, QuizRatingRepo, QuestionRepo, AnswerRepo);
            UserActivityService = new UserActivityService(UserActivityRepo, QuizRepo, QuestionRepo);


            ModelConverter = new ModelConverter(
                QuizCategoryService, QuizResultService, AnswerService, QuestionService, QuizService);
            ViewModelConverter = new ViewModelConverter(
                QuizService, AnswerService, QuestionService, QuizCategoryService);
        }
Пример #27
0
        public ActionResult Index()
        {
            UserActivityService.InsertUserClick(LS.CurrentUser.ID,
                                                Request.RawUrl,
                                                Request.UrlReferrer != null ? Request.UrlReferrer.OriginalString : null
                                                , LS.GetUser_IP(Request));

            if (!LS.isHaveID())
            {
                return(Redirect("~/Account/LogOn"));
            }
            var model = LS.CurrentUser;

            return(View("Orders", model));
        }
Пример #28
0
        public async Task <IActionResult> UpdateDeviceByAttributes([FromQuery] int id, [FromQuery] string serialno, [ModelBinder(typeof(JsonModelBinder <DeviceDto>))] Delta <DeviceDto> deviceDelta)
        {
            if (!ModelState.IsValid)
            {
                return(await Error());
            }

            Device currentDevice;

            if (id > 0)
            {
                currentDevice = _deviceApiService.GetDeviceById(id);
            }
            else if (!string.IsNullOrEmpty(serialno))
            {
                currentDevice = _deviceApiService.GetDeviceBySerialNo(serialno);
            }
            else
            {
                return(await Error(HttpStatusCode.BadRequest, "invalid", "invalid id or serial_no"));
            }

            if (currentDevice == null)
            {
                return(await Error(HttpStatusCode.NotFound, "device", "not found"));
            }

            deviceDelta.Merge(currentDevice);
            currentDevice.ModifiedOnUtc = DateTime.UtcNow;

            _deviceService.UpdateDevice(currentDevice);

            await UpdateTenantMappings(currentDevice, deviceDelta.Dto.TenantIds);

            await UserActivityService.InsertActivityAsync("EditDevice",
                                                          $"Edited a device (ID = {currentDevice.Id}, SN = {currentDevice.SerialNo})", currentDevice);

            var deviceDto = _dtoHelper.PrepareDeviceDto(currentDevice);

            var devicesRootObject = new DevicesRootObject();

            devicesRootObject.Devices.Add(deviceDto);

            var json = JsonFieldsSerializer.Serialize(devicesRootObject, string.Empty);

            return(new RawJsonActionResult(json));
        }
        public async Task Create_NullEvent_ArgumentException()
        {
            var repository = new Mock <IUserActivityRepository>();

            var expectedDocumentId = "5e1b9429757df200173c6c36";

            repository.Setup(r => r.Create(It.IsAny <UserActivity>())).ReturnsAsync(expectedDocumentId);

            var service = new UserActivityService(repository.Object);

            await Assert.ThrowsAsync <ArgumentException>(() =>
                                                         service.Create(new UserActivityRequest
            {
                Event     = null,
                TimeStamp = "2016-09-22T13:57:31.2311892-04:00"
            }));
        }
Пример #30
0
        public void FetchLogPage_Test()
        {
            //Arange
            const int pageCount = 50;

            var stubLogFactory = new Mock <IPrompterDiagnosticsDbContextFactory>();
            var stubLogContext = new Mock <IPrompterDiagnosticsDbContext>();

            stubLogFactory.Setup(l => l.Create())
            .Returns(stubLogContext.Object);

            var logs = new List <UserActivity>(pageCount * 2);

            for (int i = 0; i < pageCount * 2; i++)
            {
                logs.Add(new UserActivity());
            }

            var contextLogs = logs.AsQueryable();

            stubLogContext.Setup(c => c.UserActivities.GetEnumerator())
            .Returns(contextLogs.GetEnumerator());
            stubLogContext.Setup(c => c.UserActivities.Provider)
            .Returns(contextLogs.Provider);
            stubLogContext.Setup(c => c.UserActivities.Expression)
            .Returns(contextLogs.Expression);

            var service = new UserActivityService(stubLogFactory.Object);

            //Act
            var actual = service.FetchLogPage(1);

            //Assert
            stubLogFactory.Verify(f => f.Create(),
                                  Times.Once);
            stubLogContext.Verify(c => c.UserActivities,
                                  Times.Once);

            Assert.That(actual.Count == pageCount);

            Assert.That(service.FetchLogPage(2)
                        .Count == pageCount);

            Assert.That(service.FetchLogPage(3)
                        .Count == 0);
        }