EmptyFocusCopy.java

1
package com.jsql.view.swing.terminal;
2
3
import com.jsql.model.exception.JSqlRuntimeException;
4
5
import java.awt.*;
6
import java.awt.datatransfer.DataFlavor;
7
import java.awt.datatransfer.UnsupportedFlavorException;
8
import java.awt.event.MouseEvent;
9
import java.awt.event.MouseListener;
10
import java.io.IOException;
11
import java.util.Arrays;
12
13
/**
14
 * Cancel every mouse click, only gives focus.
15
 */
16
public class EmptyFocusCopy implements MouseListener {
17
18
    private final AbstractExploit abstractExploit;
19
20
    public EmptyFocusCopy(AbstractExploit abstractExploit) {
21
        this.abstractExploit = abstractExploit;
22
    }
23
24
    @Override
25
    public void mousePressed(MouseEvent e) {
26 1 1. mousePressed : removed call to java/awt/event/MouseEvent::consume → NO_COVERAGE
        e.consume();
27
        this.abstractExploit.requestFocusInWindow();
28 1 1. mousePressed : removed call to com/jsql/view/swing/terminal/AbstractExploit::setCaretPosition → NO_COVERAGE
        this.abstractExploit.setCaretPosition(this.abstractExploit.getDocument().getLength());
29 1 1. mousePressed : negated conditional → NO_COVERAGE
        if (Arrays.asList(MouseEvent.BUTTON2, MouseEvent.BUTTON3).contains(e.getButton())) {
30 1 1. mousePressed : removed call to com/jsql/view/swing/terminal/EmptyFocusCopy::pasteClipboard → NO_COVERAGE
            this.pasteClipboard();
31
        }
32
    }
33
34
    private void pasteClipboard() {
35
        try {
36
            String data = (String) Toolkit.getDefaultToolkit().getSystemClipboard().getData(DataFlavor.stringFlavor);
37 1 1. pasteClipboard : removed call to com/jsql/view/swing/terminal/AbstractExploit::append → NO_COVERAGE
            this.abstractExploit.append(data);
38
        } catch (UnsupportedFlavorException | IOException ex) {
39
            throw new JSqlRuntimeException(ex);
40
        }
41
    }
42
43
    @Override
44
    public void mouseReleased(MouseEvent e) {
45 1 1. mouseReleased : removed call to java/awt/event/MouseEvent::consume → NO_COVERAGE
        e.consume();
46
    }
47
    
48
    @Override
49
    public void mouseExited(MouseEvent e) {
50 1 1. mouseExited : removed call to java/awt/event/MouseEvent::consume → NO_COVERAGE
        e.consume();
51
    }
52
    
53
    @Override
54
    public void mouseEntered(MouseEvent e) {
55 1 1. mouseEntered : removed call to java/awt/event/MouseEvent::consume → NO_COVERAGE
        e.consume();
56
    }
57
    
58
    @Override
59
    public void mouseClicked(MouseEvent e) {
60 1 1. mouseClicked : removed call to java/awt/event/MouseEvent::consume → NO_COVERAGE
        e.consume();
61
    }
62
}

Mutations

26

1.1
Location : mousePressed
Killed by : none
removed call to java/awt/event/MouseEvent::consume → NO_COVERAGE

28

1.1
Location : mousePressed
Killed by : none
removed call to com/jsql/view/swing/terminal/AbstractExploit::setCaretPosition → NO_COVERAGE

29

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

30

1.1
Location : mousePressed
Killed by : none
removed call to com/jsql/view/swing/terminal/EmptyFocusCopy::pasteClipboard → NO_COVERAGE

37

1.1
Location : pasteClipboard
Killed by : none
removed call to com/jsql/view/swing/terminal/AbstractExploit::append → NO_COVERAGE

45

1.1
Location : mouseReleased
Killed by : none
removed call to java/awt/event/MouseEvent::consume → NO_COVERAGE

50

1.1
Location : mouseExited
Killed by : none
removed call to java/awt/event/MouseEvent::consume → NO_COVERAGE

55

1.1
Location : mouseEntered
Killed by : none
removed call to java/awt/event/MouseEvent::consume → NO_COVERAGE

60

1.1
Location : mouseClicked
Killed by : none
removed call to java/awt/event/MouseEvent::consume → NO_COVERAGE

Active mutators

Tests examined


Report generated by PIT 1.19.1