Exemplo n.º 1
0
        /// <summary>
        /// Загружает список друзей из вконтакте, либо из базы если были ошибки
        /// </summary>
        public void LoadFromVkOrDB()
        {
            var getAllFriends = new GetAllFriends(_apiSettings);
            var friends =  getAllFriends.Get(_sessionInfoRepo.UserId, _sessionInfoRepo.AccessToken);

            if (getAllFriends.Exception != null)
            {
                LoadFromDB();
            }
            else
            {
                var setFriends = new SetFriends(_sessionInfoRepo.UserId);
                setFriends.Set(friends);
                _friendsRepo.Set(friends, DataSourceType.VK);
            }
        }
Exemplo n.º 2
0
        public void SetOnlineTest()
        {
            NhibernateService.Instance.DeleteAll<Friend>();

            var setFriends = new SetFriends(UserId1);

            var list = new List<IFriend>
            {
                new Friend { FirstName = FirstName1, ParentVkId = UserId1, VkId = 1},
                new Friend { FirstName = FirstName2, ParentVkId = UserId1, VkId = 2},
            };

            setFriends.Set(list);

            var allFriends = NhibernateService.Instance.GetAll<Friend>();

            Assert.IsTrue(allFriends.All(x => !x.Online));
            var onlineList = new List<int> {1};

            setFriends.SetOnline(onlineList);

            allFriends = NhibernateService.Instance.GetAll<Friend>();
            var friend1 = allFriends.First(x => x.VkId == list[0].VkId);
            var friend2 = allFriends.First(x => x.VkId == list[1].VkId);

            Assert.AreEqual(friend1.Online, true);
            Assert.AreEqual(friend2.Online, false);

            onlineList = new List<int> { 2 };

            setFriends.SetOnline(onlineList);

            allFriends = NhibernateService.Instance.GetAll<Friend>();
            friend1 = allFriends.First(x => x.VkId == list[0].VkId);
            friend2 = allFriends.First(x => x.VkId == list[1].VkId);

            Assert.AreEqual(friend1.Online, false);
            Assert.AreEqual(friend2.Online, true);

            NhibernateService.Instance.DeleteAll<Friend>();
        }
Exemplo n.º 3
0
        public void SetTest()
        {
            NhibernateService.Instance.DeleteAll<Friend>();

            var count = NhibernateService.Instance.Count<Friend>();
            Assert.AreEqual(0, count);

            var list1 = new List<IFriend>
            {
                new Friend { FirstName = FirstName1, ParentVkId = UserId1, VkId = 1},
                new Friend { FirstName = FirstName2, ParentVkId = UserId1, VkId = 2},
            };

            var setFriends1 = new SetFriends(UserId1);
            setFriends1.Set(list1);

            var allFriends = NhibernateService.Instance.GetAll<Friend>();
            Assert.AreEqual(list1.Count, allFriends.Count());
            Assert.IsTrue(allFriends.Any(x => x.FirstName == list1[0].FirstName && x.ParentVkId == list1[0].ParentVkId && x.VkId == list1[0].VkId));
            Assert.IsTrue(allFriends.Any(x => x.FirstName == list1[1].FirstName && x.ParentVkId == list1[1].ParentVkId && x.VkId == list1[1].VkId));

            list1.Remove(list1[1]);
            setFriends1.Set(list1);

            allFriends = NhibernateService.Instance.GetAll<Friend>();
            Assert.AreEqual(list1.Count, allFriends.Count());
            Assert.IsTrue(allFriends.Any(x => x.FirstName == list1[0].FirstName && x.ParentVkId == list1[0].ParentVkId && x.VkId == list1[0].VkId));

            list1.Add(new Friend { FirstName = FirstName3, ParentVkId = UserId1, VkId = 3});
            list1[0].FirstName = FirstName4;
            setFriends1.Set(list1);

            allFriends = NhibernateService.Instance.GetAll<Friend>();
            Assert.AreEqual(list1.Count, allFriends.Count());
            Assert.IsTrue(allFriends.Any(x => x.FirstName == list1[0].FirstName && x.ParentVkId == list1[0].ParentVkId && x.VkId == list1[0].VkId));
            Assert.IsTrue(allFriends.Any(x => x.FirstName == list1[1].FirstName && x.ParentVkId == list1[1].ParentVkId && x.VkId == list1[1].VkId));

            var list2 = new List<IFriend>
            {
                new Friend { FirstName = FirstName1, ParentVkId = UserId2, VkId = 1},
                new Friend { FirstName = FirstName2, ParentVkId = UserId2, VkId = 2},
            };

            var setFriends2 = new SetFriends(UserId2);
            setFriends2.Set(list2);

            allFriends = NhibernateService.Instance.GetAll<Friend>();
            Assert.AreEqual(list1.Count + list2.Count, allFriends.Count());
            Assert.IsTrue(allFriends.Any(x => x.FirstName == list1[0].FirstName && x.ParentVkId == list1[0].ParentVkId && x.VkId == list1[0].VkId));
            Assert.IsTrue(allFriends.Any(x => x.FirstName == list1[1].FirstName && x.ParentVkId == list1[1].ParentVkId && x.VkId == list1[1].VkId));
            Assert.IsTrue(allFriends.Any(x => x.FirstName == list2[0].FirstName && x.ParentVkId == list2[0].ParentVkId && x.VkId == list2[0].VkId));
            Assert.IsTrue(allFriends.Any(x => x.FirstName == list2[1].FirstName && x.ParentVkId == list2[1].ParentVkId && x.VkId == list2[1].VkId));

            list2.Remove(list2[1]);
            setFriends2.Set(list2);

            allFriends = NhibernateService.Instance.GetAll<Friend>();
            Assert.AreEqual(list1.Count + list2.Count, allFriends.Count());
            Assert.IsTrue(allFriends.Any(x => x.FirstName == list1[0].FirstName && x.ParentVkId == list1[0].ParentVkId && x.VkId == list1[0].VkId));
            Assert.IsTrue(allFriends.Any(x => x.FirstName == list1[1].FirstName && x.ParentVkId == list1[1].ParentVkId && x.VkId == list1[1].VkId));
            Assert.IsTrue(allFriends.Any(x => x.FirstName == list2[0].FirstName && x.ParentVkId == list2[0].ParentVkId && x.VkId == list2[0].VkId));

            NhibernateService.Instance.DeleteAll<Friend>();
        }