Example #1
0
 def testAssertsOnInvalidRougeTypes(self):
     scorer = rouge_scorer.RougeScorer(["rougex"], False)
     with self.assertRaises(ValueError):
         io.compute_scores_and_write_to_csv(test_util.TARGETS_FILE,
                                            test_util.PREDICTIONS_FILE, "",
                                            scorer,
                                            scoring.BootstrapAggregator())
Example #2
0
def main(argv):
    if len(argv) > 1:
        raise app.UsageError("Too many command-line arguments.")
    scorer = rouge_scorer.RougeScorer(FLAGS.rouge_types, FLAGS.use_stemmer)
    aggregator = scoring.BootstrapAggregator() if FLAGS.aggregate else None
    io.compute_scores_and_write_to_csv(FLAGS.target_filepattern,
                                       FLAGS.prediction_filepattern,
                                       FLAGS.output_filename,
                                       scorer,
                                       aggregator,
                                       delimiter=FLAGS.delimiter)
Example #3
0
 def testUnAggregated(self):
   with tempfile.NamedTemporaryFile() as output_file:
     output_filename = output_file.name
     scorer = rouge_scorer.RougeScorer(["rouge1"], False)
     io.compute_scores_and_write_to_csv(test_util.TARGETS_FILE,
                                        test_util.PREDICTIONS_FILE,
                                        output_filename, scorer, None)
     with open(output_filename) as f:
       csv_lines = f.readlines()
     ids = tuple((line.split(",")[0] for line in csv_lines))
     self.assertEqual(ids[0], "id")
     self.assertLen(csv_lines, 3)
Example #4
0
 def testProducesValidOutput(self):
   with tempfile.NamedTemporaryFile() as output_file:
     output_filename = output_file.name
     scorer = rouge_scorer.RougeScorer(["rouge1"], False)
     io.compute_scores_and_write_to_csv(test_util.TARGETS_FILE,
                                        test_util.PREDICTIONS_FILE,
                                        output_filename, scorer,
                                        scoring.BootstrapAggregator())
     with open(output_filename) as f:
       csv_lines = f.readlines()
     output_types = tuple((line.split(",")[0] for line in csv_lines))
     self.assertEqual(output_types[0], "score_type")
     self.assertSameElements(output_types[1:],
                             ["rouge1-P", "rouge1-R", "rouge1-F"])
Example #5
0
 def testDelimitedFile(self):
     with tempfile.NamedTemporaryFile() as output_file:
         output_filename = output_file.name
         scorer = rouge_scorer.RougeScorer(["rouge1"], False)
         io.compute_scores_and_write_to_csv(test_util.DELIMITED_FILE,
                                            test_util.DELIMITED_FILE,
                                            output_filename,
                                            scorer,
                                            None,
                                            delimiter=":")
         with open(output_filename) as f:
             csv_lines = f.readlines()
         ids = tuple((line.split(",")[0] for line in csv_lines))
         self.assertEqual(ids[0], "id")
         self.assertLen(csv_lines, 5)
Example #6
0
 def testAssertsOnInvalidInputFiles(self):
   scorer = rouge_scorer.RougeScorer(["rouge1"], False)
   with self.assertRaises(ValueError):
     io.compute_scores_and_write_to_csv("invalid*", "invalid*", "invalid",
                                        scorer, scoring.BootstrapAggregator())