Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(58)

Side by Side Diff: tests/html/element_test.dart

Issue 11033007: Revert "Removing ElementList (splitting out removing NodeList into a separate CL)." (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « tests/html/documentfragment_test.dart ('k') | tests/html/htmlcollection_test.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #library('ElementTest'); 5 #library('ElementTest');
6 #import('../../pkg/unittest/unittest.dart'); 6 #import('../../pkg/unittest/unittest.dart');
7 #import('../../pkg/unittest/html_config.dart'); 7 #import('../../pkg/unittest/html_config.dart');
8 #import('dart:html'); 8 #import('dart:html');
9 9
10 expectLargeRect(ClientRect rect) { 10 expectLargeRect(ClientRect rect) {
(...skipping 467 matching lines...) Expand 10 before | Expand all | Expand 10 after
478 }); 478 });
479 479
480 test('changes nodes when an element is added', () { 480 test('changes nodes when an element is added', () {
481 var el = new Element.html("<div>Foo<br/><img/></div>"); 481 var el = new Element.html("<div>Foo<br/><img/></div>");
482 el.elements.add(new Element.tag('hr')); 482 el.elements.add(new Element.tag('hr'));
483 Expect.equals(4, el.nodes.length); 483 Expect.equals(4, el.nodes.length);
484 Expect.isTrue(el.nodes[3] is HRElement); 484 Expect.isTrue(el.nodes[3] is HRElement);
485 Expect.equals(el.elements[2], el.nodes[3]); 485 Expect.equals(el.elements[2], el.nodes[3]);
486 }); 486 });
487 487
488 test('first', () {
489 var el = makeElementWithChildren();
490 Expect.isTrue(el.elements.first is BRElement);
491 });
492
488 test('last', () { 493 test('last', () {
489 var el = makeElementWithChildren(); 494 var el = makeElementWithChildren();
490 Expect.isTrue(el.elements.last() is InputElement); 495 Expect.isTrue(el.elements.last() is InputElement);
491 }); 496 });
492 497
493 test('forEach', () { 498 test('forEach', () {
494 var els = []; 499 var els = [];
495 var el = makeElementWithChildren(); 500 var el = makeElementWithChildren();
496 el.elements.forEach((n) => els.add(n)); 501 el.elements.forEach((n) => els.add(n));
497 Expect.isTrue(els[0] is BRElement); 502 Expect.isTrue(els[0] is BRElement);
498 Expect.isTrue(els[1] is ImageElement); 503 Expect.isTrue(els[1] is ImageElement);
499 Expect.isTrue(els[2] is InputElement); 504 Expect.isTrue(els[2] is InputElement);
500 }); 505 });
501 506
502 test('filter', () { 507 test('filter', () {
503 var filtered = makeElementWithChildren().elements. 508 var filtered = makeElementWithChildren().elements.
504 filter((n) => n is ImageElement); 509 filter((n) => n is ImageElement);
505 Expect.equals(1, filtered.length); 510 Expect.equals(1, filtered.length);
506 Expect.isTrue(filtered[0] is ImageElement); 511 Expect.isTrue(filtered[0] is ImageElement);
507 Expect.isTrue(filtered is List<Element>); 512 Expect.isTrue(filtered is ElementList);
508 }); 513 });
509 514
510 test('every', () { 515 test('every', () {
511 var el = makeElementWithChildren(); 516 var el = makeElementWithChildren();
512 Expect.isTrue(el.elements.every((n) => n is Element)); 517 Expect.isTrue(el.elements.every((n) => n is Element));
513 Expect.isFalse(el.elements.every((n) => n is InputElement)); 518 Expect.isFalse(el.elements.every((n) => n is InputElement));
514 }); 519 });
515 520
516 test('some', () { 521 test('some', () {
517 var el = makeElementWithChildren(); 522 var el = makeElementWithChildren();
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
591 test('removeLast', () { 596 test('removeLast', () {
592 var el = makeElementWithChildren(); 597 var el = makeElementWithChildren();
593 Expect.isTrue(el.elements.removeLast() is InputElement); 598 Expect.isTrue(el.elements.removeLast() is InputElement);
594 Expect.equals(2, el.elements.length); 599 Expect.equals(2, el.elements.length);
595 Expect.isTrue(el.elements.removeLast() is ImageElement); 600 Expect.isTrue(el.elements.removeLast() is ImageElement);
596 Expect.equals(1, el.elements.length); 601 Expect.equals(1, el.elements.length);
597 }); 602 });
598 603
599 test('getRange', () { 604 test('getRange', () {
600 var el = makeElementWithChildren(); 605 var el = makeElementWithChildren();
601 Expect.isTrue(el.elements.getRange(1, 1) is List<Element>); 606 Expect.isTrue(el.elements.getRange(1, 1) is ElementList);
602 }); 607 });
603 }); 608 });
604 609
605 group('queryAll', () { 610 group('queryAll', () {
606 List<Element> getQueryAll() { 611 ElementList getQueryAll() {
607 return new Element.html(""" 612 return new Element.html("""
608 <div> 613 <div>
609 <hr/> 614 <hr/>
610 <a class='q' href='http://dartlang.org'>Dart!</a> 615 <a class='q' href='http://dartlang.org'>Dart!</a>
611 <p> 616 <p>
612 <span class='q'>Hello</span>, 617 <span class='q'>Hello</span>,
613 <em>world</em>! 618 <em>world</em>!
614 </p> 619 </p>
615 <hr class='q'/> 620 <hr class='q'/>
616 </div> 621 </div>
617 """).queryAll('.q'); 622 """).queryAll('.q');
618 } 623 }
619 624
620 List<Element> getEmptyQueryAll() => new Element.tag('div').queryAll('img'); 625 ElementList getEmptyQueryAll() => new Element.tag('div').queryAll('img');
621 626
622 void testUnsupported(String name, void f()) { 627 void testUnsupported(String name, void f()) {
623 test(name, () { 628 test(name, () {
624 Expect.throws(f, (e) => e is UnsupportedOperationException); 629 Expect.throws(f, (e) => e is UnsupportedOperationException);
625 }); 630 });
626 } 631 }
627 632
633 test('first', () {
634 Expect.isTrue(getQueryAll().first is AnchorElement);
635 });
636
628 test('last', () { 637 test('last', () {
629 Expect.isTrue(getQueryAll().last() is HRElement); 638 Expect.isTrue(getQueryAll().last() is HRElement);
630 }); 639 });
631 640
632 test('forEach', () { 641 test('forEach', () {
633 var els = []; 642 var els = [];
634 getQueryAll().forEach((el) => els.add(el)); 643 getQueryAll().forEach((el) => els.add(el));
635 Expect.isTrue(els[0] is AnchorElement); 644 Expect.isTrue(els[0] is AnchorElement);
636 Expect.isTrue(els[1] is SpanElement); 645 Expect.isTrue(els[1] is SpanElement);
637 Expect.isTrue(els[2] is HRElement); 646 Expect.isTrue(els[2] is HRElement);
638 }); 647 });
639 648
640 test('map', () { 649 test('map', () {
641 var texts = getQueryAll().map((el) => el.text); 650 var texts = getQueryAll().map((el) => el.text);
642 Expect.listEquals(['Dart!', 'Hello', ''], texts); 651 Expect.listEquals(['Dart!', 'Hello', ''], texts);
643 }); 652 });
644 653
645 test('filter', () { 654 test('filter', () {
646 var filtered = getQueryAll().filter((n) => n is SpanElement); 655 var filtered = getQueryAll().filter((n) => n is SpanElement);
647 Expect.equals(1, filtered.length); 656 Expect.equals(1, filtered.length);
648 Expect.isTrue(filtered[0] is SpanElement); 657 Expect.isTrue(filtered[0] is SpanElement);
649 Expect.isTrue(filtered is List<Element>); 658 Expect.isTrue(filtered is ElementList);
650 }); 659 });
651 660
652 test('every', () { 661 test('every', () {
653 var el = getQueryAll(); 662 var el = getQueryAll();
654 Expect.isTrue(el.every((n) => n is Element)); 663 Expect.isTrue(el.every((n) => n is Element));
655 Expect.isFalse(el.every((n) => n is SpanElement)); 664 Expect.isFalse(el.every((n) => n is SpanElement));
656 }); 665 });
657 666
658 test('some', () { 667 test('some', () {
659 var el = getQueryAll(); 668 var el = getQueryAll();
(...skipping 22 matching lines...) Expand all
682 var els = []; 691 var els = [];
683 for (var subel in getQueryAll()) { 692 for (var subel in getQueryAll()) {
684 els.add(subel); 693 els.add(subel);
685 } 694 }
686 Expect.isTrue(els[0] is AnchorElement); 695 Expect.isTrue(els[0] is AnchorElement);
687 Expect.isTrue(els[1] is SpanElement); 696 Expect.isTrue(els[1] is SpanElement);
688 Expect.isTrue(els[2] is HRElement); 697 Expect.isTrue(els[2] is HRElement);
689 }); 698 });
690 699
691 test('getRange', () { 700 test('getRange', () {
692 Expect.isTrue(getQueryAll().getRange(1, 1) is List<Element>); 701 Expect.isTrue(getQueryAll().getRange(1, 1) is ElementList);
693 }); 702 });
694 703
695 testUnsupported('[]=', () => getQueryAll()[1] = new Element.tag('br')); 704 testUnsupported('[]=', () => getQueryAll()[1] = new Element.tag('br'));
696 testUnsupported('add', () => getQueryAll().add(new Element.tag('br'))); 705 testUnsupported('add', () => getQueryAll().add(new Element.tag('br')));
697 testUnsupported('addLast', () => 706 testUnsupported('addLast', () =>
698 getQueryAll().addLast(new Element.tag('br'))); 707 getQueryAll().addLast(new Element.tag('br')));
699 708
700 testUnsupported('addAll', () { 709 testUnsupported('addAll', () {
701 getQueryAll().addAll([ 710 getQueryAll().addAll([
702 new Element.tag('span'), 711 new Element.tag('span'),
703 new Element.tag('a'), 712 new Element.tag('a'),
704 new Element.tag('h1') 713 new Element.tag('h1')
705 ]); 714 ]);
706 }); 715 });
707 716
708 testUnsupported('sort', () => getQueryAll().sort((a1, a2) => true)); 717 testUnsupported('sort', () => getQueryAll().sort((a1, a2) => true));
709 718
710 testUnsupported('setRange', () => getQueryAll().setRange(0, 0, [])); 719 testUnsupported('setRange', () => getQueryAll().setRange(0, 0, []));
711 720
712 testUnsupported('removeRange', () => getQueryAll().removeRange(0, 1)); 721 testUnsupported('removeRange', () => getQueryAll().removeRange(0, 1));
713 722
714 testUnsupported('insertangeRange', () => getQueryAll().insertRange(0, 1)); 723 testUnsupported('insertangeRange', () => getQueryAll().insertRange(0, 1));
715 724
716 testUnsupported('clear', () => getQueryAll().clear()); 725 testUnsupported('clear', () => getQueryAll().clear());
717 726
718 testUnsupported('removeLast', () => getQueryAll().removeLast()); 727 testUnsupported('removeLast', () => getQueryAll().removeLast());
719 }); 728 });
720 729
721 group('_ElementList', () { 730 group('_ElementList', () {
722 List<Element> makeElList() => makeElementWithChildren().elements; 731 ElementList makeElList() => makeElementWithChildren().elements;
732
733 test('first', () {
734 var els = makeElList();
735 Expect.isTrue(els.first is BRElement);
736 });
723 737
724 test('filter', () { 738 test('filter', () {
725 var filtered = makeElList().filter((n) => n is ImageElement); 739 var filtered = makeElList().filter((n) => n is ImageElement);
726 Expect.equals(1, filtered.length); 740 Expect.equals(1, filtered.length);
727 Expect.isTrue(filtered[0] is ImageElement); 741 Expect.isTrue(filtered[0] is ImageElement);
728 Expect.isTrue(filtered is List<Element>); 742 Expect.isTrue(filtered is ElementList);
729 }); 743 });
730 744
731 test('getRange', () { 745 test('getRange', () {
732 var range = makeElList().getRange(1, 2); 746 var range = makeElList().getRange(1, 2);
733 Expect.isTrue(range is List<Element>); 747 Expect.isTrue(range is ElementList);
734 Expect.isTrue(range[0] is ImageElement); 748 Expect.isTrue(range[0] is ImageElement);
735 Expect.isTrue(range[1] is InputElement); 749 Expect.isTrue(range[1] is InputElement);
736 }); 750 });
737 }); 751 });
738 } 752 }
OLDNEW
« no previous file with comments | « tests/html/documentfragment_test.dart ('k') | tests/html/htmlcollection_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698