mirror of
https://github.com/pulsar-edit/pulsar.git
synced 2024-11-11 04:48:44 +03:00
54396a7646
Fold placeholders needed to be real token objects so their screen / buffer deltas would be defined in ScreenLineFragment.proto.translateColumn
28 lines
1.3 KiB
CoffeeScript
28 lines
1.3 KiB
CoffeeScript
Point = require 'point'
|
|
|
|
describe "Point", ->
|
|
describe ".isEqual(value)", ->
|
|
describe "when given value is a Point", ->
|
|
it "returns true when the rows and columns match", ->
|
|
expect(new Point(1,2)).toEqual new Point(1,2)
|
|
expect(new Point(2,1)).not.toEqual new Point(1,2)
|
|
|
|
describe "when given value is an Array", ->
|
|
it "returns true only when index zero matches row and index one matches column", ->
|
|
expect(new Point(1,2)).toEqual [1,2]
|
|
expect(new Point(2,1)).not.toEqual [1,2]
|
|
|
|
describe "when one of the points has a row or column that is NaN", ->
|
|
it "returns false", ->
|
|
expect(new Point(1, 3)).not.toEqual new Point(NaN, 3)
|
|
expect(new Point(1, 3)).not.toEqual new Point(1, NaN)
|
|
|
|
describe "compare", ->
|
|
it "returns 1, 0, or -1 based on whether the given point precedes, equals, or follows the receivers location in the buffer", ->
|
|
expect(new Point(5, 0).compare(new Point(5, 0))).toBe 0
|
|
expect(new Point(5, 0).compare(new Point(6, 0))).toBe -1
|
|
expect(new Point(5, 0).compare(new Point(5, 1))).toBe -1
|
|
expect(new Point(5, 0).compare(new Point(6, 1))).toBe -1
|
|
expect(new Point(5, 5).compare(new Point(4, 1))).toBe 1
|
|
expect(new Point(5, 5).compare(new Point(5, 3))).toBe 1
|