When.java

1
package com.github.dakusui.actionunit.actions;
2
3
import com.github.dakusui.actionunit.core.Action;
4
import com.github.dakusui.actionunit.core.ActionSupport;
5
import com.github.dakusui.actionunit.core.Context;
6
7
import java.util.Formatter;
8
import java.util.function.Predicate;
9
10
import static java.util.Objects.requireNonNull;
11
12
public interface When extends Action {
13
  Predicate<Context> cond();
14
15
  Action perform();
16
17
  Action otherwise();
18
19
  @Override
20
  default void accept(Visitor visitor) {
21 1 1. accept : removed call to com/github/dakusui/actionunit/core/Action$Visitor::visit → KILLED
    visitor.visit(this);
22
  }
23
24
  @Override
25
  default void formatTo(Formatter formatter, int flags, int width, int precision) {
26
    formatter.format("if [%s]", cond());
27
  }
28
29
  class Builder extends Action.Builder<When> {
30
    private final Predicate<Context> cond;
31
32
    private Action otherwise = Named.of("else", ActionSupport.nop());
33
    private Action perform;
34
35
    public Builder(Predicate<Context> cond) {
36
      this.cond = requireNonNull(cond);
37
    }
38
39
    public Builder perform(Action perform) {
40
      this.perform = Named.of("then", requireNonNull(perform));
41 1 1. perform : replaced return value with null for com/github/dakusui/actionunit/actions/When$Builder::perform → KILLED
      return this;
42
    }
43
44
    public Action otherwise(Action otherwise) {
45
      this.otherwise = Named.of("else", requireNonNull(otherwise));
46 1 1. otherwise : replaced return value with null for com/github/dakusui/actionunit/actions/When$Builder::otherwise → KILLED
      return this.$();
47
    }
48
49
    @Override
50
    public When build() {
51
      requireNonNull(this.perform);
52 1 1. build : replaced return value with null for com/github/dakusui/actionunit/actions/When$Builder::build → KILLED
      return new When() {
53
        @Override
54
        public Predicate<Context> cond() {
55 1 1. cond : replaced return value with null for com/github/dakusui/actionunit/actions/When$Builder$1::cond → KILLED
          return Builder.this.cond;
56
        }
57
58
        @Override
59
        public Action perform() {
60 1 1. perform : replaced return value with null for com/github/dakusui/actionunit/actions/When$Builder$1::perform → KILLED
          return Builder.this.perform;
61
        }
62
63
        @Override
64
        public Action otherwise() {
65 1 1. otherwise : replaced return value with null for com/github/dakusui/actionunit/actions/When$Builder$1::otherwise → KILLED
          return Builder.this.otherwise;
66
        }
67
      };
68
    }
69
  }
70
}

Mutations

21

1.1
Location : accept
Killed by : com.github.dakusui.actionunit.scenarios.CompatActionSupportTest.givenWhenAction$whenPerform$thenObjectAdded(com.github.dakusui.actionunit.scenarios.CompatActionSupportTest)
removed call to com/github/dakusui/actionunit/core/Action$Visitor::visit → KILLED

41

1.1
Location : perform
Killed by : com.github.dakusui.actionunit.scenarios.ActionSupportTest.givenWhenAction$whenNotMet$thenOtherwise(com.github.dakusui.actionunit.scenarios.ActionSupportTest)
replaced return value with null for com/github/dakusui/actionunit/actions/When$Builder::perform → KILLED

46

1.1
Location : otherwise
Killed by : com.github.dakusui.actionunit.scenarios.ActionSupportTest.givenWhenAction$whenNotMet$thenOtherwise(com.github.dakusui.actionunit.scenarios.ActionSupportTest)
replaced return value with null for com/github/dakusui/actionunit/actions/When$Builder::otherwise → KILLED

52

1.1
Location : build
Killed by : com.github.dakusui.actionunit.scenarios.ActionSupportTest.givenWhenAction$whenNotMet$thenOtherwise(com.github.dakusui.actionunit.scenarios.ActionSupportTest)
replaced return value with null for com/github/dakusui/actionunit/actions/When$Builder::build → KILLED

55

1.1
Location : cond
Killed by : com.github.dakusui.actionunit.scenarios.ActionSupportTest.givenWhenAction$whenNotMet$thenOtherwise(com.github.dakusui.actionunit.scenarios.ActionSupportTest)
replaced return value with null for com/github/dakusui/actionunit/actions/When$Builder$1::cond → KILLED

60

1.1
Location : perform
Killed by : com.github.dakusui.actionunit.scenarios.CompatActionSupportTest.givenWhenAction$whenPerform$thenObjectAdded(com.github.dakusui.actionunit.scenarios.CompatActionSupportTest)
replaced return value with null for com/github/dakusui/actionunit/actions/When$Builder$1::perform → KILLED

65

1.1
Location : otherwise
Killed by : com.github.dakusui.actionunit.scenarios.ActionSupportTest.givenWhenAction$whenNotMet$thenOtherwise(com.github.dakusui.actionunit.scenarios.ActionSupportTest)
replaced return value with null for com/github/dakusui/actionunit/actions/When$Builder$1::otherwise → KILLED

Active mutators

Tests examined


Report generated by PIT 1.7.3