@@ -27,15 +27,15 @@ describe("Parse Successes", () => {
2727 expect ( root . getKey ( ) . getContent ( ) ) . toBe ( "Test" ) ;
2828 expect ( root . getKey ( ) . getPosition ( ) . getLine ( ) ) . toBe ( 0 ) ;
2929 expect ( root . getKey ( ) . getPosition ( ) . getRange ( ) . getStart ( ) ) . toBe ( 0 ) ;
30- expect ( root . getKey ( ) . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 4 ) ;
30+ expect ( root . getKey ( ) . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 3 ) ;
3131 expect ( root . getOpeningBrace ( ) ) . not . toBeNull ( ) ;
3232 expect ( root . getOpeningBrace ( ) ! . getPosition ( ) . getLine ( ) ) . toBe ( 0 ) ;
3333 expect ( root . getOpeningBrace ( ) ! . getPosition ( ) . getRange ( ) . getStart ( ) ) . toBe ( 5 ) ;
34- expect ( root . getOpeningBrace ( ) ! . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 6 ) ;
34+ expect ( root . getOpeningBrace ( ) ! . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 5 ) ;
3535 expect ( root . getClosingBrace ( ) ) . not . toBeNull ( ) ;
3636 expect ( root . getClosingBrace ( ) ! . getPosition ( ) . getLine ( ) ) . toBe ( 12 ) ;
3737 expect ( root . getClosingBrace ( ) ! . getPosition ( ) . getRange ( ) . getStart ( ) ) . toBe ( 0 ) ;
38- expect ( root . getClosingBrace ( ) ! . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 1 ) ;
38+ expect ( root . getClosingBrace ( ) ! . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 0 ) ;
3939 expect ( root . hasCondition ( ) ) . toBeFalsy ( ) ;
4040 expect ( root . getCondition ( ) ) . toBeNull ( ) ;
4141 expect ( root . getChildren ( ) ) . not . toBeNull ( ) ;
@@ -48,15 +48,15 @@ describe("Parse Successes", () => {
4848 expect ( item1 . getKey ( ) . getContent ( ) ) . toBe ( "\"item1\"" ) ;
4949 expect ( item1 . getKey ( ) . getPosition ( ) . getLine ( ) ) . toBe ( 1 ) ;
5050 expect ( item1 . getKey ( ) . getPosition ( ) . getRange ( ) . getStart ( ) ) . toBe ( 4 ) ;
51- expect ( item1 . getKey ( ) . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 11 ) ;
51+ expect ( item1 . getKey ( ) . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 10 ) ;
5252 expect ( item1 . hasCondition ( ) ) . toBeFalsy ( ) ;
5353 expect ( item1 . getCondition ( ) ) . toBeNull ( ) ;
5454 expect ( item1 . getValues ( ) ) . not . toBeNull ( ) ;
5555 expect ( item1 . getValues ( ) ! . length ) . toBe ( 1 ) ;
5656 expect ( item1 . getValues ( ) ! [ 0 ] . getContent ( ) ) . toBe ( "\"value1\"" ) ;
5757 expect ( item1 . getValues ( ) ! [ 0 ] . getPosition ( ) . getLine ( ) ) . toBe ( 1 ) ;
5858 expect ( item1 . getValues ( ) ! [ 0 ] . getPosition ( ) . getRange ( ) . getStart ( ) ) . toBe ( 12 ) ;
59- expect ( item1 . getValues ( ) ! [ 0 ] . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 20 ) ;
59+ expect ( item1 . getValues ( ) ! [ 0 ] . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 19 ) ;
6060
6161 const item2 = root . getChildren ( ) ! [ 1 ] ;
6262 expect ( item2 . isRoot ( ) ) . toBeFalsy ( ) ;
@@ -65,15 +65,15 @@ describe("Parse Successes", () => {
6565 expect ( item2 . getKey ( ) . getContent ( ) ) . toBe ( "\"item2\"" ) ;
6666 expect ( item2 . getKey ( ) . getPosition ( ) . getLine ( ) ) . toBe ( 2 ) ;
6767 expect ( item2 . getKey ( ) . getPosition ( ) . getRange ( ) . getStart ( ) ) . toBe ( 4 ) ;
68- expect ( item2 . getKey ( ) . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 11 ) ;
68+ expect ( item2 . getKey ( ) . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 10 ) ;
6969 expect ( item2 . hasCondition ( ) ) . toBeFalsy ( ) ;
7070 expect ( item2 . getCondition ( ) ) . toBeNull ( ) ;
7171 expect ( item2 . getValues ( ) ) . not . toBeNull ( ) ;
7272 expect ( item2 . getValues ( ) ! . length ) . toBe ( 1 ) ;
7373 expect ( item2 . getValues ( ) ! [ 0 ] . getContent ( ) ) . toBe ( "\"value2\"" ) ;
7474 expect ( item2 . getValues ( ) ! [ 0 ] . getPosition ( ) . getLine ( ) ) . toBe ( 2 ) ;
7575 expect ( item2 . getValues ( ) ! [ 0 ] . getPosition ( ) . getRange ( ) . getStart ( ) ) . toBe ( 12 ) ;
76- expect ( item2 . getValues ( ) ! [ 0 ] . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 20 ) ;
76+ expect ( item2 . getValues ( ) ! [ 0 ] . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 19 ) ;
7777
7878 const item3 = root . getChildren ( ) ! [ 2 ] ;
7979 expect ( item3 . isRoot ( ) ) . toBeFalsy ( ) ;
@@ -82,7 +82,7 @@ describe("Parse Successes", () => {
8282 expect ( item3 . getKey ( ) . getContent ( ) ) . toBe ( "\"item3\"" ) ;
8383 expect ( item3 . getKey ( ) . getPosition ( ) . getLine ( ) ) . toBe ( 4 ) ;
8484 expect ( item3 . getKey ( ) . getPosition ( ) . getRange ( ) . getStart ( ) ) . toBe ( 4 ) ;
85- expect ( item3 . getKey ( ) . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 11 ) ;
85+ expect ( item3 . getKey ( ) . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 10 ) ;
8686 expect ( item3 . hasCondition ( ) ) . toBeFalsy ( ) ;
8787 expect ( item3 . getCondition ( ) ) . toBeNull ( ) ;
8888 expect ( item3 . getValues ( ) ) . toBeNull ( ) ;
@@ -96,15 +96,15 @@ describe("Parse Successes", () => {
9696 expect ( item4 . getKey ( ) . getContent ( ) ) . toBe ( "\"item4\"" ) ;
9797 expect ( item4 . getKey ( ) . getPosition ( ) . getLine ( ) ) . toBe ( 5 ) ;
9898 expect ( item4 . getKey ( ) . getPosition ( ) . getRange ( ) . getStart ( ) ) . toBe ( 8 ) ;
99- expect ( item4 . getKey ( ) . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 15 ) ;
99+ expect ( item4 . getKey ( ) . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 14 ) ;
100100 expect ( item4 . hasCondition ( ) ) . toBeFalsy ( ) ;
101101 expect ( item4 . getCondition ( ) ) . toBeNull ( ) ;
102102 expect ( item4 . getValues ( ) ) . not . toBeNull ( ) ;
103103 expect ( item4 . getValues ( ) ! . length ) . toBe ( 1 ) ;
104104 expect ( item4 . getValues ( ) ! [ 0 ] . getContent ( ) ) . toBe ( "\"value4\"" ) ;
105105 expect ( item4 . getValues ( ) ! [ 0 ] . getPosition ( ) . getLine ( ) ) . toBe ( 5 ) ;
106106 expect ( item4 . getValues ( ) ! [ 0 ] . getPosition ( ) . getRange ( ) . getStart ( ) ) . toBe ( 16 ) ;
107- expect ( item4 . getValues ( ) ! [ 0 ] . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 24 ) ;
107+ expect ( item4 . getValues ( ) ! [ 0 ] . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 23 ) ;
108108
109109 const item5 = root . getChildren ( ) ! [ 3 ] ;
110110 expect ( item5 . isRoot ( ) ) . toBeFalsy ( ) ;
@@ -113,7 +113,7 @@ describe("Parse Successes", () => {
113113 expect ( item5 . getKey ( ) . getContent ( ) ) . toBe ( "\"item5\"" ) ;
114114 expect ( item5 . getKey ( ) . getPosition ( ) . getLine ( ) ) . toBe ( 8 ) ;
115115 expect ( item5 . getKey ( ) . getPosition ( ) . getRange ( ) . getStart ( ) ) . toBe ( 4 ) ;
116- expect ( item5 . getKey ( ) . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 11 ) ;
116+ expect ( item5 . getKey ( ) . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 10 ) ;
117117 expect ( item5 . hasCondition ( ) ) . toBeFalsy ( ) ;
118118 expect ( item5 . getCondition ( ) ) . toBeNull ( ) ;
119119 expect ( item5 . getValues ( ) ) . toBeNull ( ) ;
@@ -127,15 +127,15 @@ describe("Parse Successes", () => {
127127 expect ( item6 . getKey ( ) . getContent ( ) ) . toBe ( "\"item6\"" ) ;
128128 expect ( item6 . getKey ( ) . getPosition ( ) . getLine ( ) ) . toBe ( 9 ) ;
129129 expect ( item6 . getKey ( ) . getPosition ( ) . getRange ( ) . getStart ( ) ) . toBe ( 8 ) ;
130- expect ( item6 . getKey ( ) . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 15 ) ;
130+ expect ( item6 . getKey ( ) . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 14 ) ;
131131 expect ( item6 . hasCondition ( ) ) . toBeFalsy ( ) ;
132132 expect ( item6 . getCondition ( ) ) . toBeNull ( ) ;
133133 expect ( item6 . getValues ( ) ) . not . toBeNull ( ) ;
134134 expect ( item6 . getValues ( ) ! . length ) . toBe ( 1 ) ;
135135 expect ( item6 . getValues ( ) ! [ 0 ] . getContent ( ) ) . toBe ( "\"value6\"" ) ;
136136 expect ( item6 . getValues ( ) ! [ 0 ] . getPosition ( ) . getLine ( ) ) . toBe ( 9 ) ;
137137 expect ( item6 . getValues ( ) ! [ 0 ] . getPosition ( ) . getRange ( ) . getStart ( ) ) . toBe ( 16 ) ;
138- expect ( item6 . getValues ( ) ! [ 0 ] . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 24 ) ;
138+ expect ( item6 . getValues ( ) ! [ 0 ] . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 23 ) ;
139139
140140 const item7 = item5 . getChildren ( ) ! [ 1 ] ;
141141 expect ( item7 . isRoot ( ) ) . toBeFalsy ( ) ;
@@ -144,15 +144,15 @@ describe("Parse Successes", () => {
144144 expect ( item7 . getKey ( ) . getContent ( ) ) . toBe ( "\"item7\"" ) ;
145145 expect ( item7 . getKey ( ) . getPosition ( ) . getLine ( ) ) . toBe ( 10 ) ;
146146 expect ( item7 . getKey ( ) . getPosition ( ) . getRange ( ) . getStart ( ) ) . toBe ( 8 ) ;
147- expect ( item7 . getKey ( ) . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 15 ) ;
147+ expect ( item7 . getKey ( ) . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 14 ) ;
148148 expect ( item7 . hasCondition ( ) ) . toBeFalsy ( ) ;
149149 expect ( item7 . getCondition ( ) ) . toBeNull ( ) ;
150150 expect ( item7 . getValues ( ) ) . not . toBeNull ( ) ;
151151 expect ( item7 . getValues ( ) ! . length ) . toBe ( 1 ) ;
152152 expect ( item7 . getValues ( ) ! [ 0 ] . getContent ( ) ) . toBe ( "\"value7\"" ) ;
153153 expect ( item7 . getValues ( ) ! [ 0 ] . getPosition ( ) . getLine ( ) ) . toBe ( 10 ) ;
154154 expect ( item7 . getValues ( ) ! [ 0 ] . getPosition ( ) . getRange ( ) . getStart ( ) ) . toBe ( 16 ) ;
155- expect ( item7 . getValues ( ) ! [ 0 ] . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 24 ) ;
155+ expect ( item7 . getValues ( ) ! [ 0 ] . getPosition ( ) . getRange ( ) . getEnd ( ) ) . toBe ( 23 ) ;
156156
157157 } ) ;
158158
@@ -273,13 +273,13 @@ describe("Parse Errors", () => {
273273 expect ( err1 . type ) . toBe ( ParseErrorType . MissingRootObject ) ;
274274 expect ( err1 . position . getLine ( ) ) . toBe ( 0 ) ;
275275 expect ( err1 . position . getRange ( ) . getStart ( ) ) . toBe ( 0 ) ;
276- expect ( err1 . position . getRange ( ) . getEnd ( ) ) . toBe ( 13 ) ;
276+ expect ( err1 . position . getRange ( ) . getEnd ( ) ) . toBe ( 12 ) ;
277277
278278 const err2 = kvTree . getErrors ( ) [ 1 ] ;
279279 expect ( err2 . type ) . toBe ( ParseErrorType . MissingRootObject ) ;
280280 expect ( err2 . position . getLine ( ) ) . toBe ( 6 ) ;
281281 expect ( err2 . position . getRange ( ) . getStart ( ) ) . toBe ( 0 ) ;
282- expect ( err2 . position . getRange ( ) . getEnd ( ) ) . toBe ( 15 ) ;
282+ expect ( err2 . position . getRange ( ) . getEnd ( ) ) . toBe ( 14 ) ;
283283
284284 } ) ;
285285
@@ -321,11 +321,11 @@ describe("Parse Errors", () => {
321321 expect ( errors [ 0 ] . type ) . toBe ( ParseErrorType . MissingValue ) ;
322322 expect ( errors [ 0 ] . position . getLine ( ) ) . toBe ( 1 ) ;
323323 expect ( errors [ 0 ] . position . getRange ( ) . getStart ( ) ) . toBe ( 4 ) ;
324- expect ( errors [ 0 ] . position . getRange ( ) . getEnd ( ) ) . toBe ( 8 ) ;
324+ expect ( errors [ 0 ] . position . getRange ( ) . getEnd ( ) ) . toBe ( 7 ) ;
325325 expect ( errors [ 1 ] . type ) . toBe ( ParseErrorType . MissingValue ) ;
326326 expect ( errors [ 1 ] . position . getLine ( ) ) . toBe ( 2 ) ;
327327 expect ( errors [ 1 ] . position . getRange ( ) . getStart ( ) ) . toBe ( 4 ) ;
328- expect ( errors [ 1 ] . position . getRange ( ) . getEnd ( ) ) . toBe ( 8 ) ;
328+ expect ( errors [ 1 ] . position . getRange ( ) . getEnd ( ) ) . toBe ( 7 ) ;
329329
330330 } ) ;
331331
@@ -344,7 +344,7 @@ describe("Parse Errors", () => {
344344 expect ( err . type ) . toBe ( ParseErrorType . UnexpectedOpeningBrace ) ;
345345 expect ( err . position . getLine ( ) ) . toBe ( 1 ) ;
346346 expect ( err . position . getRange ( ) . getStart ( ) ) . toBe ( 4 ) ;
347- expect ( err . position . getRange ( ) . getEnd ( ) ) . toBe ( 5 ) ;
347+ expect ( err . position . getRange ( ) . getEnd ( ) ) . toBe ( 4 ) ;
348348 } ) ;
349349
350350 test ( "Error: Unexpected Closing Brace" , ( ) => {
@@ -361,7 +361,8 @@ describe("Parse Errors", () => {
361361 expect ( err . type ) . toBe ( ParseErrorType . UnexpectedClosingBrace ) ;
362362 expect ( err . position . getLine ( ) ) . toBe ( 3 ) ;
363363 expect ( err . position . getRange ( ) . getStart ( ) ) . toBe ( 0 ) ;
364- expect ( err . position . getRange ( ) . getEnd ( ) ) . toBe ( 1 ) ;
364+ expect ( err . position . getRange ( ) . getEnd ( ) ) . toBe ( 0 ) ;
365+ expect ( err . position . getRange ( ) . hasNoLength ( ) ) . toBeTruthy ( ) ;
365366 } ) ;
366367
367368} ) ;
0 commit comments