Esempio n. 1
0
        public SubredditContainer Validate(SubredditContainer subredditContainer, int minResults)
        {
            Assert.IsNotNull(subredditContainer);
            Assert.IsTrue(subredditContainer.Data.Children.Count >= minResults);

            return(subredditContainer);
        }
Esempio n. 2
0
        public void Search()
        {
            SubredditContainer search = reddit.Models.Subreddits.Search(new SubredditsSearchInput("Sanders"));
            SubredditContainer searchWithShowUsers = reddit.Models.Subreddits.Search(new SubredditsSearchInput("Sanders", true));

            Assert.IsNotNull(search);
            Assert.IsNotNull(searchWithShowUsers);
        }
Esempio n. 3
0
        public void GetUserSubreddits()
        {
            SubredditContainer popularUserSubs = reddit.Models.Subreddits.GetUserSubreddits("popular", new CategorizedSrListingInput());
            SubredditContainer newUserSubs     = reddit.Models.Subreddits.GetUserSubreddits("new", new CategorizedSrListingInput());

            Assert.IsNotNull(popularUserSubs);
            Assert.IsNotNull(newUserSubs);
        }
Esempio n. 4
0
        public void Mine()
        {
            SubredditContainer mineSubscriber  = reddit.Models.Subreddits.Mine("subscriber", new CategorizedSrListingInput());
            SubredditContainer mineContributor = reddit.Models.Subreddits.Mine("contributor", new CategorizedSrListingInput());
            SubredditContainer mineModerator   = reddit.Models.Subreddits.Mine("moderator", new CategorizedSrListingInput());

            Assert.IsNotNull(mineSubscriber);
            Assert.IsNotNull(mineContributor);
            Assert.IsNotNull(mineModerator);
        }
Esempio n. 5
0
        /// <summary>
        /// Returns a collector for the given type. If the collector doesn't exist one will be created.
        /// </summary>
        /// <param name="subreddit"></param>
        /// <returns></returns>
        public static SubredditCollector GetCollector(Subreddit subreddit, BaconManager baconMan, SortTypes sort = SortTypes.Hot, string forcePostId = null)
        {
            SubredditContainer container = new SubredditContainer()
            {
                subreddit = subreddit, sortType = sort, forcePostId = forcePostId
            };
            // Make the uniqueId. If we have a force post add that also so we don't get an existing collector with the real subreddit.
            string uniqueId = subreddit.Id + sort + (String.IsNullOrWhiteSpace(forcePostId) ? String.Empty : forcePostId);

            return((SubredditCollector)Collector <Post> .GetCollector(typeof(SubredditCollector), uniqueId, container, baconMan));
        }
Esempio n. 6
0
        public List <Subreddit> GetSubreddits(SubredditContainer subredditContainer, Dispatch dispatch)
        {
            List <Subreddit> subreddits = new List <Subreddit>();

            foreach (SubredditChild subredditChild in subredditContainer.Data.Children)
            {
                if (subredditChild.Data != null)
                {
                    subreddits.Add(new Subreddit(dispatch, subredditChild.Data));
                }
            }

            return(subreddits);
        }
Esempio n. 7
0
        public SubredditCollector(SubredditContainer subredditContainer, BaconManager baconMan)
            : base(baconMan, subredditContainer.subreddit.Id + subredditContainer.sortType)
        {
            // Set the vars
            m_subreddit = subredditContainer.subreddit;
            m_sortType  = subredditContainer.sortType;
            m_baconMan  = baconMan;

            string subredditUrl = "";
            bool   hasEmptyRoot = false;

            if (m_subreddit.DisplayName.ToLower() == "frontpage")
            {
                // Special case for the front page
                subredditUrl = $"/{SortTypeToString(m_sortType)}/.json";
            }
            else if (m_subreddit.DisplayName.ToLower() == "saved")
            {
                // Special case for the saved posts
                subredditUrl = $"/user/{m_baconMan.UserMan.CurrentUser.Name}/saved/.json";
            }
            else if (!String.IsNullOrWhiteSpace(subredditContainer.forcePostId))
            {
                // We are only going to try to grab one specific post. This is used by search and inbox to
                // link to a post. Since we are doing so, we need to make the unique id something unique for this post so we don't get
                // a cache. This should match the unique id we use to look up the subreddit above.
                SetUniqueId(m_subreddit.Id + m_sortType + subredditContainer.forcePostId);
                subredditUrl = $"/r/{m_subreddit.DisplayName}/comments/{subredditContainer.forcePostId}/.json";
                hasEmptyRoot = true;
            }
            else
            {
                subredditUrl = $"/r/{m_subreddit.DisplayName}/{SortTypeToString(m_sortType)}/.json";
            }

            InitListHelper(subredditUrl, hasEmptyRoot, true);
        }
Esempio n. 8
0
        public void SubredditAutocompleteV2()
        {
            SubredditContainer subs = reddit.Models.Subreddits.SubredditAutocompleteV2(new SubredditsAutocompleteV2Input("Shitty"));

            Assert.IsNotNull(subs);
        }