Exemple #1
0
    def test_no_improvement_flag_hit(self):
        exp = exp_domain.Exploration.create_default_exploration(
            'eid', 'A title', 'A category')
        exp_services.save_new_exploration('*****@*****.**', exp)

        not_default_rule_spec = exp_domain.RuleSpec(
            {
                'rule_type': rule_domain.ATOMIC_RULE_TYPE,
                'name': 'NotDefault',
                'inputs': {},
                'subject': 'answer'
            }, exp.init_state_name, [], [], 'NormalizedString')
        default_rule_spec = exp_domain.RuleSpec.get_default_rule_spec(
            feconf.END_DEST, 'NormalizedString')
        exp.init_state.widget.handlers[0].rule_specs = [
            not_default_rule_spec, default_rule_spec
        ]
        exp_services._save_exploration('*****@*****.**', exp, '', [])

        event_services.StateHitEventHandler.record('eid', exp.init_state_name,
                                                   True)
        event_services.AnswerSubmissionEventHandler.record(
            'eid', 1, exp.init_state_name, self.SUBMIT_HANDLER,
            not_default_rule_spec, '1')
        self.assertEquals(stats_services.get_state_improvements('eid'), [])
Exemple #2
0
    def test_no_improvement_flag_hit(self):
        self.save_new_valid_exploration('eid',
                                        '*****@*****.**',
                                        end_state_name='End')
        exp = exp_services.get_exploration_by_id('eid')

        not_default_rule_spec = exp_domain.RuleSpec('Equals', {'x': 'Text'})
        init_interaction = exp.init_state.interaction
        init_interaction.answer_groups.append(
            exp_domain.AnswerGroup(
                exp_domain.Outcome(exp.init_state_name, [], {}),
                [not_default_rule_spec]))
        init_interaction.default_outcome = exp_domain.Outcome('End', [], {})
        exp_services._save_exploration('*****@*****.**', exp, '', [])

        event_services.AnswerSubmissionEventHandler.record(
            'eid', 1, exp.init_state_name,
            not_default_rule_spec.stringify_classified_rule(), '1')
        self.assertEquals(stats_services.get_state_improvements('eid', 1), [])