Esempio n. 1
0
        public void CountByUpcoming_Should_Return_Correct_Result()
        {
            var story1 = CreateStory();
            var story2 = CreateStory();
            var story3 = CreateStory();

            Stories.AddRange(new[] { story1 as Story, story2 as Story, story3 as Story });

            var result = _storyRepository.CountByUpcoming();

            Assert.Equal(3, result);
        }
Esempio n. 2
0
        public void FindUnapproved_Should_Return_Paged_Result()
        {
            var story1 = CreateStory(false);
            var story2 = CreateStory(false);
            var story3 = CreateStory(false);

            Stories.AddRange(new[] { story1 as Story, story2 as Story, story3 as Story });
            var pagedResult = _storyRepository.FindUnapproved(0, 10);

            Assert.Equal(3, pagedResult.Result.Count);
            Assert.Equal(3, pagedResult.Total);
        }
        public void CountByUnapproved_Should_Return_Correct_Result()
        {
            var story1 = CreateStory(false);
            var story2 = CreateStory(false);
            var story3 = CreateStory(false);

            Stories.AddRange(new[] { story1 as Story, story2 as Story, story3 as Story });
            Stories.ForEach(s => s.CreatedAt = SystemTime.Now().AddDays(-3));

            var result = _storyRepository.CountByUnapproved();

            Assert.Equal(3, result);
        }
        public void CountByPublishable_Should_Return_Correct_Result()
        {
            var story1 = CreateStory();
            var story2 = CreateStory();
            var story3 = CreateStory();

            Stories.AddRange(new[] { story1 as Story, story2 as Story, story3 as Story });
            Stories.ForEach(s => s.ApprovedAt = SystemTime.Now().AddDays(-3));

            var result = _storyRepository.CountByPublishable(SystemTime.Now().AddDays(-7), SystemTime.Now().AddHours(-4));

            Assert.Equal(3, result);
        }
Esempio n. 5
0
        public void Search_Should_Return_Correct_Result()
        {
            var story1 = CreateStory();
            var story2 = CreateStory();
            var story3 = CreateStory();

            Stories.AddRange(new[] { story1 as Story, story2 as Story, story3 as Story });

            var pagedResult = _storyRepository.Search("Test", 0, 10);

            Assert.Equal(3, pagedResult.Result.Count);
            Assert.Equal(3, pagedResult.Total);
        }
        public void FindPostedByUser_With_UserName_Should_Return_Correct_Result()
        {
            var story1 = CreateStory();
            var story2 = CreateStory();
            var story3 = CreateStory();

            Stories.AddRange(new[] { story1 as Story, story2 as Story, story3 as Story });

            var pagedResult = _storyRepository.FindPostedByUser(Stories[0].User.UserName, 0, 10);

            Assert.Equal(Stories.Count, pagedResult.Result.Count);
            Assert.Equal(Stories.Count, pagedResult.Total);
        }
Esempio n. 7
0
        List <Story> GetStoriesByIterationType(int projectId, string iterationType)
        {
            var request = BuildGetRequest();

            request.Resource = string.Format(SpecifiedIterationEndpoint, projectId, iterationType);
            var response = RestClient.Execute(request);

            var stories    = new Stories();
            var serializer = new RestSharpXmlDeserializer();
            var el         = ParseContent(response);

            stories.AddRange(el.Descendants("story").Select(storey => serializer.Deserialize <Story>(storey.ToString())));
            return(stories);
        }
        public void CountByCategory_Should_Return_Correct_Result()
        {
            var story1 = CreateStory();
            var story2 = CreateStory();
            var story3 = CreateStory();

            var rnd = new Random();

            Stories.AddRange(new[] { story1 as Story, story2 as Story, story3 as Story });
            Stories.ForEach(s => s.Publish(SystemTime.Now().AddDays(-rnd.Next(1, 5)), rnd.Next(1, 10)));

            var result = _storyRepository.CountByCategory(Stories[0].CategoryId);

            Assert.Equal(1, result);
        }
        public void CountByTag_Should_Return_Correct_Result()
        {
            var story1 = CreateStory();
            var story2 = CreateStory();
            var story3 = CreateStory();

            Stories.AddRange(new[] { story1 as Story, story2 as Story, story3 as Story });

            var tag = _factory.CreateTag("dummy");

            Stories.ForEach(s => s.AddTag(tag));

            var result = _storyRepository.CountByTag(tag.Id);

            Assert.Equal(3, result);
        }
        public void FindPublishedByCategory_With_Category_Name_Should_Return_Paged_Result()
        {
            var story1 = CreateStory();
            var story2 = CreateStory();
            var story3 = CreateStory();

            var rnd = new Random();

            Stories.AddRange(new[] { story1 as Story, story2 as Story, story3 as Story });
            Stories.ForEach(s => s.Publish(SystemTime.Now().AddDays(-rnd.Next(1, 5)), rnd.Next(1, 10)));

            var pagedResult = _storyRepository.FindPublishedByCategory(Stories[0].Category.Name, 0, 10);

            Assert.Equal(3, pagedResult.Result.Count);
            Assert.Equal(3, pagedResult.Total);
        }
Esempio n. 11
0
        public void Search_Should_Return_Correct_Result()
        {
            var story1 = CreateStory();
            var story2 = CreateStory();

            Stories.AddRange(new[] { story1 as Story, story2 as Story });

            database.Setup(db => db.StorySearchResult).Returns((new List <Guid> {
                story1.Id, story2.Id
            }).AsQueryable());

            var pagedResult = _storyRepository.Search("Test", 0, 10);

            Assert.Equal(2, pagedResult.Result.Count);
            Assert.Equal(2, pagedResult.Total);
        }
        public void FindByTag_With_Tag_Name_Should_Return_Paged_Result()
        {
            var story1 = CreateStory();
            var story2 = CreateStory();
            var story3 = CreateStory();

            Stories.AddRange(new[] { story1 as Story, story2 as Story, story3 as Story });

            var tag = _factory.CreateTag("dummy");

            Stories.ForEach(s => s.AddTag(tag));

            var pagedResult = _storyRepository.FindByTag(tag.Name, 0, 10);

            Assert.Equal(3, pagedResult.Result.Count);
            Assert.Equal(3, pagedResult.Total);
        }
Esempio n. 13
0
 async void GetHashtagStories()
 {
     try
     {
         await Helper.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, async() =>
         {
             var s = await Helper.InstaApi.HashtagProcessor.GetHashtagStoriesAsync(HashtagText);
             if (s.Succeeded)
             {
                 Reel = s.Value.ToReel();
                 Stories.Clear();
                 Stories.AddRange(s.Value.Items);
                 Owner = s.Value.Owner;
             }
         });
     }
     catch { }
 }
        public void FindPromotedByUser_With_UserName_Should_Return_Correct_Result()
        {
            var story1 = CreateStory();
            var story2 = CreateStory();
            var story3 = CreateStory();

            Stories.AddRange(new[] { story1 as Story, story2 as Story, story3 as Story });

            var user = _factory.CreateUser("promoter", "*****@*****.**", "xxxxxx");

            Stories.ForEach(s => Votes.Add(new StoryVote {
                User = (User)user, Story = s, IPAddress = "192.168.0.1", Timestamp = SystemTime.Now().AddDays(-3)
            }));

            var pagedResult = _storyRepository.FindPromotedByUser(user.UserName, 0, 10);

            Assert.Equal(3, pagedResult.Result.Count);
            Assert.Equal(3, pagedResult.Total);
        }
Esempio n. 15
0
 async void GetStories()
 {
     try
     {
         await MainPage.Current.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, async() =>
         {
             var stories = await InstaApi.StoryProcessor.GetUsersStoriesAsHighlightsAsync(UserShort.Pk.ToString());
             if (stories.Succeeded)
             {
                 Stories.Clear();
                 if (stories.Value.Items?.Count > 0)
                 {
                     Stories.AddRange(stories.Value.Items);
                 }
             }
         });
     }
     catch { }
 }
        public void FindCommentedByUser_Should_Return_Correct_Result()
        {
            var story1 = CreateStory();
            var story2 = CreateStory();
            var story3 = CreateStory();

            Stories.AddRange(new[] { story1 as Story, story2 as Story, story3 as Story });

            var user = _factory.CreateUser("commenter", "*****@*****.**", "xxxxxx");

            Stories.ForEach(s => Comments.Add(new StoryComment {
                User = (User)user, Story = s, IPAddress = "192.168.0.1", CreatedAt = SystemTime.Now().AddDays(-3), HtmlBody = "<p>This is a comment</p>", TextBody = "This is a comment."
            }));

            var pagedResult = _storyRepository.FindCommentedByUser(user.Id, 0, 10);

            Assert.Equal(3, pagedResult.Result.Count);
            Assert.Equal(3, pagedResult.Total);
        }
        public void Search_Should_Return_Correct_Result()
        {
            var story1 = CreateStory();
            var story2 = CreateStory();

            Stories.AddRange(new[] { story1 as Story, story2 as Story });

            database.Setup(db => db.StorySearch(It.IsAny <string>())).Returns((new List <StorySearchResult> {
                new StorySearchResult {
                    Id = story1.Id
                }
            }).AsQueryable());
            database.Setup(db => db.CommentSearch(It.IsAny <string>())).Returns((new List <CommentSearchResult> {
                new CommentSearchResult {
                    StoryId = story2.Id
                }
            }).AsQueryable());

            var pagedResult = _storyRepository.Search("Test", 0, 10);

            Assert.Equal(2, pagedResult.Result.Count);
            Assert.Equal(2, pagedResult.Total);
        }
Esempio n. 18
0
        public async void RefreshStories(bool refresh = false)
        {
            try
            {
                await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, async() =>
                {
                    var stories = await InstaApi.StoryProcessor.GetStoryFeedWithPostMethodAsync(refresh);
                    if (stories.Succeeded)
                    {
                        Stories.Clear();
                        StoriesX.Clear();
                        var listX = new List <StoryWithLiveSupportModel>();
                        if (stories.Value.Broadcasts?.Count > 0)
                        {
                            for (int i = 0; i < stories.Value.Broadcasts.Count; i++)
                            {
                                var item = stories.Value.Broadcasts[i];
                                listX.Add(new StoryWithLiveSupportModel
                                {
                                    Broadcast = item,
                                    Type      = StoryType.Broadcast
                                });
                            }
                        }
                        if (stories.Value.Items?.Count > 0)
                        {
                            var list  = new List <StoryModel>();
                            string id = null;
                            for (int i = 0; i < stories.Value.Items.Count; i++)
                            {
                                var item = stories.Value.Items[i];
                                var m    = item.ToStoryModel();

                                if (string.IsNullOrEmpty(id) || !string.IsNullOrEmpty(id) && id != item.Id)
                                {
                                    list.Add(m);
                                    listX.Add(new StoryWithLiveSupportModel
                                    {
                                        Story = item.ToStoryModel(),
                                        Type  = StoryType.Story
                                    });
                                }
                                id = item.Id;
                            }
                            id = null;
                            Stories.AddRange(list);
                            if (stories.Value.Items?.Count > 0)
                            {
                                await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, async() =>
                                {
                                    var users = new List <string>();
                                    foreach (var item in stories.Value.Items.Take(5))// 5ta ro migirim!
                                    //if (item.IsHashtag)
                                    //    users.Add(item.Owner.Pk.ToString());
                                    //else
                                    //users.Add(item.User.Pk.ToString());
                                    {
                                        users.Add(item.Id);
                                    }

                                    var storiesAfterResult = await InstaApi.StoryProcessor.GetUsersStoriesAsHighlightsAsync(users.ToArray());
                                    if (storiesAfterResult.Succeeded)
                                    {
                                        var storiesAfter = storiesAfterResult.Value.Items;
                                        for (int i = 0; i < Stories.Count; i++)
                                        {
                                            var item = Stories[i];
                                            //var single = storiesAfter.SingleOrDefault(ss => ss.User.Pk.ToString() == item.User.Pk.ToString());
                                            var single = storiesAfter.SingleOrDefault(ss => ss.Id == item.Id);
                                            if (single != null)
                                            {
                                                item.Items.Clear();
                                                item.Items.AddRange(single.Items);
                                            }
                                        }
                                    }
                                    StoreisVisibility = Visibility.Visible;
                                });
                            }
                        }
                        if (stories.Value.PostLives?.Count > 0)
                        {
                            for (int i = 0; i < stories.Value.PostLives.Count; i++)
                            {
                                var item = stories.Value.PostLives[i];
                                listX.Add(new StoryWithLiveSupportModel
                                {
                                    PostLives = item,
                                    Type      = StoryType.PostLive
                                });
                            }
                        }

                        StoriesX.AddRange(listX);
                    }
                    else
                    {
                        if (stories.Info.ResponseType == ResponseType.LoginRequired)
                        {
                            MainPage.Current.LoggedOut();
                        }
                        if (Stories.Count == 0)
                        {
                            StoreisVisibility = Visibility.Collapsed;
                        }

                        if (stories.Info.ResponseType == ResponseType.ConsentRequired)
                        {
                            ShowNotify("Consent is required!\r\nLet Minista fix it for you ;-)\r\nTrying.... Give me 30 seconds maximum...", 3500);
                            await Task.Delay(TimeSpan.FromSeconds(8));

                            var acceptConsent = await InstaApi.AcceptConsentAsync();
                            await Task.Delay(TimeSpan.FromSeconds(15));
                            ShowNotify("Consent is fixed (I think) let me try to refresh feeds and other stuffs for u.", 2500);
                            MainView.Current?.TryToRefresh(true);
                        }
                    }
                });
            }
            catch (Exception ex) { ex.PrintException("MainViewModel.RefreshStories"); }
            refresh = false;
        }
Esempio n. 19
0
 List<Story> GetStoriesByIterationType(int projectId, string iterationType)
 {
     var request = BuildGetRequest();
     request.Resource = string.Format(SpecifiedIterationEndpoint, projectId, iterationType);
     var response = RestClient.Execute(request);
     
     var stories = new Stories();
     var serializer = new RestSharpXmlDeserializer();
     var el = ParseContent(response);
     stories.AddRange(el.Descendants("story").Select(storey => serializer.Deserialize<Story>(storey.ToString())));
     return stories;
 }
Esempio n. 20
0
        private List<Story> GetStoriesByIterationType(int projectId, string iterationType)
        {
            var request = BuildGetRequest();
            request.Resource = string.Format(SpecifiedIterationEndpoint, projectId, iterationType);
            var el = RestClient.ExecuteRequestWithChecks(request);

            var stories = new Stories();
            stories.AddRange(el[0]["stories"].Select(storey => storey.ToObject<Story>()));
            return stories;
        }
Esempio n. 21
0
 List<Story> GetStories(RestRequest request)
 {
     var response = RestClient.Execute(request);
     
     var stories = new Stories();
     var serializer = new RestSharpXmlDeserializer();
     var el = ParseContent(response);
     stories.AddRange(el.Elements("story").Select(storey => serializer.Deserialize<Story>(storey.ToString())));
     return stories;
 }