|
|
@@ -0,0 +1,19 @@
|
|
|
+/* global chai */
|
|
|
+
|
|
|
+/**
|
|
|
+ * Add chai assertion for comparing CodeMirror Pos objects.
|
|
|
+ * A deep comparison will fail because CodeMirror inserts additional properties
|
|
|
+ * that we want to ignore.
|
|
|
+ */
|
|
|
+chai.Assertion.addMethod('equalPos', function (expectedPos) {
|
|
|
+ const { line: actualLine, ch: actualCh } = this._obj
|
|
|
+ const { line: expectedLine, ch: expectedCh } = expectedPos
|
|
|
+
|
|
|
+ this.assert(
|
|
|
+ actualLine === expectedLine && actualCh === expectedCh,
|
|
|
+ `expected #{exp} to equal #{act}`,
|
|
|
+ `expected #{exp} to not equal #{act}`,
|
|
|
+ `Pos({ line: ${expectedLine}, ch: ${expectedCh} })`,
|
|
|
+ `Pos({ line: ${actualLine}, ch: ${actualCh} })`
|
|
|
+ )
|
|
|
+})
|