Fix a bug where the failure matcher didn't look at error messages.
PiperOrigin-RevId: 253057737
diff --git a/internal/tsetse/tests/ban_conformance_pattern/fixer_test.ts b/internal/tsetse/tests/ban_conformance_pattern/fixer_test.ts
index 1bf13dd..3b7c85f 100644
--- a/internal/tsetse/tests/ban_conformance_pattern/fixer_test.ts
+++ b/internal/tsetse/tests/ban_conformance_pattern/fixer_test.ts
@@ -42,7 +42,7 @@
expect(results).toHaveNFailures(1, baseConfig);
expect(results[0]).toBeFailureMatching({
matchedCode: `q.cite = 'some example string'`,
- errorMessage: 'found citationz'
+ messageText: 'found citation'
});
expect(results[0]).toHaveFixMatching([
{start: 50, end: 80, replacement: `Q.CITE = 'SOME EXAMPLE STRING'`}
@@ -57,7 +57,7 @@
expect(results).toHaveNFailures(1, baseConfig);
expect(results[0]).toBeFailureMatching({
matchedCode: `q.cite = 'some example string'`,
- errorMessage: 'found citationz'
+ messageText: 'found citation'
});
expect(results[0]).toHaveFixMatching([
{start: 50, end: 80, replacement: `Q.CITE = 'SOME EXAMPLE STRING'`}
@@ -73,11 +73,11 @@
expect(results).toHaveNFailures(2, baseConfig);
expect(results[0]).toBeFailureMatching({
matchedCode: `q.cite = 'some example string'`,
- errorMessage: 'found citationz'
+ messageText: 'found citation'
});
expect(results[1]).toBeFailureMatching({
matchedCode: `q.cite = 'some other example string'`,
- errorMessage: 'found citationz'
+ messageText: 'found citation'
});
expect(results[0]).toHaveFixMatching([
{start: 50, end: 80, replacement: `Q.CITE = 'SOME EXAMPLE STRING'`}
diff --git a/internal/tsetse/tests/ban_conformance_pattern/name_test.ts b/internal/tsetse/tests/ban_conformance_pattern/name_test.ts
index 3165d38..6bb06ec 100644
--- a/internal/tsetse/tests/ban_conformance_pattern/name_test.ts
+++ b/internal/tsetse/tests/ban_conformance_pattern/name_test.ts
@@ -17,7 +17,7 @@
expect(results.length).toBe(1);
expect(results[0]).toBeFailureMatching({
matchedCode: `Infinity`,
- errorMessage: 'no Infinity'
+ messageText: 'no Infinity'
});
});
@@ -35,7 +35,7 @@
expect(results.length).toBe(1);
expect(results[0]).toBeFailureMatching({
matchedCode: `createObjectURL`,
- errorMessage: 'no blob url'
+ messageText: 'no blob url'
});
});
});
diff --git a/internal/tsetse/tests/ban_conformance_pattern/property_non_constant_write_test.ts b/internal/tsetse/tests/ban_conformance_pattern/property_non_constant_write_test.ts
index 8b51796..b545571 100644
--- a/internal/tsetse/tests/ban_conformance_pattern/property_non_constant_write_test.ts
+++ b/internal/tsetse/tests/ban_conformance_pattern/property_non_constant_write_test.ts
@@ -17,7 +17,7 @@
expect(results.length).toBe(1);
expect(results[0])
.toBeFailureMatching(
- {start: 71, end: 91, errorMessage: 'do not cite dynamically'});
+ {start: 71, end: 91, messageText: 'do not cite dynamically'});
});
});
diff --git a/internal/tsetse/tests/ban_conformance_pattern/property_write_test.ts b/internal/tsetse/tests/ban_conformance_pattern/property_write_test.ts
index 42290f2..e0f3254 100644
--- a/internal/tsetse/tests/ban_conformance_pattern/property_write_test.ts
+++ b/internal/tsetse/tests/ban_conformance_pattern/property_write_test.ts
@@ -19,7 +19,7 @@
expect(results.length).toBe(1);
expect(results[0]).toBeFailureMatching({
matchedCode: `q.cite = 'some example string'`,
- errorMessage: 'do not cite'
+ messageText: 'do not cite'
});
});
@@ -35,15 +35,15 @@
expect(results.length).toBe(3);
expect(results[0]).toBeFailureMatching({
matchedCode: `q.cite = 'exampleA'`,
- errorMessage: 'do not cite'
+ messageText: 'do not cite'
});
expect(results[1]).toBeFailureMatching({
matchedCode: `q.cite = 'exampleB'`,
- errorMessage: 'do not cite'
+ messageText: 'do not cite'
});
expect(results[2]).toBeFailureMatching({
matchedCode: `q.cite = /* test2 */ 'exampleC'`,
- errorMessage: 'do not cite'
+ messageText: 'do not cite'
});
})
@@ -58,7 +58,7 @@
expect(results.length).toBe(1);
expect(results[0]).toBeFailureMatching({
matchedCode: `q.cite = 'some example string'`,
- errorMessage: 'do not cite'
+ messageText: 'do not cite'
});
});
@@ -73,7 +73,7 @@
expect(results[0]).toBeFailureMatching({
matchedCode: 'q.cite = window.name',
fileName: 'file_1.ts',
- errorMessage: 'do not cite',
+ messageText: 'do not cite',
});
});
@@ -90,7 +90,7 @@
// and `c` is both a Parent and a Child.
const expectedFailure = {
matchedCode: 'c.x = 1',
- errorMessage: 'found write to x',
+ messageText: 'found write to x',
};
it('banning Parent.x matches (instance of Child).x', () => {
diff --git a/internal/tsetse/util/testing/test_support.ts b/internal/tsetse/util/testing/test_support.ts
index b6ca582..febf37a 100644
--- a/internal/tsetse/util/testing/test_support.ts
+++ b/internal/tsetse/util/testing/test_support.ts
@@ -112,6 +112,7 @@
start?: number,
end?: number,
matchedCode?: string,
+ messageText?: string,
}) => {
const actualDiagnostic = actualFailure.toDiagnostic();
let regrets = '';
@@ -127,6 +128,11 @@
actualDiagnostic.file.fileName} to end with ${exp.fileName}. `;
}
}
+ if (exp.messageText !== undefined &&
+ exp.messageText != actualDiagnostic.messageText) {
+ regrets += expectation(
+ 'errorMessage', exp.messageText, actualDiagnostic.messageText);
+ }
if (exp.start !== undefined && actualDiagnostic.start !== exp.start) {
regrets += expectation('start', exp.start, actualDiagnostic.start);
}
@@ -219,11 +225,11 @@
namespace jasmine {
interface Matchers<T> {
toBeFailureMatching(expected: {
- [i: string]: any, // the rest
fileName?: string,
start?: number,
end?: number,
- matchedCode?: string
+ matchedCode?: string,
+ messageText?: string,
}): void;
toHaveFixMatching(expected: [