Open Bug 1277113 Opened 4 years ago Updated 3 years ago

[META] Need more functional tests in the Editor component

Categories

(Core :: DOM: Editor, defect)

defect
Not set

Tracking

()

Tracking Status
firefox49 --- affected

People

(Reporter: bugs, Unassigned)

References

(Blocks 5 open bugs)

Details

We have a growing number of bugs reported against Editor that are either:
1. regressions from other fixes.
2. require fixes that risk more bugs like #1.

This bug tracks creating tests from these bug reports, and creating other tests to exercise related functionality. By defining the invariants in <contenteditable>, we can be more confident when accepting patches.
Blocks: 1248186
Blocks: 1248187
Blocks: 1249444
Blocks: 1250321
Blocks: 1272623
Do you know who's in charge of this component at Mozilla? In the past Ehsan and Aryeh were working on it, but I don't see anymore fixing the *long* list of bugs/regressions about Editor.
Blocks: 1146881
What's this supposed to track?  All editor bugs?

Loic -- Masayuki is the owner of the component and I'm a peer, but there hasn't been a lot of development effort going into editor for years.  (The same is true for other browsers AFAIK.)
Blocks: 1271897
Blocks: 1306532
Depends on: 1326593
Depends on: 1326594
Depends on: 1326600
Depends on: 1326603
Depends on: 1326606
Depends on: 1326608
Depends on: 1326612
Depends on: 1326614
Depends on: 1326617
Depends on: 1326618
Depends on: 1326622
Depends on: 1326626
Depends on: 1326628
Depends on: 1326630
Depends on: 1326633
Depends on: 1326634
Depends on: 1326637
Depends on: 1326639
Depends on: 1326642
Depends on: 1326645
Depends on: 1326647
Depends on: 1326650
Depends on: 1326652
Depends on: 1326655
Depends on: 1326659
Depends on: 1326664
Depends on: 1326667
Depends on: 1326669
Depends on: 1326671
Depends on: 1326674
Depends on: 1326676
Depends on: 1326679
Depends on: 1326682
Depends on: 1326684
Depends on: 1326686
Depends on: 1326689
Depends on: 1326691, 1326693
Depends on: 1326696
Depends on: 1326697
Depends on: 1326700
Depends on: 1326702
Depends on: 1326704
Depends on: 1326707
Depends on: 1326709
Depends on: 1326712
Depends on: 1326714
Depends on: 1326717
Depends on: 1326719, 1326721
Depends on: 1326724
Depends on: 1326726
Depends on: 1326728
Depends on: 1326729
Depends on: 1326732
Depends on: 1326733
Depends on: 1326736
Depends on: 1326738
Depends on: 1326741
Depends on: 1326743
Depends on: 1326746
Depends on: 1326748
Depends on: 1326751
Depends on: 1326753
Depends on: 1326757
Depends on: 1326758
Depends on: 1326762
Depends on: 1326766
Depends on: 1326769
Depends on: 1326771
Depends on: 1326774
Depends on: 1326776
Depends on: 1326779
Depends on: 1326781
Depends on: 1326784
Depends on: 1326786
Depends on: 1326788
Depends on: 1326791
Depends on: 1326793
Depends on: 1326799
Depends on: 1326804
Depends on: 1326805
Depends on: 1326809
Depends on: 1326811
Depends on: 1326814
Depends on: 1326816
Depends on: 1326819
Depends on: 1326821
Depends on: 1326824
Depends on: 1326826, 1326830
Depends on: 1326831
Depends on: 1326834
Depends on: 1326835, 1326837
Depends on: 1326839
Depends on: 1326841
Depends on: 1326844
Depends on: 1326845
Depends on: 1326849
Depends on: 1326851
Depends on: 1326854
Depends on: 1326856
Depends on: 1326858
Depends on: 1326863, 1326866
Depends on: 1326868
Depends on: 1326871
Depends on: 1326875
Depends on: 1326877
Depends on: 1326880
Depends on: 1326883
Depends on: 1326885
Depends on: 1326888
Depends on: 1326889
Depends on: 1326893
Depends on: 1326898, 1326900
Depends on: 1326905
Depends on: 1326908
Depends on: 1326910
Depends on: 1326913
Depends on: 1326915
Depends on: 1326920
Depends on: 1326924, 1326926
Depends on: 1326927, 1326928
Depends on: 1326930
Depends on: 1326933
Depends on: 1326935
Depends on: 1326937, 1326939
Depends on: 1326941
Depends on: 1326943
Depends on: 1326947
Depends on: 1326948, 1326950
Depends on: 1326952
Depends on: 1326955
Depends on: 1326957
Depends on: 1326963
Depends on: 1326968
Depends on: 1326969
Depends on: 1326972
Depends on: 1326975
Depends on: 1326977
Depends on: 1326978
Depends on: 1326982
Depends on: 1326984
Depends on: 1326987
Depends on: 1326989
Depends on: 1326991
Depends on: 1326993
Depends on: 1326998
Depends on: 1327002
Depends on: 1327007
Depends on: 1327011
Depends on: 1327013
Depends on: 1327015
Depends on: 1327017, 1327019
Depends on: 1327022
Depends on: 1327025
Depends on: 1327027
Depends on: 1327030
Depends on: 1327032
Depends on: 1327035
Depends on: 1327037
Depends on: 1327041
Depends on: 1327042
Depends on: 1327045
Depends on: 1327046
Depends on: 1327048
Depends on: 1327050
Depends on: 1327053
Depends on: 1327054
Depends on: 1327057
Depends on: 1327061
Depends on: 1327063
Depends on: 1327066
Depends on: 1327068
Depends on: 1327070
Depends on: 1327073
Depends on: 1327075
Depends on: 1327077
Depends on: 1327082
Depends on: 1327086
Depends on: 1327087
Depends on: 1327091
Depends on: 1327095
Depends on: 1327097
Depends on: 1327100
Depends on: 1327102
Depends on: 1327104
Depends on: 1327107
Depends on: 1327111
Depends on: 1327112
Depends on: 1327116, 1327118
Depends on: 1327121
Depends on: 1327126, 1327129
Depends on: 1327131
Depends on: 1327134
Depends on: 1327137
Depends on: 1327138
Depends on: 1327139
Depends on: 1327141
Depends on: 1327142
Depends on: 1327145
Depends on: 1327147
Depends on: 1327149
Depends on: 1327151
Depends on: 1327153
Depends on: 1327155
Depends on: 1327157
Depends on: 1327161
Depends on: 1327164
Depends on: 1327168
Depends on: 1327169
Depends on: 1327173
Depends on: 1327175
Depends on: 1327178
Depends on: 1327180
Depends on: 1327183
Depends on: 1327185
Depends on: 1327188
Depends on: 1327190
Depends on: 1327193
Depends on: 1327195
Depends on: 1327198
Depends on: 1327200
Depends on: 1327203
Depends on: 1327205
Depends on: 1327207
Depends on: 1327210, 1327212
Depends on: 1327215
Depends on: 1327217
Depends on: 1327219, 1327222
Depends on: 1327224
Depends on: 1327228
Depends on: 1327233
Depends on: 1327235
Depends on: 1327238
Depends on: 1327240
Depends on: 1327243
Depends on: 1327244
Depends on: 1327247
Depends on: 1327250
Depends on: 1327254
Depends on: 1327256
Depends on: 1327259
Depends on: 1327261
Depends on: 1327264
Depends on: 1327266
Depends on: 1327269
Depends on: 1327271
Depends on: 1327274
Depends on: 1327275
Depends on: 1327279
Depends on: 1327280
Depends on: 1327284
Depends on: 1327286
Depends on: 1327289
Depends on: 1327292
Depends on: 1327294
Depends on: 1327297
Depends on: 1327299
Depends on: 1327302
Depends on: 1327304
Depends on: 1327306
Depends on: 1327309
Depends on: 1327313
Depends on: 1327314
Depends on: 1327316
Depends on: 1327317
Depends on: 1327319, 1327320
Depends on: 1327322
Depends on: 1327324
Depends on: 1327326
Depends on: 1327329, 1327330
Depends on: 1327333
Depends on: 1327334
Depends on: 1327338
Depends on: 1327339
Depends on: 1327344
Depends on: 1327345
Depends on: 1327350
Depends on: 1327353
Depends on: 1327356
Depends on: 1327357, 1327359
Depends on: 1327361
Depends on: 1327365
Depends on: 1327366
Depends on: 1327369, 1327371
Depends on: 1327373
Depends on: 1327375
Depends on: 1327378
Depends on: 1327380
Depends on: 1327383
Depends on: 1327385, 1327388
Depends on: 1327391
Depends on: 1327392
Depends on: 1327395
Depends on: 1327398
Depends on: 1327400
Depends on: 1327402
Depends on: 1327406
Depends on: 1327408
Depends on: 1327410
Depends on: 1327413
Depends on: 1327414
Depends on: 1327418
Depends on: 1327419
Depends on: 1327423
Depends on: 1327424
Depends on: 1327427
Depends on: 1327431
Depends on: 1327432
Depends on: 1327434
Depends on: 1327437, 1327440
Depends on: 1327443
Depends on: 1327445
Depends on: 1327447
Depends on: 1327451
Depends on: 1327452
Depends on: 1327456
Depends on: 1327457
Depends on: 1327461
Depends on: 1327464
Depends on: 1327466
Depends on: 1327469
Depends on: 1327472
Depends on: 1327475
Depends on: 1327477
Depends on: 1327480
Depends on: 1327485, 1327486
Depends on: 1327488
Depends on: 1327490
Depends on: 1327493, 1327495
Depends on: 1327498
Depends on: 1327500
Depends on: 1327504
Depends on: 1327505
Depends on: 1327516
Depends on: 1327517
Depends on: 1327518
Depends on: 1327519
Depends on: 1327520
Depends on: 1327521
Depends on: 1327522
Depends on: 1327523
Depends on: 1327524
Depends on: 1327525
Depends on: 1327526
Depends on: 1327527
Depends on: 1327528
Depends on: 1327529
Depends on: 1327530
Depends on: 1327531
Depends on: 1327532
Depends on: 1327533
Depends on: 1327534
Depends on: 1327535
Depends on: 1327536
Depends on: 1327537
Depends on: 1327538
Depends on: 1327539
Depends on: 1327540
Depends on: 1327541
Depends on: 1327542
Depends on: 1327543
Depends on: 1327544
Depends on: 1327545
Depends on: 1327546
Depends on: 1327547
Depends on: 1327548
Depends on: 1327549
Depends on: 1327550
Depends on: 1327551
Depends on: 1327552
Depends on: 1327553
Depends on: 1327554
Depends on: 1327555
Depends on: 1327556
Depends on: 1327557
Depends on: 1327558
Depends on: 1327559
Depends on: 1327560
Depends on: 1327561
Depends on: 1327562
Depends on: 1327563
Depends on: 1327564
Depends on: 1327565
Depends on: 1327566
Depends on: 1327567
Depends on: 1327568
Depends on: 1327569
Depends on: 1327570
Depends on: 1327571
Depends on: 1327572
Depends on: 1327573
Depends on: 1327574
Depends on: 1327575
Depends on: 1327576
Depends on: 1327577
Depends on: 1327578
Depends on: 1327579
Depends on: 1327580
Depends on: 1327581
Depends on: 1327582
Depends on: 1327583
Depends on: 1327584
Depends on: 1327585
Depends on: 1327586
Depends on: 1327587
Depends on: 1327588
Depends on: 1327589
Depends on: 1327590
Depends on: 1327591
Depends on: 1327592
Depends on: 1327593
Depends on: 1327594
Depends on: 1327595
Depends on: 1327596
Depends on: 1327597
Depends on: 1327598
Depends on: 1327599
Depends on: 1327600
Depends on: 1327601
Depends on: 1327602
Depends on: 1327603
Depends on: 1327604
Depends on: 1327605
Depends on: 1327606
Depends on: 1327607
Depends on: 1327608
Depends on: 1327609
Depends on: 1327610
Depends on: 1327611
Depends on: 1327612
Depends on: 1327613
Depends on: 1327614
Depends on: 1327615
Depends on: 1327616
Depends on: 1327617
Depends on: 1327618
Depends on: 1327619
Depends on: 1327620
Depends on: 1327621
Depends on: 1327622
Depends on: 1327623
Depends on: 1327624
Depends on: 1327625
Depends on: 1327626
Depends on: 1327627
Depends on: 1327628
Depends on: 1327629
Depends on: 1327630
Depends on: 1327631
Depends on: 1327632
Depends on: 1327633
Depends on: 1327634
Depends on: 1327635
Depends on: 1327636
Depends on: 1327637
Depends on: 1327638
Depends on: 1327639
Depends on: 1327640
Depends on: 1327641
Depends on: 1327642
Depends on: 1327643
Depends on: 1327644
Depends on: 1327645
Depends on: 1327646
Depends on: 1327647
Depends on: 1327648
Depends on: 1327649
Depends on: 1327650
Depends on: 1327651
Depends on: 1327652
Depends on: 1327653
Depends on: 1327654
Depends on: 1327655
Depends on: 1327656
Depends on: 1327657
Depends on: 1327658
Depends on: 1327659
Depends on: 1327660
Depends on: 1327661
Depends on: 1327662
Depends on: 1327663
Depends on: 1327664
Depends on: 1327665
Depends on: 1327666
Depends on: 1327667
Depends on: 1327668
Depends on: 1327669
Depends on: 1327670
Depends on: 1327671
Depends on: 1327672
Depends on: 1327673
Depends on: 1327674
Depends on: 1327675
Depends on: 1327676
Depends on: 1327677
Depends on: 1327678
Depends on: 1327679
Depends on: 1327680
Depends on: 1327681
Depends on: 1327682
Depends on: 1327683
Depends on: 1327684
Depends on: 1327685
Depends on: 1327686
Depends on: 1327687
Depends on: 1327688
Depends on: 1327689
Depends on: 1327690
Depends on: 1327691
Depends on: 1327692
Depends on: 1327693
Depends on: 1327694
Depends on: 1327695
Depends on: 1327696
Depends on: 1327697
Depends on: 1327698
Depends on: 1327699
Depends on: 1327700
Depends on: 1327701
Depends on: 1327702
Depends on: 1327703
Depends on: 1327704
Depends on: 1327705
Depends on: 1327706
Depends on: 1327707
Depends on: 1327708
Depends on: 1327709
Depends on: 1327710
Depends on: 1327711
Depends on: 1327712
Depends on: 1327713
Depends on: 1327714
Depends on: 1327715
Depends on: 1327716
Depends on: 1327717
Depends on: 1327718
Depends on: 1327719
Depends on: 1327720
Depends on: 1327721
Depends on: 1327722
Depends on: 1327723
Depends on: 1327724
Depends on: 1327725
Depends on: 1327726
No longer depends on: 1327555
Depends on: 1327727
Depends on: 1327728
Depends on: 1327729
Depends on: 1327730
Depends on: 1327731
Depends on: 1327732
Depends on: 1327733
Depends on: 1327734
Depends on: 1327735
Depends on: 1327736
Depends on: 1327737