Example #1
0
        public void EntryExtensionMethodsTest_ConvertToSearchEngineEntry_WithOutTags_ConvertsTagsToString()
        {
            Entry post = new Entry(PostType.BlogPost)
            {
                Blog = new Blog()
                {
                    Title = "MyTitle", BlogGroupId = 1
                },
                Body = "<a href=\"http://blah.com/subdir/tag1/\" rel=\"tag\">tag1</a><a href=\"http://blah.com/another-dir/tag2/\" rel=\"tag\">tag2</a>"
            };
            SearchEngineEntry searchEntry = post.ConvertToSearchEngineEntry();

            Assert.AreEqual("tag1,tag2", searchEntry.Tags);
        }
Example #2
0
        public void EntryExtensionMethodsTest_ConvertToSearchEngineEntry_StripsHtmlTags()
        {
            Entry post = new Entry(PostType.BlogPost)
            {
                Blog = new Blog()
                {
                    Title = "MyTitle", BlogGroupId = 1
                },
                Body = "this is <b>bold</b> text"
            };
            SearchEngineEntry searchEntry = post.ConvertToSearchEngineEntry();

            Assert.AreEqual("this is bold text", searchEntry.Body);
        }
Example #3
0
        public void EntryExtensionMethodsTest_ConvertToSearchEngineEntry_WithTags_ConvertsTagsToString()
        {
            Entry post = new Entry(PostType.BlogPost)
            {
                Blog = new  Blog()
                {
                    Title = "MyTitle", BlogGroupId = 1
                },
            };
            IList <String> tags = new List <string>()
            {
                "tag1", "tag2"
            };
            SearchEngineEntry searchEntry = post.ConvertToSearchEngineEntry(tags);

            Assert.AreEqual("tag1,tag2", searchEntry.Tags);
        }
Example #4
0
        public static void CreateIndex(object closet)
        {
            using (SearchEngineService ses = SearchEngineService.GetByCloset(Convert.ToInt32(closet)))
            {
                IList <SearchEngineEntry> lst = new List <SearchEngineEntry>();
                for (int i = ((Convert.ToInt32(closet) - 1) * maxRecordsPerCloset); i < maxRecordsPerCloset * Convert.ToInt32(closet); i++)
                {
                    SearchEngineEntry see = new SearchEngineEntry();
                    see.EntryId = i;

                    int amountOfClothes = rnd.Next(10) + 1;

                    see.Categories   = GetRandom(categories, amountOfClothes / 2);
                    see.Colors       = GetRandom(colors, amountOfClothes);
                    see.Silouhettes  = GetRandom(silouhettes, amountOfClothes);
                    see.EventTypes   = GetRandom(eventTypes);
                    see.Fabrics      = GetRandom(fabrics);
                    see.Seasons      = GetRandom(seasons);
                    see.Tags         = GetRandom(tags);
                    see.EditorRating = Convert.ToInt32(GetRandom(rating, 1));
                    see.FriendRating = 0;
                    see.FlavorId     = Convert.ToInt32(GetRandom(flavor, 1));

                    see.CreatedByMe = false;
                    see.MyRating    = 0;

                    if (i == 1)
                    {
                        see.MyRating = 5;
                    }

                    if (i <= 10)
                    {
                        see.FriendRating = 3;
                    }

                    lst.Add(see);
                }

                ses.AddEntries(lst);
            }
        }
Example #5
0
        public void CanUpdateIndex()
        {
            CreateIndex(1);

            using (SearchEngineService ses = SearchEngineService.GetByCloset(1))
            {
                //int totalEntry = ses.GetTotalIndexedEntryCount();
                //ses.RemovePost(2);
                //Assert.IsTrue(ses.GetTotalIndexedEntryCount() == totalEntry - 1);

                SearchEngineEntry see = new SearchEngineEntry();
                see.EntryId = 2;
                int amountOfClothes = rnd.Next(10) + 1;

                see.Categories   = GetRandom(categories, amountOfClothes / 2);
                see.Colors       = GetRandom(colors, amountOfClothes);
                see.Silouhettes  = GetRandom(silouhettes, amountOfClothes);
                see.EventTypes   = GetRandom(eventTypes);
                see.Fabrics      = GetRandom(fabrics);
                see.Seasons      = GetRandom(seasons);
                see.Tags         = GetRandom(tags);
                see.CreatedByMe  = true;
                see.EditorRating = Convert.ToInt32(GetRandom(rating, 1));
                see.FriendRating = Convert.ToInt32(GetRandom(rating, 1));
                see.MyRating     = 6;
                see.FlavorId     = Convert.ToInt32(GetRandom(flavor, 1));

                ses.AddEntry(see);
                //Assert.IsTrue(ses.GetTotalIndexedEntryCount() == totalEntry);

                SearchParameters sp = new SearchParameters();
                //sp.CreatedByMe = true;
                sp.MyRating = 6;

                SearchEngineResponse ser = ses.Search(sp, 0, 10, "EditorRating", false);
                Assert.IsTrue(ser.TotalCount == 1);
            }
        }
Example #6
0
        public void IndexService_WithPublishedPost_AddsPostToIndex()
        {
            var context             = new Mock <ISubtextContext>();
            var searchEngine        = new Mock <ISearchEngineService>();
            SearchEngineEntry entry = null;

            searchEngine.Setup(s => s.AddPost(It.IsAny <SearchEngineEntry>())).Callback <SearchEngineEntry>(e => entry = e);

            var indexService = new IndexingService(context.Object, searchEngine.Object);

            var blogEntry = new Entry(PostType.BlogPost)
            {
                Title = "Sample Post",
                Blog  = new Blog()
                {
                    Title = "My Blog"
                },
                IsActive = true,
            };

            indexService.AddPost(blogEntry);
            Assert.IsNotNull(entry);
        }