예제 #1
0
    def test_default_pool_deterministic(self):
        """Deterministically tests the random strategy pool generator."""
        strategy_pool = strategy_selection.generate_default_strategy_pool()

        # Ml rnn and radamsa strategies are mutually exclusive. Because of how we
        # patch, ml rnn will evaluate to false, however this depends on the
        # implementation.
        self.assertTrue(
            strategy_pool.do_strategy(
                strategy.CORPUS_MUTATION_RADAMSA_STRATEGY))
        self.assertFalse(
            strategy_pool.do_strategy(
                strategy.CORPUS_MUTATION_ML_RNN_STRATEGY))
        self.assertTrue(
            strategy_pool.do_strategy(strategy.CORPUS_SUBSET_STRATEGY))
        self.assertTrue(
            strategy_pool.do_strategy(strategy.RANDOM_MAX_LENGTH_STRATEGY))
        self.assertTrue(
            strategy_pool.do_strategy(
                strategy.RECOMMENDED_DICTIONARY_STRATEGY))
        self.assertTrue(
            strategy_pool.do_strategy(strategy.VALUE_PROFILE_STRATEGY))
        self.assertTrue(strategy_pool.do_strategy(strategy.FORK_STRATEGY))
        self.assertTrue(
            strategy_pool.do_strategy(strategy.MUTATOR_PLUGIN_STRATEGY))
예제 #2
0
 def test_default_pool_generator(self):
     """Ensures that a call to generate_default_strategy_pool does not yield an
 exception. Deterministic behaviors are tested in the previous test."""
     strategy_selection.generate_default_strategy_pool()