TargetMouseAdapter.java

1
package com.jsql.view.swing.panel.address;
2
3
import com.jsql.util.CookiesUtil;
4
import com.jsql.util.LogLevelUtil;
5
import com.jsql.util.ParameterUtil;
6
import com.jsql.view.swing.panel.PanelAddressBar;
7
import org.apache.commons.lang3.StringUtils;
8
import org.apache.logging.log4j.LogManager;
9
import org.apache.logging.log4j.Logger;
10
11
import javax.swing.*;
12
import java.awt.event.MouseAdapter;
13
import java.awt.event.MouseEvent;
14
import java.net.MalformedURLException;
15
import java.net.URI;
16
import java.net.URISyntaxException;
17
import java.util.AbstractMap;
18
import java.util.Arrays;
19
import java.util.regex.Pattern;
20
import java.util.stream.Stream;
21
22
class TargetMouseAdapter extends MouseAdapter {
23
24
    private static final Logger LOGGER = LogManager.getRootLogger();
25
26
    private final PanelTrailingAddress panelTrailingAddress;
27
    private final PanelAddressBar panelAddressBar;
28
    private final JPopupMenu popupMenuTargets = new JPopupMenu();
29
30
    public TargetMouseAdapter(PanelTrailingAddress panelTrailingAddress, PanelAddressBar panelAddressBar) {
31
        this.panelTrailingAddress = panelTrailingAddress;
32
        this.panelAddressBar = panelAddressBar;
33
    }
34
35
    @Override
36
    public void mousePressed(MouseEvent event) {
37 1 1. mousePressed : removed call to javax/swing/JPopupMenu::removeAll → NO_COVERAGE
        this.popupMenuTargets.removeAll();
38
        JRadioButtonMenuItem menuParamAuto = new JRadioButtonMenuItem(PanelTrailingAddress.PARAM_AUTO);
39 1 1. mousePressed : removed call to javax/swing/JRadioButtonMenuItem::setActionCommand → NO_COVERAGE
        menuParamAuto.setActionCommand(PanelTrailingAddress.PARAM_AUTO);  // mock required when adding star: @ParameterUtil.controlInput
40 1 1. mousePressed : removed call to javax/swing/JRadioButtonMenuItem::addActionListener → NO_COVERAGE
        menuParamAuto.addActionListener(actionEvent ->
41 1 1. lambda$mousePressed$0 : removed call to javax/swing/JLabel::setText → NO_COVERAGE
            this.panelTrailingAddress.getLabelTarget().setText(menuParamAuto.getText())
42
        );
43
        this.popupMenuTargets.add(menuParamAuto);
44
45
        var rawQuery = this.panelAddressBar.getTextFieldAddress().getText().trim();
46
        var rawRequest = this.panelAddressBar.getTextFieldRequest().getText().trim();
47
        var rawHeader = this.panelAddressBar.getTextFieldHeader().getText().trim();
48
49
        var selection = this.panelTrailingAddress.getGroupRadio().getSelection();
50
        String selectionCommand;  // effectively final
51 1 1. mousePressed : negated conditional → NO_COVERAGE
        if (selection != null) {
52
            selectionCommand = selection.getActionCommand();
53
        } else {
54
            selectionCommand = StringUtils.EMPTY;
55
        }
56 1 1. mousePressed : removed call to com/jsql/view/swing/panel/address/PanelTrailingAddress::setGroupRadio → NO_COVERAGE
        this.panelTrailingAddress.setGroupRadio(new ButtonGroup());
57 1 1. mousePressed : removed call to javax/swing/ButtonGroup::add → NO_COVERAGE
        this.panelTrailingAddress.getGroupRadio().add(menuParamAuto);
58
        JMenu menuQuery = new JMenu("Query");
59 1 1. mousePressed : negated conditional → NO_COVERAGE
        if (!rawQuery.isEmpty()) {
60
            try {
61 1 1. mousePressed : negated conditional → NO_COVERAGE
                rawQuery = !rawQuery.matches("(?i)^\\w+://.*") ? "http://" + rawQuery : rawQuery;
62
                var url = new URI(rawQuery).toURL();
63 1 1. mousePressed : negated conditional → NO_COVERAGE
                if (url.getQuery() != null) {
64 1 1. mousePressed : removed call to com/jsql/view/swing/panel/address/TargetMouseAdapter::buildMenu → NO_COVERAGE
                    this.buildMenu(url.getQuery(), ParameterUtil.PREFIX_COMMAND_QUERY, selectionCommand, menuQuery);
65
                }
66
            } catch (IllegalArgumentException | MalformedURLException | URISyntaxException e) {
67
                LOGGER.log(LogLevelUtil.CONSOLE_ERROR, "Incorrect URL: {}", e.getMessage());
68
                return;
69
            }
70
        }
71
72
        JMenu menuRequest = new JMenu("Request");
73 1 1. mousePressed : negated conditional → NO_COVERAGE
        if (!rawRequest.isEmpty()) {
74 1 1. mousePressed : removed call to com/jsql/view/swing/panel/address/TargetMouseAdapter::buildMenu → NO_COVERAGE
            this.buildMenu(rawRequest, ParameterUtil.PREFIX_COMMAND_REQUEST, selectionCommand, menuRequest);
75
        }
76
77
        JMenu menuHeader = new JMenu("Header");
78 1 1. mousePressed : negated conditional → NO_COVERAGE
        if (!rawHeader.isEmpty()) {
79 1 1. mousePressed : removed call to com/jsql/view/swing/panel/address/TargetMouseAdapter::buildMenuHeader → NO_COVERAGE
            this.buildMenuHeader(rawHeader, selectionCommand, menuHeader);
80
        }
81
82
        Arrays.stream(this.popupMenuTargets.getComponents())
83
            .map(JComponent.class::cast)
84 2 1. mousePressed : removed call to java/util/stream/Stream::forEach → NO_COVERAGE
2. lambda$mousePressed$1 : removed call to javax/swing/JComponent::setEnabled → NO_COVERAGE
            .forEach(c -> c.setEnabled(false));
85 1 1. mousePressed : removed call to javax/swing/JRadioButtonMenuItem::setEnabled → NO_COVERAGE
        menuParamAuto.setEnabled(true);
86 1 1. mousePressed : negated conditional → NO_COVERAGE
        if (this.panelTrailingAddress.getGroupRadio().getSelection() == null) {
87 1 1. mousePressed : removed call to javax/swing/JRadioButtonMenuItem::setSelected → NO_COVERAGE
            menuParamAuto.setSelected(true);
88 1 1. mousePressed : removed call to javax/swing/JLabel::setText → NO_COVERAGE
            this.panelTrailingAddress.getLabelTarget().setText(menuParamAuto.getText());
89
        }
90 3 1. mousePressed : removed call to javax/swing/JMenu::setEnabled → NO_COVERAGE
2. mousePressed : changed conditional boundary → NO_COVERAGE
3. mousePressed : negated conditional → NO_COVERAGE
        menuQuery.setEnabled(menuQuery.getMenuComponentCount() > 0);
91 3 1. mousePressed : negated conditional → NO_COVERAGE
2. mousePressed : changed conditional boundary → NO_COVERAGE
3. mousePressed : removed call to javax/swing/JMenu::setEnabled → NO_COVERAGE
        menuRequest.setEnabled(menuRequest.getMenuComponentCount() > 0);
92 3 1. mousePressed : changed conditional boundary → NO_COVERAGE
2. mousePressed : removed call to javax/swing/JMenu::setEnabled → NO_COVERAGE
3. mousePressed : negated conditional → NO_COVERAGE
        menuHeader.setEnabled(menuHeader.getMenuComponentCount() > 0);
93
94
        if (
95 2 1. mousePressed : negated conditional → NO_COVERAGE
2. mousePressed : changed conditional boundary → NO_COVERAGE
            menuQuery.getMenuComponentCount() > 0
96 2 1. mousePressed : changed conditional boundary → NO_COVERAGE
2. mousePressed : negated conditional → NO_COVERAGE
            || menuRequest.getMenuComponentCount() > 0
97 2 1. mousePressed : changed conditional boundary → NO_COVERAGE
2. mousePressed : negated conditional → NO_COVERAGE
            || menuHeader.getMenuComponentCount() > 0
98
        ) {
99
            Arrays.stream(this.popupMenuTargets.getComponents())
100
                .map(JComponent.class::cast)
101 1 1. mousePressed : removed call to java/util/stream/Stream::forEach → NO_COVERAGE
                .forEach(JComponent::updateUI);  // required: incorrect when dark/light mode switch
102 1 1. mousePressed : removed call to javax/swing/JPopupMenu::updateUI → NO_COVERAGE
            this.popupMenuTargets.updateUI();  // required: incorrect when dark/light mode switch
103 1 1. mousePressed : removed call to javax/swing/SwingUtilities::invokeLater → NO_COVERAGE
            SwingUtilities.invokeLater(() -> {  // reduce flickering on linux
104 3 1. lambda$mousePressed$2 : removed call to javax/swing/JPopupMenu::show → NO_COVERAGE
2. lambda$mousePressed$2 : Replaced integer addition with subtraction → NO_COVERAGE
3. lambda$mousePressed$2 : Replaced integer addition with subtraction → NO_COVERAGE
                this.popupMenuTargets.show(event.getComponent(), event.getComponent().getX(), 5 + event.getComponent().getY() + event.getComponent().getHeight());
105 3 1. lambda$mousePressed$2 : Replaced integer addition with subtraction → NO_COVERAGE
2. lambda$mousePressed$2 : Replaced integer addition with subtraction → NO_COVERAGE
3. lambda$mousePressed$2 : removed call to javax/swing/JPopupMenu::setLocation → NO_COVERAGE
                this.popupMenuTargets.setLocation(event.getComponent().getLocationOnScreen().x, 5 + event.getComponent().getLocationOnScreen().y + event.getComponent().getHeight());
106
            });
107
        } else {
108
            LOGGER.log(LogLevelUtil.CONSOLE_ERROR, "Missing parameter to inject");
109
        }
110
    }
111
112
    private void buildMenuHeader(String rawHeader, String selectionCommand, JMenu menuHeader) {
113
        var listHeaders = Pattern.compile("\\\\r\\\\n")
114
            .splitAsStream(rawHeader)
115 1 1. lambda$buildMenuHeader$3 : replaced return value with null for com/jsql/view/swing/panel/address/TargetMouseAdapter::lambda$buildMenuHeader$3 → NO_COVERAGE
            .map(keyValue -> Arrays.copyOf(keyValue.split(":"), 2))
116 1 1. lambda$buildMenuHeader$4 : replaced return value with null for com/jsql/view/swing/panel/address/TargetMouseAdapter::lambda$buildMenuHeader$4 → NO_COVERAGE
            .map(keyValue -> new AbstractMap.SimpleEntry<>(
117
                keyValue[0],
118 1 1. lambda$buildMenuHeader$4 : negated conditional → NO_COVERAGE
                keyValue[1] == null ? StringUtils.EMPTY : keyValue[1]
119
            ))
120
            .toList();
121 1 1. buildMenuHeader : removed call to java/util/List::forEach → NO_COVERAGE
        listHeaders.forEach(entry -> {
122
            JRadioButtonMenuItem menuItem = new JRadioButtonMenuItem(entry.getKey());
123 1 1. lambda$buildMenuHeader$6 : removed call to javax/swing/JRadioButtonMenuItem::setSelected → NO_COVERAGE
            menuItem.setSelected((ParameterUtil.PREFIX_COMMAND_HEADER + entry.getKey()).equals(selectionCommand));
124 1 1. lambda$buildMenuHeader$6 : removed call to javax/swing/JRadioButtonMenuItem::setActionCommand → NO_COVERAGE
            menuItem.setActionCommand(ParameterUtil.PREFIX_COMMAND_HEADER + entry.getKey());
125 1 1. lambda$buildMenuHeader$6 : removed call to javax/swing/JRadioButtonMenuItem::addActionListener → NO_COVERAGE
            menuItem.addActionListener(actionEvent ->
126 1 1. lambda$buildMenuHeader$5 : removed call to javax/swing/JLabel::setText → NO_COVERAGE
                this.panelTrailingAddress.getLabelTarget().setText(entry.getKey())
127
            );
128 1 1. lambda$buildMenuHeader$6 : removed call to javax/swing/ButtonGroup::add → NO_COVERAGE
            this.panelTrailingAddress.getGroupRadio().add(menuItem);
129
            menuHeader.add(menuItem);
130
        });
131 3 1. lambda$buildMenuHeader$7 : replaced boolean return with true for com/jsql/view/swing/panel/address/TargetMouseAdapter::lambda$buildMenuHeader$7 → NO_COVERAGE
2. lambda$buildMenuHeader$7 : replaced boolean return with false for com/jsql/view/swing/panel/address/TargetMouseAdapter::lambda$buildMenuHeader$7 → NO_COVERAGE
3. buildMenuHeader : negated conditional → NO_COVERAGE
        if (listHeaders.stream().anyMatch(s -> CookiesUtil.COOKIE.equalsIgnoreCase(s.getKey()))) {
132
            var cookies = listHeaders.stream()
133 2 1. lambda$buildMenuHeader$8 : replaced boolean return with true for com/jsql/view/swing/panel/address/TargetMouseAdapter::lambda$buildMenuHeader$8 → NO_COVERAGE
2. lambda$buildMenuHeader$8 : replaced boolean return with false for com/jsql/view/swing/panel/address/TargetMouseAdapter::lambda$buildMenuHeader$8 → NO_COVERAGE
                .filter(s -> CookiesUtil.COOKIE.equalsIgnoreCase(s.getKey()))
134
                .findFirst()
135
                .orElse(new AbstractMap.SimpleEntry<>(CookiesUtil.COOKIE, ""));
136 1 1. buildMenuHeader : negated conditional → NO_COVERAGE
            if (!cookies.getValue().trim().isEmpty()) {
137
                JMenu menuCookie = new JMenu(CookiesUtil.COOKIE);
138
                String[] cookieValues = StringUtils.split(cookies.getValue(), ";");
139 1 1. buildMenuHeader : removed call to java/util/stream/Stream::forEach → NO_COVERAGE
                Stream.of(cookieValues).forEach(cookie -> {
140
                    String[] cookieEntry = StringUtils.split(cookie, "=");
141
                    JRadioButtonMenuItem menuItem = new JRadioButtonMenuItem(cookieEntry[0].trim());
142 1 1. lambda$buildMenuHeader$10 : removed call to javax/swing/JRadioButtonMenuItem::setSelected → NO_COVERAGE
                    menuItem.setSelected((ParameterUtil.PREFIX_COMMAND_COOKIE + cookieEntry[0].trim()).equals(selectionCommand));
143 1 1. lambda$buildMenuHeader$10 : removed call to javax/swing/JRadioButtonMenuItem::setActionCommand → NO_COVERAGE
                    menuItem.setActionCommand(ParameterUtil.PREFIX_COMMAND_COOKIE + cookieEntry[0].trim());
144 1 1. lambda$buildMenuHeader$10 : removed call to javax/swing/JRadioButtonMenuItem::addActionListener → NO_COVERAGE
                    menuItem.addActionListener(actionEvent ->
145 1 1. lambda$buildMenuHeader$9 : removed call to javax/swing/JLabel::setText → NO_COVERAGE
                            this.panelTrailingAddress.getLabelTarget().setText(cookieEntry[0].trim())
146
                    );
147 1 1. lambda$buildMenuHeader$10 : removed call to javax/swing/ButtonGroup::add → NO_COVERAGE
                    this.panelTrailingAddress.getGroupRadio().add(menuItem);
148
                    menuCookie.add(menuItem);
149
                });
150 1 1. buildMenuHeader : removed call to javax/swing/JMenu::addSeparator → NO_COVERAGE
                menuHeader.addSeparator();
151
                menuHeader.add(menuCookie);
152
            }
153
        }
154
        this.popupMenuTargets.add(menuHeader);
155
    }
156
157
    private void buildMenu(String rawParams, String prefixCommand, String selectionCommand, JMenu menu) {
158
        Pattern.compile("&").splitAsStream(rawParams)
159 1 1. lambda$buildMenu$11 : replaced return value with null for com/jsql/view/swing/panel/address/TargetMouseAdapter::lambda$buildMenu$11 → NO_COVERAGE
            .map(keyValue -> Arrays.copyOf(keyValue.split("="), 2))
160 1 1. lambda$buildMenu$12 : replaced return value with null for com/jsql/view/swing/panel/address/TargetMouseAdapter::lambda$buildMenu$12 → NO_COVERAGE
            .map(keyValue -> new AbstractMap.SimpleEntry<>(
161
                keyValue[0],
162 1 1. lambda$buildMenu$12 : negated conditional → NO_COVERAGE
                keyValue[1] == null ? StringUtils.EMPTY : keyValue[1]
163
            ))
164 1 1. buildMenu : removed call to java/util/stream/Stream::forEach → NO_COVERAGE
            .forEach(entry -> {
165
                JRadioButtonMenuItem menuItem = new JRadioButtonMenuItem(entry.getKey());
166 1 1. lambda$buildMenu$14 : removed call to javax/swing/JRadioButtonMenuItem::setSelected → NO_COVERAGE
                menuItem.setSelected((prefixCommand + entry.getKey()).equals(selectionCommand));
167 1 1. lambda$buildMenu$14 : removed call to javax/swing/JRadioButtonMenuItem::setActionCommand → NO_COVERAGE
                menuItem.setActionCommand(prefixCommand + entry.getKey());
168 1 1. lambda$buildMenu$14 : removed call to javax/swing/JRadioButtonMenuItem::addActionListener → NO_COVERAGE
                menuItem.addActionListener(actionEvent ->
169 1 1. lambda$buildMenu$13 : removed call to javax/swing/JLabel::setText → NO_COVERAGE
                    this.panelTrailingAddress.getLabelTarget().setText(entry.getKey())
170
                );
171 1 1. lambda$buildMenu$14 : removed call to javax/swing/ButtonGroup::add → NO_COVERAGE
                this.panelTrailingAddress.getGroupRadio().add(menuItem);
172
                menu.add(menuItem);
173
            });
174
        this.popupMenuTargets.add(menu);
175
    }
176
}

Mutations

37

1.1
Location : mousePressed
Killed by : none
removed call to javax/swing/JPopupMenu::removeAll → NO_COVERAGE

39

1.1
Location : mousePressed
Killed by : none
removed call to javax/swing/JRadioButtonMenuItem::setActionCommand → NO_COVERAGE

40

1.1
Location : mousePressed
Killed by : none
removed call to javax/swing/JRadioButtonMenuItem::addActionListener → NO_COVERAGE

41

1.1
Location : lambda$mousePressed$0
Killed by : none
removed call to javax/swing/JLabel::setText → NO_COVERAGE

51

1.1
Location : mousePressed
Killed by : none
negated conditional → NO_COVERAGE

56

1.1
Location : mousePressed
Killed by : none
removed call to com/jsql/view/swing/panel/address/PanelTrailingAddress::setGroupRadio → NO_COVERAGE

57

1.1
Location : mousePressed
Killed by : none
removed call to javax/swing/ButtonGroup::add → NO_COVERAGE

59

1.1
Location : mousePressed
Killed by : none
negated conditional → NO_COVERAGE

61

1.1
Location : mousePressed
Killed by : none
negated conditional → NO_COVERAGE

63

1.1
Location : mousePressed
Killed by : none
negated conditional → NO_COVERAGE

64

1.1
Location : mousePressed
Killed by : none
removed call to com/jsql/view/swing/panel/address/TargetMouseAdapter::buildMenu → NO_COVERAGE

73

1.1
Location : mousePressed
Killed by : none
negated conditional → NO_COVERAGE

74

1.1
Location : mousePressed
Killed by : none
removed call to com/jsql/view/swing/panel/address/TargetMouseAdapter::buildMenu → NO_COVERAGE

78

1.1
Location : mousePressed
Killed by : none
negated conditional → NO_COVERAGE

79

1.1
Location : mousePressed
Killed by : none
removed call to com/jsql/view/swing/panel/address/TargetMouseAdapter::buildMenuHeader → NO_COVERAGE

84

1.1
Location : mousePressed
Killed by : none
removed call to java/util/stream/Stream::forEach → NO_COVERAGE

2.2
Location : lambda$mousePressed$1
Killed by : none
removed call to javax/swing/JComponent::setEnabled → NO_COVERAGE

85

1.1
Location : mousePressed
Killed by : none
removed call to javax/swing/JRadioButtonMenuItem::setEnabled → NO_COVERAGE

86

1.1
Location : mousePressed
Killed by : none
negated conditional → NO_COVERAGE

87

1.1
Location : mousePressed
Killed by : none
removed call to javax/swing/JRadioButtonMenuItem::setSelected → NO_COVERAGE

88

1.1
Location : mousePressed
Killed by : none
removed call to javax/swing/JLabel::setText → NO_COVERAGE

90

1.1
Location : mousePressed
Killed by : none
removed call to javax/swing/JMenu::setEnabled → NO_COVERAGE

2.2
Location : mousePressed
Killed by : none
changed conditional boundary → NO_COVERAGE

3.3
Location : mousePressed
Killed by : none
negated conditional → NO_COVERAGE

91

1.1
Location : mousePressed
Killed by : none
negated conditional → NO_COVERAGE

2.2
Location : mousePressed
Killed by : none
changed conditional boundary → NO_COVERAGE

3.3
Location : mousePressed
Killed by : none
removed call to javax/swing/JMenu::setEnabled → NO_COVERAGE

92

1.1
Location : mousePressed
Killed by : none
changed conditional boundary → NO_COVERAGE

2.2
Location : mousePressed
Killed by : none
removed call to javax/swing/JMenu::setEnabled → NO_COVERAGE

3.3
Location : mousePressed
Killed by : none
negated conditional → NO_COVERAGE

95

1.1
Location : mousePressed
Killed by : none
negated conditional → NO_COVERAGE

2.2
Location : mousePressed
Killed by : none
changed conditional boundary → NO_COVERAGE

96

1.1
Location : mousePressed
Killed by : none
changed conditional boundary → NO_COVERAGE

2.2
Location : mousePressed
Killed by : none
negated conditional → NO_COVERAGE

97

1.1
Location : mousePressed
Killed by : none
changed conditional boundary → NO_COVERAGE

2.2
Location : mousePressed
Killed by : none
negated conditional → NO_COVERAGE

101

1.1
Location : mousePressed
Killed by : none
removed call to java/util/stream/Stream::forEach → NO_COVERAGE

102

1.1
Location : mousePressed
Killed by : none
removed call to javax/swing/JPopupMenu::updateUI → NO_COVERAGE

103

1.1
Location : mousePressed
Killed by : none
removed call to javax/swing/SwingUtilities::invokeLater → NO_COVERAGE

104

1.1
Location : lambda$mousePressed$2
Killed by : none
removed call to javax/swing/JPopupMenu::show → NO_COVERAGE

2.2
Location : lambda$mousePressed$2
Killed by : none
Replaced integer addition with subtraction → NO_COVERAGE

3.3
Location : lambda$mousePressed$2
Killed by : none
Replaced integer addition with subtraction → NO_COVERAGE

105

1.1
Location : lambda$mousePressed$2
Killed by : none
Replaced integer addition with subtraction → NO_COVERAGE

2.2
Location : lambda$mousePressed$2
Killed by : none
Replaced integer addition with subtraction → NO_COVERAGE

3.3
Location : lambda$mousePressed$2
Killed by : none
removed call to javax/swing/JPopupMenu::setLocation → NO_COVERAGE

115

1.1
Location : lambda$buildMenuHeader$3
Killed by : none
replaced return value with null for com/jsql/view/swing/panel/address/TargetMouseAdapter::lambda$buildMenuHeader$3 → NO_COVERAGE

116

1.1
Location : lambda$buildMenuHeader$4
Killed by : none
replaced return value with null for com/jsql/view/swing/panel/address/TargetMouseAdapter::lambda$buildMenuHeader$4 → NO_COVERAGE

118

1.1
Location : lambda$buildMenuHeader$4
Killed by : none
negated conditional → NO_COVERAGE

121

1.1
Location : buildMenuHeader
Killed by : none
removed call to java/util/List::forEach → NO_COVERAGE

123

1.1
Location : lambda$buildMenuHeader$6
Killed by : none
removed call to javax/swing/JRadioButtonMenuItem::setSelected → NO_COVERAGE

124

1.1
Location : lambda$buildMenuHeader$6
Killed by : none
removed call to javax/swing/JRadioButtonMenuItem::setActionCommand → NO_COVERAGE

125

1.1
Location : lambda$buildMenuHeader$6
Killed by : none
removed call to javax/swing/JRadioButtonMenuItem::addActionListener → NO_COVERAGE

126

1.1
Location : lambda$buildMenuHeader$5
Killed by : none
removed call to javax/swing/JLabel::setText → NO_COVERAGE

128

1.1
Location : lambda$buildMenuHeader$6
Killed by : none
removed call to javax/swing/ButtonGroup::add → NO_COVERAGE

131

1.1
Location : lambda$buildMenuHeader$7
Killed by : none
replaced boolean return with true for com/jsql/view/swing/panel/address/TargetMouseAdapter::lambda$buildMenuHeader$7 → NO_COVERAGE

2.2
Location : lambda$buildMenuHeader$7
Killed by : none
replaced boolean return with false for com/jsql/view/swing/panel/address/TargetMouseAdapter::lambda$buildMenuHeader$7 → NO_COVERAGE

3.3
Location : buildMenuHeader
Killed by : none
negated conditional → NO_COVERAGE

133

1.1
Location : lambda$buildMenuHeader$8
Killed by : none
replaced boolean return with true for com/jsql/view/swing/panel/address/TargetMouseAdapter::lambda$buildMenuHeader$8 → NO_COVERAGE

2.2
Location : lambda$buildMenuHeader$8
Killed by : none
replaced boolean return with false for com/jsql/view/swing/panel/address/TargetMouseAdapter::lambda$buildMenuHeader$8 → NO_COVERAGE

136

1.1
Location : buildMenuHeader
Killed by : none
negated conditional → NO_COVERAGE

139

1.1
Location : buildMenuHeader
Killed by : none
removed call to java/util/stream/Stream::forEach → NO_COVERAGE

142

1.1
Location : lambda$buildMenuHeader$10
Killed by : none
removed call to javax/swing/JRadioButtonMenuItem::setSelected → NO_COVERAGE

143

1.1
Location : lambda$buildMenuHeader$10
Killed by : none
removed call to javax/swing/JRadioButtonMenuItem::setActionCommand → NO_COVERAGE

144

1.1
Location : lambda$buildMenuHeader$10
Killed by : none
removed call to javax/swing/JRadioButtonMenuItem::addActionListener → NO_COVERAGE

145

1.1
Location : lambda$buildMenuHeader$9
Killed by : none
removed call to javax/swing/JLabel::setText → NO_COVERAGE

147

1.1
Location : lambda$buildMenuHeader$10
Killed by : none
removed call to javax/swing/ButtonGroup::add → NO_COVERAGE

150

1.1
Location : buildMenuHeader
Killed by : none
removed call to javax/swing/JMenu::addSeparator → NO_COVERAGE

159

1.1
Location : lambda$buildMenu$11
Killed by : none
replaced return value with null for com/jsql/view/swing/panel/address/TargetMouseAdapter::lambda$buildMenu$11 → NO_COVERAGE

160

1.1
Location : lambda$buildMenu$12
Killed by : none
replaced return value with null for com/jsql/view/swing/panel/address/TargetMouseAdapter::lambda$buildMenu$12 → NO_COVERAGE

162

1.1
Location : lambda$buildMenu$12
Killed by : none
negated conditional → NO_COVERAGE

164

1.1
Location : buildMenu
Killed by : none
removed call to java/util/stream/Stream::forEach → NO_COVERAGE

166

1.1
Location : lambda$buildMenu$14
Killed by : none
removed call to javax/swing/JRadioButtonMenuItem::setSelected → NO_COVERAGE

167

1.1
Location : lambda$buildMenu$14
Killed by : none
removed call to javax/swing/JRadioButtonMenuItem::setActionCommand → NO_COVERAGE

168

1.1
Location : lambda$buildMenu$14
Killed by : none
removed call to javax/swing/JRadioButtonMenuItem::addActionListener → NO_COVERAGE

169

1.1
Location : lambda$buildMenu$13
Killed by : none
removed call to javax/swing/JLabel::setText → NO_COVERAGE

171

1.1
Location : lambda$buildMenu$14
Killed by : none
removed call to javax/swing/ButtonGroup::add → NO_COVERAGE

Active mutators

Tests examined


Report generated by PIT 1.23.0