r101544 MediaWiki - Code Review archive

Repository:MediaWiki
Revision:r101543‎ | r101544 | r101545 >
Date:22:27, 1 November 2011
Author:tparscal
Status:deferred
Tags:
Comment:
Switched to comparing only operations lists instead of entire transaction objects
Modified paths:
  • /trunk/parsers/wikidom/tests/hype/es.DocumentModel.test.js (modified) (history)

Diff [purge]

Index: trunk/parsers/wikidom/tests/hype/es.DocumentModel.test.js
@@ -414,22 +414,22 @@
415415
416416 // Test 1
417417 deepEqual(
418 - documentModel.prepareElementAttributeChange( 0, 'set', 'test', 1234 ),
419 - new es.Transaction( [
 418+ documentModel.prepareElementAttributeChange( 0, 'set', 'test', 1234 ).getOperations(),
 419+ [
420420 { 'type': 'attribute', 'method': 'set', 'key': 'test', 'value': 1234 },
421421 { 'type': 'retain', 'length': 28 }
422 - ] ),
 422+ ],
423423 'prepareElementAttributeChange retains data after attribute change for first element'
424424 );
425425
426426 // Test 2
427427 deepEqual(
428 - documentModel.prepareElementAttributeChange( 5, 'set', 'test', 1234 ),
429 - new es.Transaction( [
 428+ documentModel.prepareElementAttributeChange( 5, 'set', 'test', 1234 ).getOperations(),
 429+ [
430430 { 'type': 'retain', 'length': 5 },
431431 { 'type': 'attribute', 'method': 'set', 'key': 'test', 'value': 1234 },
432432 { 'type': 'retain', 'length': 23 }
433 - ] ),
 433+ ],
434434 'prepareElementAttributeChange retains data before and after attribute change'
435435 );
436436
@@ -459,8 +459,10 @@
460460
461461 // Test 1
462462 deepEqual(
463 - documentModel.prepareContentAnnotation( new es.Range( 1, 4 ), 'set', { 'type': 'bold' } ),
464 - new es.Transaction( [
 463+ documentModel.prepareContentAnnotation(
 464+ new es.Range( 1, 4 ), 'set', { 'type': 'bold' }
 465+ ).getOperations(),
 466+ [
465467 { 'type': 'retain', 'length': 1 },
466468 {
467469 'type': 'annotate',
@@ -490,7 +492,7 @@
491493 'annotation': { 'type': 'bold', 'hash': '#bold' }
492494 },
493495 { 'type': 'retain', 'length': 24 }
494 - ] ),
 496+ ],
495497 'prepareContentAnnotation skips over content that is already set or cleared'
496498 );
497499 } );
@@ -500,8 +502,8 @@
501503
502504 // Test 1
503505 deepEqual(
504 - documentModel.prepareRemoval( new es.Range( 1, 4 ) ),
505 - new es.Transaction( [
 506+ documentModel.prepareRemoval( new es.Range( 1, 4 ) ).getOperations(),
 507+ [
506508 { 'type': 'retain', 'length': 1 },
507509 {
508510 'type': 'remove',
@@ -512,14 +514,14 @@
513515 ]
514516 },
515517 { 'type': 'retain', 'length': 24 }
516 - ] ),
 518+ ],
517519 'prepareRemoval includes the content being removed'
518520 );
519521
520522 // Test 2
521523 deepEqual(
522 - documentModel.prepareRemoval( new es.Range( 15, 18 ) ),
523 - new es.Transaction( [
 524+ documentModel.prepareRemoval( new es.Range( 15, 18 ) ).getOperations(),
 525+ [
524526 { 'type': 'retain', 'length': 15 },
525527 {
526528 'type': 'remove',
@@ -530,14 +532,14 @@
531533 ]
532534 },
533535 { 'type': 'retain', 'length': 10 }
534 - ] ),
 536+ ],
535537 'prepareRemoval removes entire elements'
536538 );
537539
538540 // Test 3
539541 deepEqual(
540 - documentModel.prepareRemoval( new es.Range( 17, 19 ) ),
541 - new es.Transaction( [
 542+ documentModel.prepareRemoval( new es.Range( 17, 19 ) ).getOperations(),
 543+ [
542544 { 'type': 'retain', 'length': 17 },
543545 {
544546 'type': 'remove',
@@ -547,7 +549,7 @@
548550 ]
549551 },
550552 { 'type': 'retain', 'length': 9 }
551 - ] ),
 553+ ],
552554 'prepareRemoval merges two list items'
553555 );
554556 } );
@@ -557,129 +559,120 @@
558560
559561 // Test 1
560562 deepEqual(
561 - documentModel.prepareInsertion( 1, ['d', 'e', 'f'] ),
562 - new es.Transaction( [
 563+ documentModel.prepareInsertion( 1, ['d', 'e', 'f'] ).getOperations(),
 564+ [
563565 { 'type': 'retain', 'length': 1 },
564566 { 'type': 'insert', 'data': ['d', 'e', 'f'] },
565567 { 'type': 'retain', 'length': 27 }
566 - ] ),
 568+ ],
567569 'prepareInsertion retains data up to the offset and includes the content being inserted'
568570 );
569571
570572 // Test 2
571573 deepEqual(
572574 documentModel.prepareInsertion(
573 - 5,
574 - [{ 'type': 'paragraph' }, 'd', 'e', 'f', { 'type': '/paragraph' }]
575 - ),
576 - new es.Transaction( [
 575+ 5, [{ 'type': 'paragraph' }, 'd', 'e', 'f', { 'type': '/paragraph' }]
 576+ ).getOperations(),
 577+ [
577578 { 'type': 'retain', 'length': 5 },
578579 {
579580 'type': 'insert',
580581 'data': [{ 'type': 'paragraph' }, 'd', 'e', 'f', { 'type': '/paragraph' }]
581582 },
582583 { 'type': 'retain', 'length': 23 }
583 - ] ),
 584+ ],
584585 'prepareInsertion inserts a paragraph between two structural elements'
585586 );
586587
587588 // Test 3
588589 deepEqual(
589 - documentModel.prepareInsertion(
590 - 5,
591 - ['d', 'e', 'f']
592 - ),
593 - new es.Transaction( [
 590+ documentModel.prepareInsertion( 5, ['d', 'e', 'f'] ).getOperations(),
 591+ [
594592 { 'type': 'retain', 'length': 5 },
595593 {
596594 'type': 'insert',
597595 'data': [{ 'type': 'paragraph' }, 'd', 'e', 'f', { 'type': '/paragraph' }]
598596 },
599597 { 'type': 'retain', 'length': 23 }
600 - ] ),
 598+ ],
601599 'prepareInsertion wraps unstructured content inserted between elements in a paragraph'
602600 );
603601
604602 // Test 4
605603 deepEqual(
606604 documentModel.prepareInsertion(
607 - 5,
608 - [{ 'type': 'paragraph' }, 'd', 'e', 'f']
609 - ),
610 - new es.Transaction( [
 605+ 5, [{ 'type': 'paragraph' }, 'd', 'e', 'f']
 606+ ).getOperations(),
 607+ [
611608 { 'type': 'retain', 'length': 5 },
612609 {
613610 'type': 'insert',
614611 'data': [{ 'type': 'paragraph' }, 'd', 'e', 'f', { 'type': '/paragraph' }]
615612 },
616613 { 'type': 'retain', 'length': 23 }
617 - ] ),
 614+ ],
618615 'prepareInsertion completes opening elements in inserted content'
619616 );
620617
621618 // Test 5
622619 deepEqual(
623620 documentModel.prepareInsertion(
624 - 2,
625 - [ { 'type': 'table' }, { 'type': '/table' } ]
626 - ),
627 - new es.Transaction( [
 621+ 2, [ { 'type': 'table' }, { 'type': '/table' } ]
 622+ ).getOperations(),
 623+ [
628624 { 'type': 'retain', 'length': 2 },
629625 {
630626 'type': 'insert',
631627 'data': [ { 'type': '/paragraph' }, { 'type': 'table' }, { 'type': '/table' }, { 'type': 'paragraph' } ]
632628 },
633629 { 'type': 'retain', 'length': 26 }
634 - ] ),
 630+ ],
635631 'prepareInsertion splits up paragraph when inserting a table in the middle'
636632 );
637633
638634 // Test 6
639635 deepEqual(
640636 documentModel.prepareInsertion(
641 - 2,
642 - [ 'f', 'o', 'o', { 'type': '/paragraph' }, { 'type': 'paragraph' }, 'b', 'a', 'r' ]
643 - ),
644 - new es.Transaction( [
 637+ 2, [ 'f', 'o', 'o', { 'type': '/paragraph' }, { 'type': 'paragraph' }, 'b', 'a', 'r' ]
 638+ ).getOperations(),
 639+ [
645640 { 'type': 'retain', 'length': 2 },
646641 {
647642 'type': 'insert',
648643 'data': [ 'f', 'o', 'o', { 'type': '/paragraph' }, { 'type': 'paragraph' }, 'b', 'a', 'r' ]
649644 },
650645 { 'type': 'retain', 'length': 26 }
651 - ] ),
 646+ ],
652647 'prepareInsertion splits up paragraph when inserting a paragraph closing and opening into a paragraph'
653648 );
654649
655650 // Test 7
656651 deepEqual(
657652 documentModel.prepareInsertion(
658 - 0,
659 - [ { 'type': 'paragraph' }, 'f', 'o', 'o', { 'type': '/paragraph' } ]
660 - ),
661 - new es.Transaction( [
 653+ 0, [ { 'type': 'paragraph' }, 'f', 'o', 'o', { 'type': '/paragraph' } ]
 654+ ).getOperations(),
 655+ [
662656 {
663657 'type': 'insert',
664658 'data': [ { 'type': 'paragraph' }, 'f', 'o', 'o', { 'type': '/paragraph' } ]
665659 },
666660 { 'type': 'retain', 'length': 28 }
667 - ] ),
 661+ ],
668662 'prepareInsertion inserts at the beginning, then retains up to the end'
669663 );
670664
671665 // Test 8
672666 deepEqual(
673667 documentModel.prepareInsertion(
674 - 28,
675 - [ { 'type': 'paragraph' }, 'f', 'o', 'o', { 'type': '/paragraph' } ]
676 - ),
677 - new es.Transaction( [
 668+ 28, [ { 'type': 'paragraph' }, 'f', 'o', 'o', { 'type': '/paragraph' } ]
 669+ ).getOperations(),
 670+ [
678671 { 'type': 'retain', 'length': 28 },
679672 {
680673 'type': 'insert',
681674 'data': [ { 'type': 'paragraph' }, 'f', 'o', 'o', { 'type': '/paragraph' } ]
682675 }
683 - ] ),
 676+ ],
684677 'prepareInsertion inserts at the end'
685678 );
686679

Status & tagging log