public virtual void  TestNegativeScores()
		{
			
			// The Top*Collectors previously filtered out documents with <= scores. This
			// behavior has changed. This test checks that if PositiveOnlyScoresFilter
			// wraps one of these collectors, documents with <= 0 scores are indeed
			// filtered.
			
			int numPositiveScores = 0;
			for (int i = 0; i < scores.Length; i++)
			{
				if (scores[i] > 0)
				{
					++numPositiveScores;
				}
			}
			
			Scorer s = new SimpleScorer();
			TopDocsCollector<ScoreDoc> tdc = TopScoreDocCollector.Create(scores.Length, true);
			Collector c = new PositiveScoresOnlyCollector(tdc);
			c.SetScorer(s);
			while (s.NextDoc() != DocIdSetIterator.NO_MORE_DOCS)
			{
				c.Collect(0);
			}
			TopDocs td = tdc.TopDocs();
			ScoreDoc[] sd = td.ScoreDocs;
			Assert.AreEqual(numPositiveScores, td.TotalHits);
			for (int i = 0; i < sd.Length; i++)
			{
				Assert.IsTrue(sd[i].Score > 0, "only positive scores should return: " + sd[i].Score);
			}
		}
Exemplo n.º 2
0
        public virtual void  TestNegativeScores()
        {
            // The Top*Collectors previously filtered out documents with <= scores. This
            // behavior has changed. This test checks that if PositiveOnlyScoresFilter
            // wraps one of these collectors, documents with <= 0 scores are indeed
            // filtered.

            int numPositiveScores = 0;

            for (int i = 0; i < scores.Length; i++)
            {
                if (scores[i] > 0)
                {
                    ++numPositiveScores;
                }
            }

            Scorer           s   = new SimpleScorer();
            TopDocsCollector tdc = TopScoreDocCollector.create(scores.Length, true);
            Collector        c   = new PositiveScoresOnlyCollector(tdc);

            c.SetScorer(s);
            while (s.NextDoc() != DocIdSetIterator.NO_MORE_DOCS)
            {
                c.Collect(0);
            }
            TopDocs td = tdc.TopDocs();

            ScoreDoc[] sd = td.ScoreDocs;
            Assert.AreEqual(numPositiveScores, td.TotalHits);
            for (int i = 0; i < sd.Length; i++)
            {
                Assert.IsTrue(sd[i].score > 0, "only positive scores should return: " + sd[i].score);
            }
        }
        public virtual void TestGetScores()
        {
            Directory         directory = NewDirectory();
            RandomIndexWriter writer    = new RandomIndexWriter(Random(), directory, Similarity, TimeZone);

            writer.Commit();
            IndexReader ir = writer.Reader;

            writer.Dispose();
            IndexSearcher         searcher = NewSearcher(ir);
            Weight                fake     = (new TermQuery(new Term("fake", "weight"))).CreateWeight(searcher);
            Scorer                s        = new SimpleScorer(fake);
            ScoreCachingCollector scc      = new ScoreCachingCollector(Scores.Length);

            scc.Scorer = s;

            // We need to iterate on the scorer so that its doc() advances.
            int doc;

            while ((doc = s.NextDoc()) != DocIdSetIterator.NO_MORE_DOCS)
            {
                scc.Collect(doc);
            }

            for (int i = 0; i < Scores.Length; i++)
            {
                Assert.AreEqual(Scores[i], scc.Mscores[i], 0f);
            }
            ir.Dispose();
            directory.Dispose();
        }
Exemplo n.º 4
0
        public virtual void TestGetScores()
        {
            Directory         directory = NewDirectory();
            RandomIndexWriter writer    = new RandomIndexWriter(
#if FEATURE_INSTANCE_TESTDATA_INITIALIZATION
                this,
#endif
                Random, directory);

            writer.Commit();
            IndexReader ir = writer.GetReader();

            writer.Dispose();
            IndexSearcher         searcher = NewSearcher(ir);
            Weight                fake     = (new TermQuery(new Term("fake", "weight"))).CreateWeight(searcher);
            Scorer                s        = new SimpleScorer(fake);
            ScoreCachingCollector scc      = new ScoreCachingCollector(Scores.Length);

            scc.SetScorer(s);

            // We need to iterate on the scorer so that its doc() advances.
            int doc;

            while ((doc = s.NextDoc()) != DocIdSetIterator.NO_MORE_DOCS)
            {
                scc.Collect(doc);
            }

            for (int i = 0; i < Scores.Length; i++)
            {
                Assert.AreEqual(Scores[i], scc.Mscores[i], 0f);
            }
            ir.Dispose();
            directory.Dispose();
        }
Exemplo n.º 5
0
        public void OutputScoreToConsole()
        {
            // Use a string builder to ensure line endings are OS correct.
            var sb = new StringBuilder();

            sb.AppendLine(@"                   PLAYER      SCORE");
            sb.AppendLine(@" 1 :             Player 1          1");
            sb.AppendLine(@" 2 :             Player 2          1");
            sb.AppendLine(@" 3 :             Player 3          1");
            sb.AppendLine(@"------------------------------------");

            var expected = sb.ToString();

            var scorer = new SimpleScorer();

            scorer.Start(_Players);

            var turns = new Turn[]
            {
                new Turn(_Players.ElementAt(0), HandGesture.Rock),
                new Turn(_Players.ElementAt(1), HandGesture.Paper),
                new Turn(_Players.ElementAt(2), HandGesture.Scissors),
            };

            scorer.Update(turns);
            _ScoreView.View(scorer.Scores);
            var actual = _TextWriter.ToString();

            // Don't match the entire string but just pickout the highlights
            Assert.IsNotNull(actual, @"The Score Viewer should return a string");
            Assert.IsNotEmpty(actual, @"The Score Viewer should return a non-empty string");
            Assert.AreEqual(expected, actual, @"The string should show the header and player scores");
        }
        public virtual void TestGetScores()
        {
            Directory directory = NewDirectory();
            RandomIndexWriter writer = new RandomIndexWriter(Random(), directory);
            writer.Commit();
            IndexReader ir = writer.Reader;
            writer.Dispose();
            IndexSearcher searcher = NewSearcher(ir);
            Weight fake = (new TermQuery(new Term("fake", "weight"))).CreateWeight(searcher);
            Scorer s = new SimpleScorer(fake);
            ScoreCachingCollector scc = new ScoreCachingCollector(Scores.Length);
            scc.Scorer = s;

            // We need to iterate on the scorer so that its doc() advances.
            int doc;
            while ((doc = s.NextDoc()) != DocIdSetIterator.NO_MORE_DOCS)
            {
                scc.Collect(doc);
            }

            for (int i = 0; i < Scores.Length; i++)
            {
                Assert.AreEqual(Scores[i], scc.Mscores[i], 0f);
            }
            ir.Dispose();
            directory.Dispose();
        }
Exemplo n.º 7
0
        public virtual void TestNegativeScores()
        {
            // The Top*Collectors previously filtered out documents with <= scores. this
            // behavior has changed. this test checks that if PositiveOnlyScoresFilter
            // wraps one of these collectors, documents with <= 0 scores are indeed
            // filtered.

            int numPositiveScores = 0;

            for (int i = 0; i < Scores.Length; i++)
            {
                if (Scores[i] > 0)
                {
                    ++numPositiveScores;
                }
            }

            Directory         directory = NewDirectory();
            RandomIndexWriter writer    = new RandomIndexWriter(
#if FEATURE_INSTANCE_TESTDATA_INITIALIZATION
                this,
#endif
                Random, directory);

            writer.Commit();
            IndexReader ir = writer.GetReader();

            writer.Dispose();
            IndexSearcher searcher          = NewSearcher(ir);
            Weight        fake              = (new TermQuery(new Term("fake", "weight"))).CreateWeight(searcher);
            Scorer        s                 = new SimpleScorer(fake);
            TopDocsCollector <ScoreDoc> tdc = TopScoreDocCollector.Create(Scores.Length, true);
            ICollector c = new PositiveScoresOnlyCollector(tdc);

            c.SetScorer(s);
            while (s.NextDoc() != DocIdSetIterator.NO_MORE_DOCS)
            {
                c.Collect(0);
            }
            TopDocs td = tdc.GetTopDocs();

            ScoreDoc[] sd = td.ScoreDocs;
            Assert.AreEqual(numPositiveScores, td.TotalHits);
            for (int i = 0; i < sd.Length; i++)
            {
                Assert.IsTrue(sd[i].Score > 0, "only positive scores should return: " + sd[i].Score);
            }
            ir.Dispose();
            directory.Dispose();
        }
Exemplo n.º 8
0
        public void 땡으로_이기는_경우()
        {
            Scorer scorer = new SimpleScorer();
            Player p1     = new Player("현정");//100점

            p1.AddCard(new Card(10, true));
            p1.AddCard(new Card(10, true));

            Player p2 = new Player("문범");//6점

            p2.AddCard(new Card(4, false));
            p2.AddCard(new Card(2, false));

            Player winner = scorer.GetWinner(p1, p2);

            Assert.AreEqual(p1, winner);
        }
Exemplo n.º 9
0
        public void 두_카드의_숫자의_합이_10보다_작은_경우()
        {
            Scorer scorer = new SimpleScorer();
            Player p1     = new Player("1");

            p1.AddCard(new Card(4, false));
            p1.AddCard(new Card(4, false));

            Player p2 = new Player("2");

            p2.AddCard(new Card(4, false));
            p2.AddCard(new Card(5, false));

            Player winner = scorer.GetWinner(p1, p2);

            Assert.AreEqual(p2, winner);
        }
Exemplo n.º 10
0
        public void Simple스코어_승자_맞게나오는지_테스트()
        {
            Game game = new Game();

            game.StartNewRound();
            game.SelectScorer(ScorerType.Simple);

            SimpleScorer scorer = new SimpleScorer();

            for (int i = 0; i < 100; i++)
            {
                game.DistributeCards();
                int winnerIndex = game.GetWinnerIndex();

                Debug.Log($"{game[0].Name} : {game[0, 0]}, {game[0, 1]} : {game[0, 0].No + game[0, 1].No} \t// {game[1].Name} : {game[1, 0].No}, {game[1, 1].No} : {game[1, 0].No + game[1, 1].No} \t// 승자 : {game[winnerIndex].Name}");

                Assert.AreEqual(scorer.GetWinner(game[0], game[1]), game[winnerIndex]);
            }
        }
        public virtual void  TestGetScores()
        {
            Scorer s = new SimpleScorer();
            ScoreCachingCollector scc = new ScoreCachingCollector(scores.Length);

            scc.SetScorer(s);

            // We need to iterate on the scorer so that its doc() advances.
            int doc;

            while ((doc = s.NextDoc(null)) != DocIdSetIterator.NO_MORE_DOCS)
            {
                scc.Collect(doc, null);
            }

            for (int i = 0; i < scores.Length; i++)
            {
                Assert.AreEqual(scores[i], scc.mscores[i], 0f);
            }
        }
        public virtual void TestNegativeScores()
        {
            // The Top*Collectors previously filtered out documents with <= scores. this
            // behavior has changed. this test checks that if PositiveOnlyScoresFilter
            // wraps one of these collectors, documents with <= 0 scores are indeed
            // filtered.

            int numPositiveScores = 0;
            for (int i = 0; i < Scores.Length; i++)
            {
                if (Scores[i] > 0)
                {
                    ++numPositiveScores;
                }
            }

            Directory directory = NewDirectory();
            RandomIndexWriter writer = new RandomIndexWriter(Random(), directory);
            writer.Commit();
            IndexReader ir = writer.Reader;
            writer.Dispose();
            IndexSearcher searcher = NewSearcher(ir);
            Weight fake = (new TermQuery(new Term("fake", "weight"))).CreateWeight(searcher);
            Scorer s = new SimpleScorer(fake);
            TopDocsCollector<ScoreDoc> tdc = TopScoreDocCollector.Create(Scores.Length, true);
            Collector c = new PositiveScoresOnlyCollector(tdc);
            c.Scorer = s;
            while (s.NextDoc() != DocIdSetIterator.NO_MORE_DOCS)
            {
                c.Collect(0);
            }
            TopDocs td = tdc.TopDocs();
            ScoreDoc[] sd = td.ScoreDocs;
            Assert.AreEqual(numPositiveScores, td.TotalHits);
            for (int i = 0; i < sd.Length; i++)
            {
                Assert.IsTrue(sd[i].Score > 0, "only positive scores should return: " + sd[i].Score);
            }
            ir.Dispose();
            directory.Dispose();
        }
		public virtual void  TestGetScores()
		{
			
			Scorer s = new SimpleScorer();
			ScoreCachingCollector scc = new ScoreCachingCollector(scores.Length);
			scc.SetScorer(s);
			
			// We need to iterate on the scorer so that its doc() advances.
			int doc;
			while ((doc = s.NextDoc()) != DocIdSetIterator.NO_MORE_DOCS)
			{
				scc.Collect(doc);
			}
			
			for (int i = 0; i < scores.Length; i++)
			{
				Assert.AreEqual(scores[i], scc.mscores[i], 0f);
			}
		}