    @Test
    public void testActivate() {

        Engine engine = Console.mamdani();
        InputVariable ambient = engine.getInputVariable(0);
        ambient.setValue(0.3);
        RuleBlock ruleBlock = engine.getRuleBlock(0);
        ruleBlock.setActivation(new Highest(1));
        engine.process();

        List<Rule> rules = engine.getRuleBlock(0).getRules();
        Assert.assertThat("First rule was fired",
                rules.get(0).isTriggered(), is(true));
        Assert.assertThat("Second rule was not fired",
                rules.get(1).isTriggered(), is(false));
        Assert.assertThat("Third rule was not fired",
                rules.get(2).isTriggered(), is(false));

        ruleBlock.setActivation(new Highest(2));
        engine.process();
        Assert.assertThat("First rule was fired",
                rules.get(0).isTriggered(), is(true));
        Assert.assertThat("Second rule was fired",
                rules.get(1).isTriggered(), is(true));
        Assert.assertThat("Third rule was not fired",
                rules.get(2).isTriggered(), is(false));
    }