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

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

Issue 10979063: Removing ElementList. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Syncing. 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
493 test('last', () { 488 test('last', () {
494 var el = makeElementWithChildren(); 489 var el = makeElementWithChildren();
495 Expect.isTrue(el.elements.last() is InputElement); 490 Expect.isTrue(el.elements.last() is InputElement);
496 }); 491 });
497 492
498 test('forEach', () { 493 test('forEach', () {
499 var els = []; 494 var els = [];
500 var el = makeElementWithChildren(); 495 var el = makeElementWithChildren();
501 el.elements.forEach((n) => els.add(n)); 496 el.elements.forEach((n) => els.add(n));
502 Expect.isTrue(els[0] is BRElement); 497 Expect.isTrue(els[0] is BRElement);
503 Expect.isTrue(els[1] is ImageElement); 498 Expect.isTrue(els[1] is ImageElement);
504 Expect.isTrue(els[2] is InputElement); 499 Expect.isTrue(els[2] is InputElement);
505 }); 500 });
506 501
507 test('filter', () { 502 test('filter', () {
508 var filtered = makeElementWithChildren().elements. 503 var filtered = makeElementWithChildren().elements.
509 filter((n) => n is ImageElement); 504 filter((n) => n is ImageElement);
510 Expect.equals(1, filtered.length); 505 Expect.equals(1, filtered.length);
511 Expect.isTrue(filtered[0] is ImageElement); 506 Expect.isTrue(filtered[0] is ImageElement);
512 Expect.isTrue(filtered is ElementList); 507 Expect.isTrue(filtered is List<Element>);
513 }); 508 });
514 509
515 test('every', () { 510 test('every', () {
516 var el = makeElementWithChildren(); 511 var el = makeElementWithChildren();
517 Expect.isTrue(el.elements.every((n) => n is Element)); 512 Expect.isTrue(el.elements.every((n) => n is Element));
518 Expect.isFalse(el.elements.every((n) => n is InputElement)); 513 Expect.isFalse(el.elements.every((n) => n is InputElement));
519 }); 514 });
520 515
521 test('some', () { 516 test('some', () {
522 var el = makeElementWithChildren(); 517 var el = makeElementWithChildren();
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
596 test('removeLast', () { 591 test('removeLast', () {
597 var el = makeElementWithChildren(); 592 var el = makeElementWithChildren();
598 Expect.isTrue(el.elements.removeLast() is InputElement); 593 Expect.isTrue(el.elements.removeLast() is InputElement);
599 Expect.equals(2, el.elements.length); 594 Expect.equals(2, el.elements.length);
600 Expect.isTrue(el.elements.removeLast() is ImageElement); 595 Expect.isTrue(el.elements.removeLast() is ImageElement);
601 Expect.equals(1, el.elements.length); 596 Expect.equals(1, el.elements.length);
602 }); 597 });
603 598
604 test('getRange', () { 599 test('getRange', () {
605 var el = makeElementWithChildren(); 600 var el = makeElementWithChildren();
606 Expect.isTrue(el.elements.getRange(1, 1) is ElementList); 601 Expect.isTrue(el.elements.getRange(1, 1) is List<Element>);
607 }); 602 });
608 }); 603 });
609 604
610 group('queryAll', () { 605 group('queryAll', () {
611 ElementList getQueryAll() { 606 List<Element> getQueryAll() {
612 return new Element.html(""" 607 return new Element.html("""
613 <div> 608 <div>
614 <hr/> 609 <hr/>
615 <a class='q' href='http://dartlang.org'>Dart!</a> 610 <a class='q' href='http://dartlang.org'>Dart!</a>
616 <p> 611 <p>
617 <span class='q'>Hello</span>, 612 <span class='q'>Hello</span>,
618 <em>world</em>! 613 <em>world</em>!
619 </p> 614 </p>
620 <hr class='q'/> 615 <hr class='q'/>
621 </div> 616 </div>
622 """).queryAll('.q'); 617 """).queryAll('.q');
623 } 618 }
624 619
625 ElementList getEmptyQueryAll() => new Element.tag('div').queryAll('img'); 620 List<Element> getEmptyQueryAll() => new Element.tag('div').queryAll('img');
626 621
627 void testUnsupported(String name, void f()) { 622 void testUnsupported(String name, void f()) {
628 test(name, () { 623 test(name, () {
629 Expect.throws(f, (e) => e is UnsupportedOperationException); 624 Expect.throws(f, (e) => e is UnsupportedOperationException);
630 }); 625 });
631 } 626 }
632 627
633 test('first', () {
634 Expect.isTrue(getQueryAll().first is AnchorElement);
635 });
636
637 test('last', () { 628 test('last', () {
638 Expect.isTrue(getQueryAll().last() is HRElement); 629 Expect.isTrue(getQueryAll().last() is HRElement);
639 }); 630 });
640 631
641 test('forEach', () { 632 test('forEach', () {
642 var els = []; 633 var els = [];
643 getQueryAll().forEach((el) => els.add(el)); 634 getQueryAll().forEach((el) => els.add(el));
644 Expect.isTrue(els[0] is AnchorElement); 635 Expect.isTrue(els[0] is AnchorElement);
645 Expect.isTrue(els[1] is SpanElement); 636 Expect.isTrue(els[1] is SpanElement);
646 Expect.isTrue(els[2] is HRElement); 637 Expect.isTrue(els[2] is HRElement);
647 }); 638 });
648 639
649 test('map', () { 640 test('map', () {
650 var texts = getQueryAll().map((el) => el.text); 641 var texts = getQueryAll().map((el) => el.text);
651 Expect.listEquals(['Dart!', 'Hello', ''], texts); 642 Expect.listEquals(['Dart!', 'Hello', ''], texts);
652 }); 643 });
653 644
654 test('filter', () { 645 test('filter', () {
655 var filtered = getQueryAll().filter((n) => n is SpanElement); 646 var filtered = getQueryAll().filter((n) => n is SpanElement);
656 Expect.equals(1, filtered.length); 647 Expect.equals(1, filtered.length);
657 Expect.isTrue(filtered[0] is SpanElement); 648 Expect.isTrue(filtered[0] is SpanElement);
658 Expect.isTrue(filtered is ElementList); 649 Expect.isTrue(filtered is List<Element>);
659 }); 650 });
660 651
661 test('every', () { 652 test('every', () {
662 var el = getQueryAll(); 653 var el = getQueryAll();
663 Expect.isTrue(el.every((n) => n is Element)); 654 Expect.isTrue(el.every((n) => n is Element));
664 Expect.isFalse(el.every((n) => n is SpanElement)); 655 Expect.isFalse(el.every((n) => n is SpanElement));
665 }); 656 });
666 657
667 test('some', () { 658 test('some', () {
668 var el = getQueryAll(); 659 var el = getQueryAll();
(...skipping 22 matching lines...) Expand all
691 var els = []; 682 var els = [];
692 for (var subel in getQueryAll()) { 683 for (var subel in getQueryAll()) {
693 els.add(subel); 684 els.add(subel);
694 } 685 }
695 Expect.isTrue(els[0] is AnchorElement); 686 Expect.isTrue(els[0] is AnchorElement);
696 Expect.isTrue(els[1] is SpanElement); 687 Expect.isTrue(els[1] is SpanElement);
697 Expect.isTrue(els[2] is HRElement); 688 Expect.isTrue(els[2] is HRElement);
698 }); 689 });
699 690
700 test('getRange', () { 691 test('getRange', () {
701 Expect.isTrue(getQueryAll().getRange(1, 1) is ElementList); 692 Expect.isTrue(getQueryAll().getRange(1, 1) is List<Element>);
702 }); 693 });
703 694
704 testUnsupported('[]=', () => getQueryAll()[1] = new Element.tag('br')); 695 testUnsupported('[]=', () => getQueryAll()[1] = new Element.tag('br'));
705 testUnsupported('add', () => getQueryAll().add(new Element.tag('br'))); 696 testUnsupported('add', () => getQueryAll().add(new Element.tag('br')));
706 testUnsupported('addLast', () => 697 testUnsupported('addLast', () =>
707 getQueryAll().addLast(new Element.tag('br'))); 698 getQueryAll().addLast(new Element.tag('br')));
708 699
709 testUnsupported('addAll', () { 700 testUnsupported('addAll', () {
710 getQueryAll().addAll([ 701 getQueryAll().addAll([
711 new Element.tag('span'), 702 new Element.tag('span'),
712 new Element.tag('a'), 703 new Element.tag('a'),
713 new Element.tag('h1') 704 new Element.tag('h1')
714 ]); 705 ]);
715 }); 706 });
716 707
717 testUnsupported('sort', () => getQueryAll().sort((a1, a2) => true)); 708 testUnsupported('sort', () => getQueryAll().sort((a1, a2) => true));
718 709
719 testUnsupported('setRange', () => getQueryAll().setRange(0, 0, [])); 710 testUnsupported('setRange', () => getQueryAll().setRange(0, 0, []));
720 711
721 testUnsupported('removeRange', () => getQueryAll().removeRange(0, 1)); 712 testUnsupported('removeRange', () => getQueryAll().removeRange(0, 1));
722 713
723 testUnsupported('insertangeRange', () => getQueryAll().insertRange(0, 1)); 714 testUnsupported('insertangeRange', () => getQueryAll().insertRange(0, 1));
724 715
725 testUnsupported('clear', () => getQueryAll().clear()); 716 testUnsupported('clear', () => getQueryAll().clear());
726 717
727 testUnsupported('removeLast', () => getQueryAll().removeLast()); 718 testUnsupported('removeLast', () => getQueryAll().removeLast());
728 }); 719 });
729 720
730 group('_ElementList', () { 721 group('_ElementList', () {
731 ElementList makeElList() => makeElementWithChildren().elements; 722 List<Element> makeElList() => makeElementWithChildren().elements;
732
733 test('first', () {
734 var els = makeElList();
735 Expect.isTrue(els.first is BRElement);
736 });
737 723
738 test('filter', () { 724 test('filter', () {
739 var filtered = makeElList().filter((n) => n is ImageElement); 725 var filtered = makeElList().filter((n) => n is ImageElement);
740 Expect.equals(1, filtered.length); 726 Expect.equals(1, filtered.length);
741 Expect.isTrue(filtered[0] is ImageElement); 727 Expect.isTrue(filtered[0] is ImageElement);
742 Expect.isTrue(filtered is ElementList); 728 Expect.isTrue(filtered is List<Element>);
743 }); 729 });
744 730
745 test('getRange', () { 731 test('getRange', () {
746 var range = makeElList().getRange(1, 2); 732 var range = makeElList().getRange(1, 2);
747 Expect.isTrue(range is ElementList); 733 Expect.isTrue(range is List<Element>);
748 Expect.isTrue(range[0] is ImageElement); 734 Expect.isTrue(range[0] is ImageElement);
749 Expect.isTrue(range[1] is InputElement); 735 Expect.isTrue(range[1] is InputElement);
750 }); 736 });
751 }); 737 });
752 } 738 }
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