# This file contains generic test expectations that apply to all ports of WebKit.
#
# See http://trac.webkit.org/wiki/TestExpectations for more information on this file.

# pending functional patch and per-port verification
webkit.org/b/109954 css3/line-break [ Skip ]

# pending implementation completion and feature enabling
webkit.org/b/109570 media/track/regions-webvtt [ Skip ]

# pending CSS grammar refactoring
webkit.org/b/113401 inspector/console/console-css-warnings.html [ Skip ]
