apex-mutation-testing 1.3.0-dev-83.22024108564-1 → 1.3.0-dev-85.22024996296-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/lib/mutator/bitwiseOperatorMutator.d.ts +9 -0
- package/lib/mutator/bitwiseOperatorMutator.js +33 -0
- package/lib/mutator/bitwiseOperatorMutator.js.map +1 -0
- package/lib/service/mutantGenerator.js +3 -0
- package/lib/service/mutantGenerator.js.map +1 -1
- package/npm-shrinkwrap.json +2 -2
- package/oclif.manifest.json +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -174,7 +174,7 @@ EXAMPLES
|
|
|
174
174
|
$ sf apex mutation test run --apex-class MyClass --test-class MyClassTest
|
|
175
175
|
```
|
|
176
176
|
|
|
177
|
-
_See code: [src/commands/apex/mutation/test/run.ts](https://github.com/scolladon/apex-mutation-testing/blob/v1.3.0-dev-
|
|
177
|
+
_See code: [src/commands/apex/mutation/test/run.ts](https://github.com/scolladon/apex-mutation-testing/blob/v1.3.0-dev-85.22024996296-1/src/commands/apex/mutation/test/run.ts)_
|
|
178
178
|
<!-- commandsstop -->
|
|
179
179
|
|
|
180
180
|
## Backlog
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ParserRuleContext } from 'antlr4ts';
|
|
2
|
+
import { BaseListener } from './baseListener.js';
|
|
3
|
+
export declare class BitwiseOperatorMutator extends BaseListener {
|
|
4
|
+
private readonly REPLACEMENT_MAP;
|
|
5
|
+
enterBitAndExpression(ctx: ParserRuleContext): void;
|
|
6
|
+
enterBitOrExpression(ctx: ParserRuleContext): void;
|
|
7
|
+
enterBitNotExpression(ctx: ParserRuleContext): void;
|
|
8
|
+
private processBitwiseOperation;
|
|
9
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { TerminalNode } from 'antlr4ts/tree/index.js';
|
|
2
|
+
import { BaseListener } from './baseListener.js';
|
|
3
|
+
export class BitwiseOperatorMutator extends BaseListener {
|
|
4
|
+
REPLACEMENT_MAP = {
|
|
5
|
+
'&': '|',
|
|
6
|
+
'|': '&',
|
|
7
|
+
'^': '&',
|
|
8
|
+
};
|
|
9
|
+
enterBitAndExpression(ctx) {
|
|
10
|
+
this.processBitwiseOperation(ctx);
|
|
11
|
+
}
|
|
12
|
+
enterBitOrExpression(ctx) {
|
|
13
|
+
this.processBitwiseOperation(ctx);
|
|
14
|
+
}
|
|
15
|
+
enterBitNotExpression(ctx) {
|
|
16
|
+
this.processBitwiseOperation(ctx);
|
|
17
|
+
}
|
|
18
|
+
processBitwiseOperation(ctx) {
|
|
19
|
+
if (ctx.childCount !== 3) {
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
const operatorNode = ctx.getChild(1);
|
|
23
|
+
if (!(operatorNode instanceof TerminalNode)) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
const operatorText = operatorNode.text;
|
|
27
|
+
const replacement = this.REPLACEMENT_MAP[operatorText];
|
|
28
|
+
if (replacement) {
|
|
29
|
+
this.createMutationFromTerminalNode(operatorNode, replacement);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=bitwiseOperatorMutator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bitwiseOperatorMutator.js","sourceRoot":"","sources":["../../src/mutator/bitwiseOperatorMutator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEhD,MAAM,OAAO,sBAAuB,SAAQ,YAAY;IACrC,eAAe,GAA2B;QACzD,GAAG,EAAE,GAAG;QACR,GAAG,EAAE,GAAG;QACR,GAAG,EAAE,GAAG;KACT,CAAA;IAED,qBAAqB,CAAC,GAAsB;QAC1C,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAA;IACnC,CAAC;IAED,oBAAoB,CAAC,GAAsB;QACzC,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAA;IACnC,CAAC;IAED,qBAAqB,CAAC,GAAsB;QAC1C,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAA;IACnC,CAAC;IAEO,uBAAuB,CAAC,GAAsB;QACpD,IAAI,GAAG,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;YACzB,OAAM;QACR,CAAC;QAED,MAAM,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QAEpC,IAAI,CAAC,CAAC,YAAY,YAAY,YAAY,CAAC,EAAE,CAAC;YAC5C,OAAM;QACR,CAAC;QAED,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAA;QACtC,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAA;QAEtD,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC,8BAA8B,CAAC,YAAY,EAAE,WAAW,CAAC,CAAA;QAChE,CAAC;IACH,CAAC;CACF"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { TokenStreamRewriter } from 'antlr4ts';
|
|
2
2
|
import { ApexLexer, ApexParser, CaseInsensitiveInputStream, CommonTokenStream, ParseTreeWalker, } from 'apex-parser';
|
|
3
3
|
import { ArithmeticOperatorMutator } from '../mutator/arithmeticOperatorMutator.js';
|
|
4
|
+
import { BitwiseOperatorMutator } from '../mutator/bitwiseOperatorMutator.js';
|
|
4
5
|
import { BoundaryConditionMutator } from '../mutator/boundaryConditionMutator.js';
|
|
5
6
|
import { ConstructorCallMutator } from '../mutator/constructorCallMutator.js';
|
|
6
7
|
import { EmptyReturnMutator } from '../mutator/emptyReturnMutator.js';
|
|
@@ -45,6 +46,7 @@ export class MutantGenerator {
|
|
|
45
46
|
const removeConditionalsListener = new RemoveConditionalsMutator();
|
|
46
47
|
const switchListener = new SwitchMutator();
|
|
47
48
|
const experimentalSwitchListener = new ExperimentalSwitchMutator();
|
|
49
|
+
const bitwiseListener = new BitwiseOperatorMutator();
|
|
48
50
|
const listener = new MutationListener([
|
|
49
51
|
boundaryListener,
|
|
50
52
|
incrementListener,
|
|
@@ -63,6 +65,7 @@ export class MutantGenerator {
|
|
|
63
65
|
removeConditionalsListener,
|
|
64
66
|
switchListener,
|
|
65
67
|
experimentalSwitchListener,
|
|
68
|
+
bitwiseListener,
|
|
66
69
|
], coveredLines, methodTypeTable, sObjectDescribeRepository);
|
|
67
70
|
ParseTreeWalker.DEFAULT.walk(listener, tree);
|
|
68
71
|
return listener.getMutations();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mutantGenerator.js","sourceRoot":"","sources":["../../src/service/mutantGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAC9C,OAAO,EACL,SAAS,EACT,UAAU,EAEV,0BAA0B,EAC1B,iBAAiB,EACjB,eAAe,GAChB,MAAM,aAAa,CAAA;AAEpB,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAA;AACnF,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAA;AACjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAA;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAA;AACjF,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAA;AACnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAA;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAA;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAA;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAA;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAA;AAI3E,MAAM,OAAO,eAAe;IAClB,WAAW,CAAoB;IAEhC,cAAc;QACnB,OAAO,IAAI,CAAC,WAAW,CAAA;IACzB,CAAC;IAEM,OAAO,CACZ,YAAoB,EACpB,YAAyB,EACzB,eAAyC,EACzC,yBAAqD;QAErD,MAAM,KAAK,GAAG,IAAI,SAAS,CACzB,IAAI,0BAA0B,CAAC,OAAO,EAAE,YAAY,CAAC,CACtD,CAAA;QACD,IAAI,CAAC,WAAW,GAAG,IAAI,iBAAiB,CAAC,KAAK,CAAC,CAAA;QAC/C,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAC/C,MAAM,IAAI,GAAG,MAAM,CAAC,eAAe,EAAE,CAAA;QAErC,MAAM,iBAAiB,GAAG,IAAI,gBAAgB,EAAE,CAAA;QAChD,MAAM,gBAAgB,GAAG,IAAI,wBAAwB,EAAE,CAAA;QACvD,MAAM,mBAAmB,GAAG,IAAI,kBAAkB,EAAE,CAAA;QACpD,MAAM,kBAAkB,GAAG,IAAI,iBAAiB,EAAE,CAAA;QAClD,MAAM,mBAAmB,GAAG,IAAI,kBAAkB,EAAE,CAAA;QACpD,MAAM,kBAAkB,GAAG,IAAI,iBAAiB,EAAE,CAAA;QAClD,MAAM,gBAAgB,GAAG,IAAI,wBAAwB,EAAE,CAAA;QACvD,MAAM,kBAAkB,GAAG,IAAI,yBAAyB,EAAE,CAAA;QAC1D,MAAM,uBAAuB,GAAG,IAAI,sBAAsB,EAAE,CAAA;QAC5D,MAAM,uBAAuB,GAAG,IAAI,sBAAsB,EAAE,CAAA;QAC5D,MAAM,gBAAgB,GAAG,IAAI,eAAe,EAAE,CAAA;QAC9C,MAAM,wBAAwB,GAAG,IAAI,uBAAuB,EAAE,CAAA;QAC9D,MAAM,sBAAsB,GAAG,IAAI,qBAAqB,EAAE,CAAA;QAC1D,MAAM,uBAAuB,GAAG,IAAI,sBAAsB,EAAE,CAAA;QAC5D,MAAM,0BAA0B,GAAG,IAAI,yBAAyB,EAAE,CAAA;QAClE,MAAM,cAAc,GAAG,IAAI,aAAa,EAAE,CAAA;QAC1C,MAAM,0BAA0B,GAAG,IAAI,yBAAyB,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"mutantGenerator.js","sourceRoot":"","sources":["../../src/service/mutantGenerator.ts"],"names":[],"mappings":"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"}
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "apex-mutation-testing",
|
|
3
|
-
"version": "1.3.0-dev-
|
|
3
|
+
"version": "1.3.0-dev-85.22024996296-1",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "apex-mutation-testing",
|
|
9
|
-
"version": "1.3.0-dev-
|
|
9
|
+
"version": "1.3.0-dev-85.22024996296-1",
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@oclif/core": "^4.8.0",
|
package/oclif.manifest.json
CHANGED
package/package.json
CHANGED