diff options
Diffstat (limited to 'theme-compiler')
777 files changed, 5933 insertions, 1335 deletions
diff --git a/theme-compiler/build.xml b/theme-compiler/build.xml index 03d0531a68..aed0f91fbb 100644 --- a/theme-compiler/build.xml +++ b/theme-compiler/build.xml @@ -20,8 +20,8 @@ </path> <path id="classpath.test.custom" /> - <!--<property name="classes.exclude" value="com/vaadin/buildhelpers/**" - /> --> + <property name="classes.exclude" value="**/*.properties"/> + <property name="extra.classes" value="${classes.exclude}"/> <target name="parser"> <!-- Copy javacc-5.0.jar to ${result.dir}/javacc/javacc.jar as the diff --git a/theme-compiler/ivy.xml b/theme-compiler/ivy.xml index 7b99b2cdaa..0f84966508 100644 --- a/theme-compiler/ivy.xml +++ b/theme-compiler/ivy.xml @@ -42,6 +42,8 @@ <!-- Testing libs --> <dependency org="junit" name="junit" rev="4.11" conf="ide,test -> default" /> + <dependency org="org.jsoup" name="jsoup" rev="1.6.3" + conf="ide,test -> default" /> <!-- Internally used, for now --> <dependency org="com.carrotsearch" name="smartsprites" diff --git a/theme-compiler/src/com/vaadin/sass/CustomConsoleHandler.java b/theme-compiler/src/com/vaadin/sass/CustomConsoleHandler.java new file mode 100644 index 0000000000..44c9e345db --- /dev/null +++ b/theme-compiler/src/com/vaadin/sass/CustomConsoleHandler.java @@ -0,0 +1,52 @@ +/* + * Copyright 2000-2013 Vaadin Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ +package com.vaadin.sass; + +import java.io.PrintStream; +import java.util.logging.ConsoleHandler; +import java.util.logging.Level; +import java.util.logging.LogRecord; + +/** + * + * @since + * @author Vaadin Ltd + */ +public class CustomConsoleHandler extends ConsoleHandler { + + private ConsoleHandler stdoutHandler; + + public CustomConsoleHandler() { + PrintStream err = System.err; + /* + * ConsoleHandler uses System.err to output all messages. Replace + * System.err temporary to construct ConsoleHandler and set it back + * after construction. + */ + System.setErr(System.out); + stdoutHandler = new ConsoleHandler(); + System.setErr(err); + } + + @Override + public void publish(LogRecord record) { + if (!Level.SEVERE.equals(record.getLevel())) { + stdoutHandler.publish(record); + } else { + super.publish(record); + } + } +} diff --git a/theme-compiler/src/com/vaadin/sass/internal/ScssStylesheet.java b/theme-compiler/src/com/vaadin/sass/internal/ScssStylesheet.java index dbb3e571dc..63f59cdfab 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/ScssStylesheet.java +++ b/theme-compiler/src/com/vaadin/sass/internal/ScssStylesheet.java @@ -19,24 +19,27 @@ package com.vaadin.sass.internal; import java.io.File; import java.io.IOException; import java.util.ArrayList; -import java.util.Arrays; import java.util.Collections; import java.util.HashMap; import java.util.HashSet; +import java.util.List; import java.util.Map; +import java.util.logging.LogManager; import java.util.logging.Logger; import org.w3c.css.sac.CSSException; import org.w3c.css.sac.InputSource; +import com.vaadin.buildhelpers.CompileTheme; import com.vaadin.sass.internal.handler.SCSSDocumentHandler; import com.vaadin.sass.internal.handler.SCSSDocumentHandlerImpl; import com.vaadin.sass.internal.handler.SCSSErrorHandler; import com.vaadin.sass.internal.parser.ParseException; import com.vaadin.sass.internal.parser.Parser; import com.vaadin.sass.internal.parser.SCSSParseException; +import com.vaadin.sass.internal.resolver.ClassloaderResolver; +import com.vaadin.sass.internal.resolver.FilesystemResolver; import com.vaadin.sass.internal.resolver.ScssStylesheetResolver; -import com.vaadin.sass.internal.resolver.VaadinResolver; import com.vaadin.sass.internal.tree.BlockNode; import com.vaadin.sass.internal.tree.MixinDefNode; import com.vaadin.sass.internal.tree.Node; @@ -59,10 +62,12 @@ public class ScssStylesheet extends Node { private static HashMap<Node, Node> lastNodeAdded = new HashMap<Node, Node>(); - private String fileName; + private File file; private String charset; + private List<ScssStylesheetResolver> resolvers = new ArrayList<ScssStylesheetResolver>(); + /** * Read in a file SCSS and parse it into a ScssStylesheet * @@ -90,18 +95,48 @@ public class ScssStylesheet extends Node { } /** - * Main entry point for the SASS compiler. Takes in a file and encoding then - * builds up a ScssStylesheet tree out of it. Calling compile() on it will - * transform SASS into CSS. Calling toString() will print out the SCSS/CSS. + * Main entry point for the SASS compiler. Takes in a file and an optional + * parent style sheet, then builds up a ScssStylesheet tree out of it. + * Calling compile() on it will transform SASS into CSS. Calling toString() + * will print out the SCSS/CSS. + * + * @param identifier + * The file path. If null then null is returned. + * @param parentStylesheet + * Style sheet from which to inherit resolvers and encoding. May + * be null. + * @return + * @throws CSSException + * @throws IOException + */ + public static ScssStylesheet get(String identifier, + ScssStylesheet parentStylesheet) throws CSSException, IOException { + return get(identifier, parentStylesheet, new SCSSDocumentHandlerImpl(), + new SCSSErrorHandler()); + } + + /** + * Main entry point for the SASS compiler. Takes in a file, an optional + * parent stylesheet, and document and error handlers. Then builds up a + * ScssStylesheet tree out of it. Calling compile() on it will transform + * SASS into CSS. Calling toString() will print out the SCSS/CSS. * * @param identifier * The file path. If null then null is returned. - * @param encoding + * @param parentStylesheet + * Style sheet from which to inherit resolvers and encoding. May + * be null. + * @param documentHandler + * Instance of document handler. May not be null. + * @param errorHandler + * Instance of error handler. May not be null. * @return * @throws CSSException * @throws IOException */ - public static ScssStylesheet get(String identifier, String encoding) + public static ScssStylesheet get(String identifier, + ScssStylesheet parentStylesheet, + SCSSDocumentHandler documentHandler, SCSSErrorHandler errorHandler) throws CSSException, IOException { /* * The encoding to be used is passed through "encoding" parameter. the @@ -120,18 +155,27 @@ public class ScssStylesheet extends Node { File file = new File(identifier); file = file.getCanonicalFile(); - SCSSDocumentHandler handler = new SCSSDocumentHandlerImpl(); - ScssStylesheet stylesheet = handler.getStyleSheet(); - - InputSource source = stylesheet.resolveStylesheet(identifier); + ScssStylesheet stylesheet = documentHandler.getStyleSheet(); + if (parentStylesheet == null) { + // Use default resolvers + stylesheet.addResolver(new FilesystemResolver()); + stylesheet.addResolver(new ClassloaderResolver()); + } else { + // Use parent resolvers + stylesheet.setResolvers(parentStylesheet.getResolvers()); + } + InputSource source = stylesheet.resolveStylesheet(identifier, + parentStylesheet); if (source == null) { return null; } - source.setEncoding(encoding); + if (parentStylesheet != null) { + source.setEncoding(parentStylesheet.getCharset()); + } Parser parser = new Parser(); - parser.setErrorHandler(new SCSSErrorHandler()); - parser.setDocumentHandler(handler); + parser.setErrorHandler(errorHandler); + parser.setDocumentHandler(documentHandler); try { parser.parseStyleSheet(source); @@ -145,24 +189,13 @@ public class ScssStylesheet extends Node { return stylesheet; } - private static ScssStylesheetResolver[] resolvers = null; - - public static void setStylesheetResolvers( - ScssStylesheetResolver... styleSheetResolvers) { - resolvers = Arrays.copyOf(styleSheetResolvers, - styleSheetResolvers.length); - } - - public InputSource resolveStylesheet(String identifier) { - if (resolvers == null) { - setStylesheetResolvers(new VaadinResolver()); - } - - for (ScssStylesheetResolver resolver : resolvers) { - InputSource source = resolver.resolve(identifier); + public InputSource resolveStylesheet(String identifier, + ScssStylesheet parentStylesheet) { + for (ScssStylesheetResolver resolver : getResolvers()) { + InputSource source = resolver.resolve(parentStylesheet, identifier); if (source != null) { File f = new File(source.getURI()); - setFileName(f.getParent()); + setFile(f); return source; } } @@ -171,6 +204,38 @@ public class ScssStylesheet extends Node { } /** + * Retrieves a list of resolvers to use when resolving imports + * + * @since 7.2 + * @return the resolvers used to resolving imports + */ + public List<ScssStylesheetResolver> getResolvers() { + return Collections.unmodifiableList(resolvers); + } + + /** + * Sets the list of resolvers to use when resolving imports + * + * @since 7.2 + * @param resolvers + * the resolvers to set + */ + public void setResolvers(List<ScssStylesheetResolver> resolvers) { + this.resolvers = new ArrayList<ScssStylesheetResolver>(resolvers); + } + + /** + * Adds the given resolver to the resolver list + * + * @since 7.2 + * @param resolver + * The resolver to add + */ + public void addResolver(ScssStylesheetResolver resolver) { + resolvers.add(resolver); + } + + /** * Applies all the visitors and compiles SCSS into Css. * * @throws Exception @@ -355,12 +420,28 @@ public class ScssStylesheet extends Node { return mixinDefs.get(name); } - public void setFileName(String fileName) { - this.fileName = fileName; + public void setFile(File file) { + this.file = file; } + /** + * Returns the directory containing this style sheet + * + * @since 7.2 + * @return The directory containing this style sheet + */ + public String getDirectory() { + return file.getParent(); + } + + /** + * Returns the full file name for this style sheet + * + * @since 7.2 + * @return The full file name for this style sheet + */ public String getFileName() { - return fileName; + return file.getPath(); } public static HashMap<Node, Node> getLastNodeAdded() { @@ -378,4 +459,19 @@ public class ScssStylesheet extends Node { public void setCharset(String charset) { this.charset = charset; } + + static { + String logFile = System.getProperty("java.util.logging.config.file"); + if (logFile == null) { + try { + LogManager.getLogManager().readConfiguration( + CompileTheme.class + .getResourceAsStream("/logging.properties")); + } catch (SecurityException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } } diff --git a/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSDocumentHandlerImpl.java b/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSDocumentHandlerImpl.java index 633ab98b9c..8c09e44f7c 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSDocumentHandlerImpl.java +++ b/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSDocumentHandlerImpl.java @@ -20,6 +20,8 @@ import java.util.ArrayList; import java.util.Collection; import java.util.List; import java.util.Stack; +import java.util.logging.Level; +import java.util.logging.Logger; import org.w3c.css.sac.CSSException; import org.w3c.css.sac.InputSource; @@ -98,7 +100,7 @@ public class SCSSDocumentHandlerImpl implements SCSSDocumentHandler { public ForNode forDirective(String var, String from, String to, boolean exclusive, String body) { ForNode node = new ForNode(var, from, to, exclusive, body); - System.out.println(node); + log(node); return node; } @@ -126,7 +128,7 @@ public class SCSSDocumentHandlerImpl implements SCSSDocumentHandler { @Override public WhileNode whileDirective(String condition, String body) { WhileNode node = new WhileNode(condition, body); - System.out.println(node); + log(node); return node; } @@ -138,14 +140,14 @@ public class SCSSDocumentHandlerImpl implements SCSSDocumentHandler { @Override public void ignorableAtRule(String atRule) throws CSSException { - System.out.println("ignorableAtRule(String atRule): " + atRule); + log("ignorableAtRule(String atRule): " + atRule); } @Override public void namespaceDeclaration(String prefix, String uri) throws CSSException { - System.out.println("namespaceDeclaration(String prefix, String uri): " - + prefix + ", " + uri); + log("namespaceDeclaration(String prefix, String uri): " + prefix + ", " + + uri); } @Override @@ -167,14 +169,14 @@ public class SCSSDocumentHandlerImpl implements SCSSDocumentHandler { @Override public void startPage(String name, String pseudo_page) throws CSSException { - System.out.println("startPage(String name, String pseudo_page): " - + name + ", " + pseudo_page); + log("startPage(String name, String pseudo_page): " + name + ", " + + pseudo_page); } @Override public void endPage(String name, String pseudo_page) throws CSSException { - System.out.println("endPage(String name, String pseudo_page): " + name - + ", " + pseudo_page); + log("endPage(String name, String pseudo_page): " + name + ", " + + pseudo_page); } @Override @@ -380,4 +382,17 @@ public class SCSSDocumentHandlerImpl implements SCSSDocumentHandler { public void endInclude() { nodeStack.pop(); } + + private void log(Object object) { + if (object != null) { + log(object.toString()); + } else { + log(null); + } + } + + private void log(String msg) { + Logger.getLogger(SCSSDocumentHandlerImpl.class.getName()).log( + Level.INFO, msg); + } } diff --git a/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSErrorHandler.java b/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSErrorHandler.java index 2e51c686d4..a7c65073ee 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSErrorHandler.java +++ b/theme-compiler/src/com/vaadin/sass/internal/handler/SCSSErrorHandler.java @@ -15,34 +15,42 @@ */ package com.vaadin.sass.internal.handler; +import java.util.logging.Level; +import java.util.logging.Logger; + import org.w3c.css.sac.CSSException; import org.w3c.css.sac.CSSParseException; import org.w3c.css.sac.ErrorHandler; public class SCSSErrorHandler implements ErrorHandler { + public SCSSErrorHandler() { + } + @Override public void error(CSSParseException arg0) throws CSSException { - System.out.println("Error when parsing file \n" + arg0.getURI() - + " on line " + arg0.getLineNumber() + ", column " - + arg0.getColumnNumber()); - System.out.println(arg0.getMessage() + "\n"); + log("Error when parsing file \n" + arg0.getURI() + " on line " + + arg0.getLineNumber() + ", column " + arg0.getColumnNumber()); + log(arg0.getMessage() + "\n"); } @Override public void fatalError(CSSParseException arg0) throws CSSException { - System.out.println("FATAL Error when parsing file \n" + arg0.getURI() - + " on line " + arg0.getLineNumber() + ", column " - + arg0.getColumnNumber()); - System.out.println(arg0.getMessage() + "\n"); + log("FATAL Error when parsing file \n" + arg0.getURI() + " on line " + + arg0.getLineNumber() + ", column " + arg0.getColumnNumber()); + log(arg0.getMessage() + "\n"); } @Override public void warning(CSSParseException arg0) throws CSSException { - System.out.println("Warning when parsing file \n" + arg0.getURI() - + " on line " + arg0.getLineNumber() + ", column " - + arg0.getColumnNumber()); - System.out.println(arg0.getMessage() + "\n"); + log("Warning when parsing file \n" + arg0.getURI() + " on line " + + arg0.getLineNumber() + ", column " + arg0.getColumnNumber()); + log(arg0.getMessage() + "\n"); + } + + private void log(String msg) { + Logger.getLogger(SCSSDocumentHandlerImpl.class.getName()).log( + Level.SEVERE, msg); } } diff --git a/theme-compiler/src/com/vaadin/sass/internal/parser/LexicalUnitImpl.java b/theme-compiler/src/com/vaadin/sass/internal/parser/LexicalUnitImpl.java index cfd428e094..e03cea8cfe 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/parser/LexicalUnitImpl.java +++ b/theme-compiler/src/com/vaadin/sass/internal/parser/LexicalUnitImpl.java @@ -731,13 +731,6 @@ public class LexicalUnitImpl implements LexicalUnit, SCSSLexicalUnit, previous); } - @Override - public LexicalUnitImpl clone() { - LexicalUnitImpl cloned = new LexicalUnitImpl(type, line, column, prev); - cloned.replaceValue(this); - return cloned; - } - /** * Tries to return the value for this {@link LexicalUnitImpl} without * considering any related units. diff --git a/theme-compiler/src/com/vaadin/sass/internal/parser/LocatorImpl.java b/theme-compiler/src/com/vaadin/sass/internal/parser/LocatorImpl.java index ac244a9582..35589e0a94 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/parser/LocatorImpl.java +++ b/theme-compiler/src/com/vaadin/sass/internal/parser/LocatorImpl.java @@ -23,8 +23,13 @@ */ package com.vaadin.sass.internal.parser; +import java.util.logging.Level; +import java.util.logging.Logger; + import org.w3c.css.sac.Locator; +import com.vaadin.sass.internal.handler.SCSSDocumentHandlerImpl; + /** * @version $Revision: 1.2 $ * @author Philippe Le Hegaret @@ -51,14 +56,17 @@ public class LocatorImpl implements Locator { int line; int column; + @Override public String getURI() { return uri; } + @Override public int getLineNumber() { return line; } + @Override public int getColumnNumber() { return column; } @@ -68,7 +76,7 @@ public class LocatorImpl implements Locator { */ public LocatorImpl(Parser p) { if (W3CDebug) { - System.err.println("LocatorImpl::newLocator(" + p + ");"); + log("LocatorImpl::newLocator(" + p + ");"); } uri = p.source.getURI(); line = p.token.beginLine; @@ -80,8 +88,7 @@ public class LocatorImpl implements Locator { */ public LocatorImpl(Parser p, Token tok) { if (W3CDebug) { - System.err.println("LocatorImpl::newLocator(" + p + ", " + tok - + ");"); + log("LocatorImpl::newLocator(" + p + ", " + tok + ");"); } uri = p.source.getURI(); line = tok.beginLine; @@ -93,8 +100,8 @@ public class LocatorImpl implements Locator { */ public LocatorImpl(Parser p, int line, int column) { if (W3CDebug) { - System.err.println("LocatorImpl::newLocator(" + p + ", " + line - + ", " + column + ");"); + log("LocatorImpl::newLocator(" + p + ", " + line + ", " + column + + ");"); } uri = p.source.getURI(); this.line = line; @@ -106,7 +113,7 @@ public class LocatorImpl implements Locator { */ public LocatorImpl reInit(Parser p) { if (W3CDebug) { - System.err.println("LocatorImpl::reInit(" + p + ");"); + log("LocatorImpl::reInit(" + p + ");"); } uri = p.source.getURI(); line = p.token.beginLine; @@ -119,7 +126,7 @@ public class LocatorImpl implements Locator { */ public LocatorImpl reInit(Parser p, Token tok) { if (W3CDebug) { - System.err.println("LocatorImpl::reInit(" + p + ", " + tok + ");"); + log("LocatorImpl::reInit(" + p + ", " + tok + ");"); } uri = p.source.getURI(); line = tok.beginLine; @@ -132,12 +139,16 @@ public class LocatorImpl implements Locator { */ public LocatorImpl reInit(Parser p, int line, int column) { if (W3CDebug) { - System.err.println("LocatorImpl::reInit(" + p + ", " + line + ", " - + column + ");"); + log("LocatorImpl::reInit(" + p + ", " + line + ", " + column + ");"); } uri = p.source.getURI(); this.line = line; this.column = column; return this; } + + private void log(String msg) { + Logger.getLogger(SCSSDocumentHandlerImpl.class.getName()).log( + Level.SEVERE, msg); + } } diff --git a/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.java b/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.java index 6b4a03b038..0c10e09a6c 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.java +++ b/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.java @@ -22,6 +22,8 @@ import java.util.ArrayList; import java.util.Locale; import java.util.Map; import java.util.UUID; +import java.util.logging.Level; +import java.util.logging.Logger; import org.w3c.css.sac.ConditionFactory; import org.w3c.css.sac.Condition; @@ -1158,6 +1160,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { case NONASCII: case DEBUG_SYM: case WARN_SYM: + case CONTENT_SYM: case STRING: case IDENT: case NUMBER: @@ -1180,53 +1183,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { jj_la1[37] = jj_gen; break label_28; } - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { - case DEBUG_SYM: - case WARN_SYM: - debuggingDirective(); - break; - case PLUS: - case PRECEDES: - case SIBLING: - case LBRACKET: - case ANY: - case PARENT: - case DOT: - case COLON: - case INTERPOLATION: - case IDENT: - case HASH: - styleRule(); - break; - case CDO: - case LBRACE: - case DASHMATCH: - case INCLUDES: - case MINUS: - case COMMA: - case SEMICOLON: - case NONASCII: - case STRING: - case NUMBER: - case URL: - case PERCENTAGE: - case IMPORT_SYM: - case MEDIA_SYM: - case CHARSET_SYM: - case PAGE_SYM: - case FONT_FACE_SYM: - case ATKEYWORD: - case IMPORTANT_SYM: - case UNICODERANGE: - case FUNCTION: - case UNKNOWN: - skipUnknownRule(); - break; - default: - jj_la1[38] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } + mediaDirective(); } jj_consume_token(RBRACE); label_29: @@ -1236,7 +1193,7 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { ; break; default: - jj_la1[39] = jj_gen; + jj_la1[38] = jj_gen; break label_29; } jj_consume_token(S); @@ -1248,11 +1205,64 @@ public class Parser implements org.w3c.css.sac.Parser, ParserConstants { } finally { if (start) { - documentHandler.endMedia(ml); + documentHandler.endMedia(ml); } } } + final public void mediaDirective() throws ParseException { + switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { + case DEBUG_SYM: + case WARN_SYM: + debuggingDirective(); + break; + case PLUS: + case PRECEDES: + case SIBLING: + case LBRACKET: + case ANY: + case PARENT: + case DOT: + case COLON: + case INTERPOLATION: + case IDENT: + case HASH: + styleRule(); + break; + case CDO: + case LBRACE: + case DASHMATCH: + case INCLUDES: + case MINUS: + case COMMA: + case SEMICOLON: + case NONASCII: + case STRING: + case NUMBER: + case URL: + case PERCENTAGE: + case IMPORT_SYM: + case MEDIA_SYM: + case CHARSET_SYM: + case PAGE_SYM: + case FONT_FACE_SYM: + case ATKEYWORD: + case IMPORTANT_SYM: + case UNICODERANGE: + case FUNCTION: + case UNKNOWN: + skipUnknownRule(); + break; + case CONTENT_SYM: + contentDirective(); + break; + default: + jj_la1[39] = jj_gen; + jj_consume_token(-1); + throw new ParseException(); + } + } + final public void mediaStatement(MediaListImpl ml) throws ParseException { Token t; t = getToken(1); @@ -2194,88 +2204,13 @@ char connector = ' '; } } break; - case HASH: - cond = hash(cond); - label_58: - while (true) { - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { - case LBRACKET: - case DOT: - case COLON: - ; - break; - default: - jj_la1[82] = jj_gen; - break label_58; - } - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { - case DOT: - cond = _class(cond); - break; - case LBRACKET: - cond = attrib(cond); - break; - case COLON: - cond = pseudo(cond); - break; - default: - jj_la1[83] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - break; + case LBRACKET: case DOT: - cond = _class(cond); - label_59: - while (true) { - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { - case LBRACKET: - case DOT: - case COLON: - case HASH: - ; - break; - default: - jj_la1[84] = jj_gen; - break label_59; - } - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { - case HASH: - cond = hash(cond); - break; - case DOT: - cond = _class(cond); - break; - case LBRACKET: - cond = attrib(cond); - break; - case COLON: - cond = pseudo(cond); - break; - default: - jj_la1[85] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); - } - } - break; case COLON: - cond = pseudo(cond); - label_60: + case HASH: + label_58: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { - case LBRACKET: - case DOT: - case COLON: - case HASH: - ; - break; - default: - jj_la1[86] = jj_gen; - break label_60; - } - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case HASH: cond = hash(cond); break; @@ -2289,16 +2224,10 @@ char connector = ' '; cond = pseudo(cond); break; default: - jj_la1[87] = jj_gen; + jj_la1[82] = jj_gen; jj_consume_token(-1); throw new ParseException(); } - } - break; - case LBRACKET: - cond = attrib(cond); - label_61: - while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case LBRACKET: case DOT: @@ -2307,31 +2236,13 @@ char connector = ' '; ; break; default: - jj_la1[88] = jj_gen; - break label_61; - } - switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { - case HASH: - cond = hash(cond); - break; - case DOT: - cond = _class(cond); - break; - case LBRACKET: - cond = attrib(cond); - break; - case COLON: - cond = pseudo(cond); - break; - default: - jj_la1[89] = jj_gen; - jj_consume_token(-1); - throw new ParseException(); + jj_la1[83] = jj_gen; + break label_58; } } break; default: - jj_la1[90] = jj_gen; + jj_la1[84] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -2376,7 +2287,7 @@ char connector = ' '; Token t; String s = "."; jj_consume_token(DOT); - label_62: + label_59: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case IDENT: @@ -2388,7 +2299,7 @@ String s = "."; s += t.image; break; default: - jj_la1[91] = jj_gen; + jj_la1[85] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -2398,8 +2309,8 @@ String s = "."; ; break; default: - jj_la1[92] = jj_gen; - break label_62; + jj_la1[86] = jj_gen; + break label_59; } } if (pred == null) { @@ -2418,7 +2329,7 @@ String s = "."; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case INTERPOLATION: case IDENT: - label_63: + label_60: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case IDENT: @@ -2430,7 +2341,7 @@ String s = "."; s += t.image; break; default: - jj_la1[93] = jj_gen; + jj_la1[87] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -2440,8 +2351,8 @@ String s = "."; ; break; default: - jj_la1[94] = jj_gen; - break label_63; + jj_la1[88] = jj_gen; + break label_60; } } {if (true) return s;} @@ -2455,7 +2366,7 @@ String s = "."; {if (true) return "&";} break; default: - jj_la1[95] = jj_gen; + jj_la1[89] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -2471,28 +2382,28 @@ String s = "."; Token val = null; String attValue = null; jj_consume_token(LBRACKET); - label_64: + label_61: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[96] = jj_gen; - break label_64; + jj_la1[90] = jj_gen; + break label_61; } jj_consume_token(S); } att = jj_consume_token(IDENT); - label_65: + label_62: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[97] = jj_gen; - break label_65; + jj_la1[91] = jj_gen; + break label_62; } jj_consume_token(S); } @@ -2529,19 +2440,19 @@ String s = "."; cases = 6; break; default: - jj_la1[98] = jj_gen; + jj_la1[92] = jj_gen; jj_consume_token(-1); throw new ParseException(); } - label_66: + label_63: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[99] = jj_gen; - break label_66; + jj_la1[93] = jj_gen; + break label_63; } jj_consume_token(S); } @@ -2555,25 +2466,25 @@ String s = "."; attValue = val.image; break; default: - jj_la1[100] = jj_gen; + jj_la1[94] = jj_gen; jj_consume_token(-1); throw new ParseException(); } - label_67: + label_64: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[101] = jj_gen; - break label_67; + jj_la1[95] = jj_gen; + break label_64; } jj_consume_token(S); } break; default: - jj_la1[102] = jj_gen; + jj_la1[96] = jj_gen; ; } jj_consume_token(RBRACKET); @@ -2629,7 +2540,7 @@ boolean isPseudoElement = false; isPseudoElement=true; break; default: - jj_la1[103] = jj_gen; + jj_la1[97] = jj_gen; ; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { @@ -2655,19 +2566,19 @@ boolean isPseudoElement = false; break; case FUNCTION: n = jj_consume_token(FUNCTION); - label_68: + label_65: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[104] = jj_gen; - break label_68; + jj_la1[98] = jj_gen; + break label_65; } jj_consume_token(S); } - d = skipStatementUntilRightParan(); + d = skipStatementUntilMatchingRightParan(); jj_consume_token(RPARAN); // accept anything between function and a right parenthesis String f = convertIdent(n.image); @@ -2680,7 +2591,7 @@ boolean isPseudoElement = false; } break; default: - jj_la1[105] = jj_gen; + jj_la1[99] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -2710,15 +2621,15 @@ boolean isPseudoElement = false; try { name = variableName(); jj_consume_token(COLON); - label_69: + label_66: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[106] = jj_gen; - break label_69; + jj_la1[100] = jj_gen; + break label_66; } jj_consume_token(S); } @@ -2728,21 +2639,21 @@ boolean isPseudoElement = false; guarded = guarded(); break; default: - jj_la1[107] = jj_gen; + jj_la1[101] = jj_gen; ; } - label_70: + label_67: while (true) { jj_consume_token(SEMICOLON); - label_71: + label_68: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[108] = jj_gen; - break label_71; + jj_la1[102] = jj_gen; + break label_68; } jj_consume_token(S); } @@ -2751,8 +2662,8 @@ boolean isPseudoElement = false; ; break; default: - jj_la1[109] = jj_gen; - break label_70; + jj_la1[103] = jj_gen; + break label_67; } } documentHandler.variable(name, exp, guarded); @@ -2792,7 +2703,7 @@ boolean isPseudoElement = false; eachDirective(); break; default: - jj_la1[110] = jj_gen; + jj_la1[104] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -2831,7 +2742,7 @@ boolean isPseudoElement = false; keyframes(); break; default: - jj_la1[111] = jj_gen; + jj_la1[105] = jj_gen; if (jj_2_3(2147483647)) { variable(); } else { @@ -2847,7 +2758,7 @@ boolean isPseudoElement = false; atRuleDeclaration(); break; default: - jj_la1[112] = jj_gen; + jj_la1[106] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -2860,7 +2771,7 @@ boolean isPseudoElement = false; String s = null; String evaluator = ""; jj_consume_token(IF_SYM); - label_72: + label_69: while (true) { s = booleanExpressionToken(); evaluator += s; @@ -2886,26 +2797,26 @@ boolean isPseudoElement = false; ; break; default: - jj_la1[113] = jj_gen; - break label_72; + jj_la1[107] = jj_gen; + break label_69; } } jj_consume_token(LBRACE); - label_73: + label_70: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[114] = jj_gen; - break label_73; + jj_la1[108] = jj_gen; + break label_70; } jj_consume_token(S); } documentHandler.startIfElseDirective(); documentHandler.ifDirective(evaluator); - label_74: + label_71: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PLUS: @@ -2934,8 +2845,8 @@ boolean isPseudoElement = false; ; break; default: - jj_la1[115] = jj_gen; - break label_74; + jj_la1[109] = jj_gen; + break label_71; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PLUS: @@ -2966,33 +2877,33 @@ boolean isPseudoElement = false; fontFace(); break; default: - jj_la1[116] = jj_gen; + jj_la1[110] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } jj_consume_token(RBRACE); - label_75: + label_72: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[117] = jj_gen; - break label_75; + jj_la1[111] = jj_gen; + break label_72; } jj_consume_token(S); } - label_76: + label_73: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case ELSE_SYM: ; break; default: - jj_la1[118] = jj_gen; - break label_76; + jj_la1[112] = jj_gen; + break label_73; } elseDirective(); } @@ -3004,22 +2915,22 @@ boolean isPseudoElement = false; Token n = null; String s = null; jj_consume_token(ELSE_SYM); - label_77: + label_74: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[119] = jj_gen; - break label_77; + jj_la1[113] = jj_gen; + break label_74; } jj_consume_token(S); } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case IF: jj_consume_token(IF); - label_78: + label_75: while (true) { s = booleanExpressionToken(); evaluator += s; @@ -3045,31 +2956,31 @@ boolean isPseudoElement = false; ; break; default: - jj_la1[120] = jj_gen; - break label_78; + jj_la1[114] = jj_gen; + break label_75; } } break; default: - jj_la1[121] = jj_gen; + jj_la1[115] = jj_gen; ; } jj_consume_token(LBRACE); - label_79: + label_76: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[122] = jj_gen; - break label_79; + jj_la1[116] = jj_gen; + break label_76; } jj_consume_token(S); } if(!evaluator.trim().equals("")){ documentHandler.ifDirective(evaluator); } else{ documentHandler.elseDirective(); } - label_80: + label_77: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PLUS: @@ -3098,8 +3009,8 @@ boolean isPseudoElement = false; ; break; default: - jj_la1[123] = jj_gen; - break label_80; + jj_la1[117] = jj_gen; + break label_77; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PLUS: @@ -3130,21 +3041,21 @@ boolean isPseudoElement = false; fontFace(); break; default: - jj_la1[124] = jj_gen; + jj_la1[118] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } jj_consume_token(RBRACE); - label_81: + label_78: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[125] = jj_gen; - break label_81; + jj_la1[119] = jj_gen; + break label_78; } jj_consume_token(S); } @@ -3209,7 +3120,7 @@ boolean isPseudoElement = false; n = jj_consume_token(NOT_EQ); break; default: - jj_la1[126] = jj_gen; + jj_la1[120] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -3224,41 +3135,41 @@ boolean isPseudoElement = false; ArrayList<String> list = null; String listVariable = null; jj_consume_token(EACH_SYM); - label_82: + label_79: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[127] = jj_gen; - break label_82; + jj_la1[121] = jj_gen; + break label_79; } jj_consume_token(S); } var = jj_consume_token(VARIABLE); - label_83: + label_80: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[128] = jj_gen; - break label_83; + jj_la1[122] = jj_gen; + break label_80; } jj_consume_token(S); } jj_consume_token(EACH_IN); - label_84: + label_81: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[129] = jj_gen; - break label_84; + jj_la1[123] = jj_gen; + break label_81; } jj_consume_token(S); } @@ -3272,24 +3183,24 @@ boolean isPseudoElement = false; documentHandler.startEachDirective(var.image, listVariable); break; default: - jj_la1[130] = jj_gen; + jj_la1[124] = jj_gen; jj_consume_token(-1); throw new ParseException(); } jj_consume_token(LBRACE); - label_85: + label_82: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[131] = jj_gen; - break label_85; + jj_la1[125] = jj_gen; + break label_82; } jj_consume_token(S); } - label_86: + label_83: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PLUS: @@ -3317,21 +3228,21 @@ boolean isPseudoElement = false; ; break; default: - jj_la1[132] = jj_gen; - break label_86; + jj_la1[126] = jj_gen; + break label_83; } ifContentStatement(); } jj_consume_token(RBRACE); - label_87: + label_84: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[133] = jj_gen; - break label_87; + jj_la1[127] = jj_gen; + break label_84; } jj_consume_token(S); } @@ -3342,53 +3253,53 @@ boolean isPseudoElement = false; ArrayList<String > strings = new ArrayList<String >(); Token input; input = jj_consume_token(IDENT); - label_88: + label_85: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[134] = jj_gen; - break label_88; + jj_la1[128] = jj_gen; + break label_85; } jj_consume_token(S); } strings.add(input.image); - label_89: + label_86: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COMMA: ; break; default: - jj_la1[135] = jj_gen; - break label_89; + jj_la1[129] = jj_gen; + break label_86; } jj_consume_token(COMMA); - label_90: + label_87: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[136] = jj_gen; - break label_90; + jj_la1[130] = jj_gen; + break label_87; } jj_consume_token(S); } input = jj_consume_token(IDENT); strings.add(input.image); - label_91: + label_88: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[137] = jj_gen; - break label_91; + jj_la1[131] = jj_gen; + break label_88; } jj_consume_token(S); } @@ -3402,15 +3313,15 @@ boolean isPseudoElement = false; ArrayList<VariableNode> args = null; String body; jj_consume_token(MIXIN_SYM); - label_92: + label_89: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[138] = jj_gen; - break label_92; + jj_la1[132] = jj_gen; + break label_89; } jj_consume_token(S); } @@ -3423,39 +3334,39 @@ boolean isPseudoElement = false; name = functionName(); args = arglist(); jj_consume_token(RPARAN); - label_93: + label_90: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[139] = jj_gen; - break label_93; + jj_la1[133] = jj_gen; + break label_90; } jj_consume_token(S); } break; default: - jj_la1[140] = jj_gen; + jj_la1[134] = jj_gen; jj_consume_token(-1); throw new ParseException(); } jj_consume_token(LBRACE); - label_94: + label_91: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[141] = jj_gen; - break label_94; + jj_la1[135] = jj_gen; + break label_91; } jj_consume_token(S); } documentHandler.startMixinDirective(name, args); - label_95: + label_92: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PLUS: @@ -3485,8 +3396,8 @@ boolean isPseudoElement = false; ; break; default: - jj_la1[142] = jj_gen; - break label_95; + jj_la1[136] = jj_gen; + break label_92; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PLUS: @@ -3520,21 +3431,21 @@ boolean isPseudoElement = false; page(); break; default: - jj_la1[143] = jj_gen; + jj_la1[137] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } jj_consume_token(RBRACE); - label_96: + label_93: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[144] = jj_gen; - break label_96; + jj_la1[138] = jj_gen; + break label_93; } jj_consume_token(S); } @@ -3548,26 +3459,26 @@ boolean isPseudoElement = false; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case VARIABLE: arg = mixinArg(); - label_97: + label_94: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COMMA: ; break; default: - jj_la1[145] = jj_gen; - break label_97; + jj_la1[139] = jj_gen; + break label_94; } jj_consume_token(COMMA); - label_98: + label_95: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[146] = jj_gen; - break label_98; + jj_la1[140] = jj_gen; + break label_95; } jj_consume_token(S); } @@ -3577,7 +3488,7 @@ boolean isPseudoElement = false; hasNonOptionalArgument = checkMixinForNonOptionalArguments(arg, hasNonOptionalArgument); args.add(arg); break; default: - jj_la1[147] = jj_gen; + jj_la1[141] = jj_gen; ; } {if (true) return args;} @@ -3613,45 +3524,45 @@ boolean isPseudoElement = false; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COLON: jj_consume_token(COLON); - label_99: + label_96: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[148] = jj_gen; - break label_99; + jj_la1[142] = jj_gen; + break label_96; } jj_consume_token(S); } first = nonVariableTerm(null); prev = first; - label_100: + label_97: while (true) { if (jj_2_5(3)) { ; } else { - break label_100; + break label_97; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COMMA: jj_consume_token(COMMA); - label_101: + label_98: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[149] = jj_gen; - break label_101; + jj_la1[143] = jj_gen; + break label_98; } jj_consume_token(S); } break; default: - jj_la1[150] = jj_gen; + jj_la1[144] = jj_gen; ; } prev = nonVariableTerm(prev); @@ -3663,13 +3574,13 @@ boolean isPseudoElement = false; prev, variable.image); break; default: - jj_la1[151] = jj_gen; + jj_la1[145] = jj_gen; jj_consume_token(-1); throw new ParseException(); } break; default: - jj_la1[152] = jj_gen; + jj_la1[146] = jj_gen; ; } VariableNode arg = new VariableNode(name, first, false); @@ -3718,7 +3629,7 @@ boolean isPseudoElement = false; case FUNCTION: first = term(null); args.add(first); prev = first; - label_102: + label_99: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PLUS: @@ -3758,58 +3669,58 @@ boolean isPseudoElement = false; ; break; default: - jj_la1[153] = jj_gen; - break label_102; + jj_la1[147] = jj_gen; + break label_99; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COLON: jj_consume_token(COLON); - label_103: + label_100: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[154] = jj_gen; - break label_103; + jj_la1[148] = jj_gen; + break label_100; } jj_consume_token(S); } break; default: - jj_la1[155] = jj_gen; + jj_la1[149] = jj_gen; ; } next = term(prev); prev.setNextLexicalUnit(next); prev = next; } - label_104: + label_101: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COMMA: ; break; default: - jj_la1[156] = jj_gen; - break label_104; + jj_la1[150] = jj_gen; + break label_101; } jj_consume_token(COMMA); - label_105: + label_102: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[157] = jj_gen; - break label_105; + jj_la1[151] = jj_gen; + break label_102; } jj_consume_token(S); } first = term(null); args.add(first); prev = first; - label_106: + label_103: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PLUS: @@ -3849,27 +3760,27 @@ boolean isPseudoElement = false; ; break; default: - jj_la1[158] = jj_gen; - break label_106; + jj_la1[152] = jj_gen; + break label_103; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COLON: jj_consume_token(COLON); - label_107: + label_104: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[159] = jj_gen; - break label_107; + jj_la1[153] = jj_gen; + break label_104; } jj_consume_token(S); } break; default: - jj_la1[160] = jj_gen; + jj_la1[154] = jj_gen; ; } next = term(prev); @@ -3878,7 +3789,7 @@ boolean isPseudoElement = false; } break; default: - jj_la1[161] = jj_gen; + jj_la1[155] = jj_gen; ; } {if (true) return args;} @@ -3889,15 +3800,15 @@ boolean isPseudoElement = false; String name; ArrayList<LexicalUnitImpl> args=null; jj_consume_token(INCLUDE_SYM); - label_108: + label_105: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[162] = jj_gen; - break label_108; + jj_la1[156] = jj_gen; + break label_105; } jj_consume_token(S); } @@ -3914,21 +3825,21 @@ boolean isPseudoElement = false; name = functionName(); args = argValuelist(); jj_consume_token(RPARAN); - label_109: + label_106: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[163] = jj_gen; - break label_109; + jj_la1[157] = jj_gen; + break label_106; } jj_consume_token(S); } break; default: - jj_la1[164] = jj_gen; + jj_la1[158] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -3941,7 +3852,7 @@ boolean isPseudoElement = false; includeDirectiveTerminator(); break; default: - jj_la1[165] = jj_gen; + jj_la1[159] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -3950,18 +3861,18 @@ boolean isPseudoElement = false; final public void includeDirectiveTerminator() throws ParseException { try { - label_110: + label_107: while (true) { jj_consume_token(SEMICOLON); - label_111: + label_108: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[166] = jj_gen; - break label_111; + jj_la1[160] = jj_gen; + break label_108; } jj_consume_token(S); } @@ -3970,8 +3881,8 @@ boolean isPseudoElement = false; ; break; default: - jj_la1[167] = jj_gen; - break label_110; + jj_la1[161] = jj_gen; + break label_107; } } } catch (ParseException e) { @@ -3981,19 +3892,19 @@ boolean isPseudoElement = false; final public void includeDirectiveBlockContents() throws ParseException { jj_consume_token(LBRACE); - label_112: + label_109: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[168] = jj_gen; - break label_112; + jj_la1[162] = jj_gen; + break label_109; } jj_consume_token(S); } - label_113: + label_110: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PLUS: @@ -4015,8 +3926,8 @@ boolean isPseudoElement = false; ; break; default: - jj_la1[169] = jj_gen; - break label_113; + jj_la1[163] = jj_gen; + break label_110; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PLUS: @@ -4040,21 +3951,21 @@ boolean isPseudoElement = false; keyframeSelector(); break; default: - jj_la1[170] = jj_gen; + jj_la1[164] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } jj_consume_token(RBRACE); - label_114: + label_111: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[171] = jj_gen; - break label_114; + jj_la1[165] = jj_gen; + break label_111; } jj_consume_token(S); } @@ -4077,28 +3988,28 @@ boolean isPseudoElement = false; //refactor, remove those 3 LOOKAHEAD(5). n = jj_consume_token(VARIABLE); variable = n.image; - label_115: + label_112: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[172] = jj_gen; - break label_115; + jj_la1[166] = jj_gen; + break label_112; } jj_consume_token(S); } jj_consume_token(COLON); - label_116: + label_113: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[173] = jj_gen; - break label_116; + jj_la1[167] = jj_gen; + break label_113; } jj_consume_token(S); } @@ -4113,19 +4024,19 @@ boolean isPseudoElement = false; type = jj_consume_token(CONTAINS); break; default: - jj_la1[174] = jj_gen; + jj_la1[168] = jj_gen; jj_consume_token(-1); throw new ParseException(); } - label_117: + label_114: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[175] = jj_gen; - break label_117; + jj_la1[169] = jj_gen; + break label_114; } jj_consume_token(S); } @@ -4135,19 +4046,19 @@ boolean isPseudoElement = false; jj_consume_token(RPARAN); break; default: - jj_la1[176] = jj_gen; + jj_la1[170] = jj_gen; ; } jj_consume_token(COMMA); - label_118: + label_115: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[177] = jj_gen; - break label_118; + jj_la1[171] = jj_gen; + break label_115; } jj_consume_token(S); } @@ -4155,35 +4066,35 @@ boolean isPseudoElement = false; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COMMA: jj_consume_token(COMMA); - label_119: + label_116: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[178] = jj_gen; - break label_119; + jj_la1[172] = jj_gen; + break label_116; } jj_consume_token(S); } n = jj_consume_token(IDENT); separator = n.image; - label_120: + label_117: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[179] = jj_gen; - break label_120; + jj_la1[173] = jj_gen; + break label_117; } jj_consume_token(S); } break; default: - jj_la1[180] = jj_gen; + jj_la1[174] = jj_gen; ; } jj_consume_token(RPARAN); @@ -4203,28 +4114,28 @@ boolean isPseudoElement = false; default: break; } - label_121: + label_118: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[181] = jj_gen; - break label_121; + jj_la1[175] = jj_gen; + break label_118; } jj_consume_token(S); } jj_consume_token(SEMICOLON); - label_122: + label_119: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[182] = jj_gen; - break label_122; + jj_la1[176] = jj_gen; + break label_119; } jj_consume_token(S); } @@ -4241,41 +4152,41 @@ boolean isPseudoElement = false; Token n = null; n = jj_consume_token(VARIABLE); variable = n.image; - label_123: + label_120: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[183] = jj_gen; - break label_123; + jj_la1[177] = jj_gen; + break label_120; } jj_consume_token(S); } jj_consume_token(COLON); - label_124: + label_121: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[184] = jj_gen; - break label_124; + jj_la1[178] = jj_gen; + break label_121; } jj_consume_token(S); } jj_consume_token(APPEND); - label_125: + label_122: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[185] = jj_gen; - break label_125; + jj_la1[179] = jj_gen; + break label_122; } jj_consume_token(S); } @@ -4285,19 +4196,19 @@ boolean isPseudoElement = false; jj_consume_token(RPARAN); break; default: - jj_la1[186] = jj_gen; + jj_la1[180] = jj_gen; ; } jj_consume_token(COMMA); - label_126: + label_123: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[187] = jj_gen; - break label_126; + jj_la1[181] = jj_gen; + break label_123; } jj_consume_token(S); } @@ -4305,35 +4216,35 @@ boolean isPseudoElement = false; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COMMA: jj_consume_token(COMMA); - label_127: + label_124: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[188] = jj_gen; - break label_127; + jj_la1[182] = jj_gen; + break label_124; } jj_consume_token(S); } n = jj_consume_token(IDENT); separator = n.image; - label_128: + label_125: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[189] = jj_gen; - break label_128; + jj_la1[183] = jj_gen; + break label_125; } jj_consume_token(S); } break; default: - jj_la1[190] = jj_gen; + jj_la1[184] = jj_gen; ; } jj_consume_token(RPARAN); @@ -4351,41 +4262,41 @@ boolean isPseudoElement = false; Token n = null; n = jj_consume_token(VARIABLE); variable = n.image; - label_129: + label_126: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[191] = jj_gen; - break label_129; + jj_la1[185] = jj_gen; + break label_126; } jj_consume_token(S); } jj_consume_token(COLON); - label_130: + label_127: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[192] = jj_gen; - break label_130; + jj_la1[186] = jj_gen; + break label_127; } jj_consume_token(S); } jj_consume_token(REMOVE); - label_131: + label_128: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[193] = jj_gen; - break label_131; + jj_la1[187] = jj_gen; + break label_128; } jj_consume_token(S); } @@ -4395,19 +4306,19 @@ boolean isPseudoElement = false; jj_consume_token(RPARAN); break; default: - jj_la1[194] = jj_gen; + jj_la1[188] = jj_gen; ; } jj_consume_token(COMMA); - label_132: + label_129: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[195] = jj_gen; - break label_132; + jj_la1[189] = jj_gen; + break label_129; } jj_consume_token(S); } @@ -4415,35 +4326,35 @@ boolean isPseudoElement = false; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COMMA: jj_consume_token(COMMA); - label_133: + label_130: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[196] = jj_gen; - break label_133; + jj_la1[190] = jj_gen; + break label_130; } jj_consume_token(S); } n = jj_consume_token(IDENT); separator = n.image; - label_134: + label_131: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[197] = jj_gen; - break label_134; + jj_la1[191] = jj_gen; + break label_131; } jj_consume_token(S); } break; default: - jj_la1[198] = jj_gen; + jj_la1[192] = jj_gen; ; } jj_consume_token(RPARAN); @@ -4463,46 +4374,46 @@ boolean isPseudoElement = false; case VARIABLE: n = jj_consume_token(VARIABLE); variable = n.image; - label_135: + label_132: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[199] = jj_gen; - break label_135; + jj_la1[193] = jj_gen; + break label_132; } jj_consume_token(S); } jj_consume_token(COLON); - label_136: + label_133: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[200] = jj_gen; - break label_136; + jj_la1[194] = jj_gen; + break label_133; } jj_consume_token(S); } break; default: - jj_la1[201] = jj_gen; + jj_la1[195] = jj_gen; ; } jj_consume_token(CONTAINS); - label_137: + label_134: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[202] = jj_gen; - break label_137; + jj_la1[196] = jj_gen; + break label_134; } jj_consume_token(S); } @@ -4512,19 +4423,19 @@ boolean isPseudoElement = false; jj_consume_token(RPARAN); break; default: - jj_la1[203] = jj_gen; + jj_la1[197] = jj_gen; ; } jj_consume_token(COMMA); - label_138: + label_135: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[204] = jj_gen; - break label_138; + jj_la1[198] = jj_gen; + break label_135; } jj_consume_token(S); } @@ -4532,35 +4443,35 @@ boolean isPseudoElement = false; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COMMA: jj_consume_token(COMMA); - label_139: + label_136: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[205] = jj_gen; - break label_139; + jj_la1[199] = jj_gen; + break label_136; } jj_consume_token(S); } n = jj_consume_token(IDENT); separator = n.image; - label_140: + label_137: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[206] = jj_gen; - break label_140; + jj_la1[200] = jj_gen; + break label_137; } jj_consume_token(S); } break; default: - jj_la1[207] = jj_gen; + jj_la1[201] = jj_gen; ; } jj_consume_token(RPARAN); @@ -4665,7 +4576,7 @@ boolean isPseudoElement = false; warnDirective(); break; default: - jj_la1[208] = jj_gen; + jj_la1[202] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -4675,18 +4586,18 @@ boolean isPseudoElement = false; jj_consume_token(DEBUG_SYM); String content = skipStatementUntil(new int[] {SEMICOLON,RBRACE,EOF}); // TODO should evaluate the content expression, call documentHandler.debugDirective() etc. - System.out.println(content); + Logger.getLogger(Parser.class.getName()).log(Level.INFO, content); try { jj_consume_token(SEMICOLON); - label_141: + label_138: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[209] = jj_gen; - break label_141; + jj_la1[203] = jj_gen; + break label_138; } jj_consume_token(S); } @@ -4699,18 +4610,18 @@ boolean isPseudoElement = false; jj_consume_token(WARN_SYM); String content = skipStatementUntil(new int[] {SEMICOLON,RBRACE,EOF}); // TODO should evaluate the content expression, call documentHandler.warnDirective() etc. - System.err.println(content); + Logger.getLogger(Parser.class.getName()).log(Level.SEVERE, content); try { jj_consume_token(SEMICOLON); - label_142: + label_139: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[210] = jj_gen; - break label_142; + jj_la1[204] = jj_gen; + break label_139; } jj_consume_token(S); } @@ -4739,20 +4650,20 @@ boolean isPseudoElement = false; exclusive = false; break; default: - jj_la1[211] = jj_gen; + jj_la1[205] = jj_gen; jj_consume_token(-1); throw new ParseException(); } to = skipStatementUntilLeftBrace(); - label_143: + label_140: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[212] = jj_gen; - break label_143; + jj_la1[206] = jj_gen; + break label_140; } jj_consume_token(S); } @@ -4773,33 +4684,33 @@ boolean isPseudoElement = false; final public void extendDirective() throws ParseException { ArrayList<String> list; jj_consume_token(EXTEND_SYM); - label_144: + label_141: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[213] = jj_gen; - break label_144; + jj_la1[207] = jj_gen; + break label_141; } jj_consume_token(S); } list = selectorList(); documentHandler.extendDirective(list); try { - label_145: + label_142: while (true) { jj_consume_token(SEMICOLON); - label_146: + label_143: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[214] = jj_gen; - break label_146; + jj_la1[208] = jj_gen; + break label_143; } jj_consume_token(S); } @@ -4808,8 +4719,8 @@ boolean isPseudoElement = false; ; break; default: - jj_la1[215] = jj_gen; - break label_145; + jj_la1[209] = jj_gen; + break label_142; } } } catch (ParseException e) { @@ -4819,31 +4730,31 @@ boolean isPseudoElement = false; final public void contentDirective() throws ParseException { jj_consume_token(CONTENT_SYM); - label_147: + label_144: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[216] = jj_gen; - break label_147; + jj_la1[210] = jj_gen; + break label_144; } jj_consume_token(S); } try { - label_148: + label_145: while (true) { jj_consume_token(SEMICOLON); - label_149: + label_146: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[217] = jj_gen; - break label_149; + jj_la1[211] = jj_gen; + break label_146; } jj_consume_token(S); } @@ -4852,8 +4763,8 @@ boolean isPseudoElement = false; ; break; default: - jj_la1[218] = jj_gen; - break label_148; + jj_la1[212] = jj_gen; + break label_145; } } } catch (ParseException e) { @@ -4883,28 +4794,28 @@ boolean isPseudoElement = false; LexicalUnit exp; name = property(); jj_consume_token(COLON); - label_150: + label_147: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[219] = jj_gen; - break label_150; + jj_la1[213] = jj_gen; + break label_147; } jj_consume_token(S); } jj_consume_token(LBRACE); - label_151: + label_148: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[220] = jj_gen; - break label_151; + jj_la1[214] = jj_gen; + break label_148; } jj_consume_token(S); } @@ -4915,29 +4826,29 @@ LexicalUnit exp; declaration(); break; default: - jj_la1[221] = jj_gen; + jj_la1[215] = jj_gen; ; } - label_152: + label_149: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case SEMICOLON: ; break; default: - jj_la1[222] = jj_gen; - break label_152; + jj_la1[216] = jj_gen; + break label_149; } jj_consume_token(SEMICOLON); - label_153: + label_150: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[223] = jj_gen; - break label_153; + jj_la1[217] = jj_gen; + break label_150; } jj_consume_token(S); } @@ -4947,21 +4858,21 @@ LexicalUnit exp; declaration(); break; default: - jj_la1[224] = jj_gen; + jj_la1[218] = jj_gen; ; } } jj_consume_token(RBRACE); documentHandler.endNestedProperties(name); - label_154: + label_151: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[225] = jj_gen; - break label_154; + jj_la1[219] = jj_gen; + break label_151; } jj_consume_token(S); } @@ -4978,7 +4889,7 @@ LexicalUnit exp; debuggingDirective(); break; default: - jj_la1[226] = jj_gen; + jj_la1[220] = jj_gen; if (jj_2_6(2147483647)) { styleRule(); } else if (jj_2_7(3)) { @@ -4999,7 +4910,7 @@ LexicalUnit exp; styleRule(); break; default: - jj_la1[227] = jj_gen; + jj_la1[221] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -5044,15 +4955,15 @@ LexicalUnit exp; name = property(); save = token; jj_consume_token(COLON); - label_155: + label_152: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[228] = jj_gen; - break label_155; + jj_la1[222] = jj_gen; + break label_152; } jj_consume_token(S); } @@ -5096,7 +5007,7 @@ LexicalUnit exp; important = prio(); break; default: - jj_la1[229] = jj_gen; + jj_la1[223] = jj_gen; ; } Token next = getToken(1); @@ -5115,15 +5026,15 @@ LexicalUnit exp; break; case LBRACE: jj_consume_token(LBRACE); - label_156: + label_153: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[230] = jj_gen; - break label_156; + jj_la1[224] = jj_gen; + break label_153; } jj_consume_token(S); } @@ -5134,29 +5045,29 @@ LexicalUnit exp; declaration(); break; default: - jj_la1[231] = jj_gen; + jj_la1[225] = jj_gen; ; } - label_157: + label_154: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case SEMICOLON: ; break; default: - jj_la1[232] = jj_gen; - break label_157; + jj_la1[226] = jj_gen; + break label_154; } jj_consume_token(SEMICOLON); - label_158: + label_155: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[233] = jj_gen; - break label_158; + jj_la1[227] = jj_gen; + break label_155; } jj_consume_token(S); } @@ -5166,27 +5077,27 @@ LexicalUnit exp; declaration(); break; default: - jj_la1[234] = jj_gen; + jj_la1[228] = jj_gen; ; } } jj_consume_token(RBRACE); - label_159: + label_156: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[235] = jj_gen; - break label_159; + jj_la1[229] = jj_gen; + break label_156; } jj_consume_token(S); } documentHandler.endNestedProperties(name); break; default: - jj_la1[236] = jj_gen; + jj_la1[230] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -5236,15 +5147,15 @@ LexicalUnit exp; name = property(); save = token; jj_consume_token(COLON); - label_160: + label_157: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[237] = jj_gen; - break label_160; + jj_la1[231] = jj_gen; + break label_157; } jj_consume_token(S); } @@ -5254,7 +5165,7 @@ LexicalUnit exp; important = prio(); break; default: - jj_la1[238] = jj_gen; + jj_la1[232] = jj_gen; ; } documentHandler.property(name, exp, important); @@ -5297,15 +5208,15 @@ LexicalUnit exp; */ final public boolean prio() throws ParseException { jj_consume_token(IMPORTANT_SYM); - label_161: + label_158: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[239] = jj_gen; - break label_161; + jj_la1[233] = jj_gen; + break label_158; } jj_consume_token(S); } @@ -5315,15 +5226,15 @@ LexicalUnit exp; final public boolean guarded() throws ParseException { jj_consume_token(GUARDED_SYM); - label_162: + label_159: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[240] = jj_gen; - break label_162; + jj_la1[234] = jj_gen; + break label_159; } jj_consume_token(S); } @@ -5348,15 +5259,15 @@ LexicalUnit exp; * 3. parenthesis is not supported now. */ n = jj_consume_token(COMMA); - label_163: + label_160: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[241] = jj_gen; - break label_163; + jj_la1[235] = jj_gen; + break label_160; } jj_consume_token(S); } @@ -5366,15 +5277,15 @@ LexicalUnit exp; break; case DIV: n = jj_consume_token(DIV); - label_164: + label_161: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[242] = jj_gen; - break label_164; + jj_la1[236] = jj_gen; + break label_161; } jj_consume_token(S); } @@ -5384,15 +5295,15 @@ LexicalUnit exp; break; case ANY: n = jj_consume_token(ANY); - label_165: + label_162: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[243] = jj_gen; - break label_165; + jj_la1[237] = jj_gen; + break label_162; } jj_consume_token(S); } @@ -5402,15 +5313,15 @@ LexicalUnit exp; break; case MOD: n = jj_consume_token(MOD); - label_166: + label_163: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[244] = jj_gen; - break label_166; + jj_la1[238] = jj_gen; + break label_163; } jj_consume_token(S); } @@ -5420,7 +5331,7 @@ LexicalUnit exp; break; case PLUS: n = jj_consume_token(PLUS); - label_167: + label_164: while (true) { jj_consume_token(S); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { @@ -5428,8 +5339,8 @@ LexicalUnit exp; ; break; default: - jj_la1[245] = jj_gen; - break label_167; + jj_la1[239] = jj_gen; + break label_164; } } {if (true) return LexicalUnitImpl.createAdd(n.beginLine, @@ -5438,7 +5349,7 @@ LexicalUnit exp; break; case MINUS: n = jj_consume_token(MINUS); - label_168: + label_165: while (true) { jj_consume_token(S); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { @@ -5446,8 +5357,8 @@ LexicalUnit exp; ; break; default: - jj_la1[246] = jj_gen; - break label_168; + jj_la1[240] = jj_gen; + break label_165; } } {if (true) return LexicalUnitImpl.createMinus(n.beginLine, @@ -5455,7 +5366,7 @@ LexicalUnit exp; prev);} break; default: - jj_la1[247] = jj_gen; + jj_la1[241] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -5470,12 +5381,12 @@ LexicalUnit exp; char op; first = term(null); res = first; - label_169: + label_166: while (true) { if (jj_2_8(2)) { ; } else { - break label_169; + break label_166; } if (jj_2_9(2)) { res = operator(res); @@ -5502,7 +5413,7 @@ LexicalUnit exp; {if (true) return '+';} break; default: - jj_la1[248] = jj_gen; + jj_la1[242] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -5555,7 +5466,7 @@ LexicalUnit exp; result = variableTerm(prev); break; default: - jj_la1[249] = jj_gen; + jj_la1[243] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -5608,7 +5519,7 @@ LexicalUnitImpl result = null; op = unaryOperator(); break; default: - jj_la1[250] = jj_gen; + jj_la1[244] = jj_gen; ; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { @@ -5724,7 +5635,7 @@ LexicalUnitImpl result = null; result = function(op, prev); break; default: - jj_la1[251] = jj_gen; + jj_la1[245] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -5757,7 +5668,7 @@ LexicalUnitImpl result = null; s+="."; break; default: - jj_la1[252] = jj_gen; + jj_la1[246] = jj_gen; ; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { @@ -5774,7 +5685,7 @@ LexicalUnitImpl result = null; n = jj_consume_token(FROM); break; default: - jj_la1[253] = jj_gen; + jj_la1[247] = jj_gen; jj_consume_token(-1); throw new ParseException(); } @@ -5821,25 +5732,25 @@ LexicalUnitImpl result = null; result = unicode(prev); break; default: - jj_la1[254] = jj_gen; + jj_la1[248] = jj_gen; jj_consume_token(-1); throw new ParseException(); } break; default: - jj_la1[255] = jj_gen; + jj_la1[249] = jj_gen; jj_consume_token(-1); throw new ParseException(); } - label_170: + label_167: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[256] = jj_gen; - break label_170; + jj_la1[250] = jj_gen; + break label_167; } jj_consume_token(S); } @@ -5855,15 +5766,15 @@ LexicalUnitImpl result = null; Token n; LexicalUnit params = null; n = jj_consume_token(FUNCTION); - label_171: + label_168: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[257] = jj_gen; - break label_171; + jj_la1[251] = jj_gen; + break label_168; } jj_consume_token(S); } @@ -5914,7 +5825,7 @@ LexicalUnitImpl result = null; params = expr(); break; default: - jj_la1[258] = jj_gen; + jj_la1[252] = jj_gen; ; } jj_consume_token(RPARAN); @@ -6184,9 +6095,35 @@ LexicalUnitImpl result = null; return skipStatementUntil(lBrace); } - String skipStatementUntilRightParan() throws ParseException { - int[] rParan = {RPARAN}; - return skipStatementUntil(rParan); + String skipStatementUntilMatchingRightParan() throws ParseException { + int[] leftTokens = {LPARAN, FUNCTION}; // a FUNCTION also contains "(" + int[] rightTokens = {RPARAN}; + StringBuffer s = new StringBuffer(); + int difference = 1; + Token tok; + while(difference != 0){ + tok = getToken(1); + if(tok.kind == EOF) { + return null; + } + for(int sym : leftTokens){ + if(tok.kind == sym){ + difference++; + } + } + for(int sym : rightTokens){ + if(tok.kind == sym){ + difference--; + } + } + if(difference != 0){ + if (tok.image != null) { + s.append(tok.image); + } + getNextToken(); + } + } + return s.toString().trim(); } String skipStatementUntil(int[] symbols) throws ParseException { @@ -6371,15 +6308,15 @@ LexicalUnitImpl result = null; // TODO required by original parser but not used by Vaadin? final public void _parseRule() throws ParseException { String ret = null; - label_172: + label_169: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[259] = jj_gen; - break label_172; + jj_la1[253] = jj_gen; + break label_169; } jj_consume_token(S); } @@ -6414,7 +6351,7 @@ LexicalUnitImpl result = null; fontFace(); break; default: - jj_la1[260] = jj_gen; + jj_la1[254] = jj_gen; ret = skipStatement(); if ((ret == null) || (ret.length() == 0)) { {if (true) return;} @@ -6429,15 +6366,15 @@ LexicalUnitImpl result = null; } final public void _parseImportRule() throws ParseException { - label_173: + label_170: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[261] = jj_gen; - break label_173; + jj_la1[255] = jj_gen; + break label_170; } jj_consume_token(S); } @@ -6445,15 +6382,15 @@ LexicalUnitImpl result = null; } final public void _parseMediaRule() throws ParseException { - label_174: + label_171: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[262] = jj_gen; - break label_174; + jj_la1[256] = jj_gen; + break label_171; } jj_consume_token(S); } @@ -6461,15 +6398,15 @@ LexicalUnitImpl result = null; } final public void _parseDeclarationBlock() throws ParseException { - label_175: + label_172: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[263] = jj_gen; - break label_175; + jj_la1[257] = jj_gen; + break label_172; } jj_consume_token(S); } @@ -6479,29 +6416,29 @@ LexicalUnitImpl result = null; declaration(); break; default: - jj_la1[264] = jj_gen; + jj_la1[258] = jj_gen; ; } - label_176: + label_173: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case SEMICOLON: ; break; default: - jj_la1[265] = jj_gen; - break label_176; + jj_la1[259] = jj_gen; + break label_173; } jj_consume_token(SEMICOLON); - label_177: + label_174: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[266] = jj_gen; - break label_177; + jj_la1[260] = jj_gen; + break label_174; } jj_consume_token(S); } @@ -6511,7 +6448,7 @@ LexicalUnitImpl result = null; declaration(); break; default: - jj_la1[267] = jj_gen; + jj_la1[261] = jj_gen; ; } } @@ -6520,15 +6457,15 @@ LexicalUnitImpl result = null; final public ArrayList<String> _parseSelectors() throws ParseException { ArrayList<String> p = null; try { - label_178: + label_175: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case S: ; break; default: - jj_la1[268] = jj_gen; - break label_178; + jj_la1[262] = jj_gen; + break label_175; } jj_consume_token(S); } @@ -6610,7 +6547,29 @@ LexicalUnitImpl result = null; finally { jj_save(8, xla); } } - private boolean jj_3R_200() { + private boolean jj_3R_212() { + if (jj_3R_211()) return true; + return false; + } + + private boolean jj_3R_211() { + Token xsp; + xsp = jj_scanpos; + if (jj_scan_token(18)) { + jj_scanpos = xsp; + if (jj_scan_token(22)) { + jj_scanpos = xsp; + if (jj_scan_token(23)) return true; + } + } + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_194() { if (jj_scan_token(VARIABLE)) return true; Token xsp; while (true) { @@ -6625,94 +6584,72 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_218() { - if (jj_3R_217()) return true; - return false; - } - - private boolean jj_3R_182() { + private boolean jj_3R_191() { + if (jj_scan_token(S)) return true; Token xsp; xsp = jj_scanpos; - if (jj_3R_200()) jj_scanpos = xsp; - if (jj_scan_token(CONTAINS)) return true; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { jj_scanpos = xsp; break; } - } - if (true) { jj_la = 0; jj_scanpos = jj_lastpos; return false;} + if (jj_3R_212()) jj_scanpos = xsp; return false; } - private boolean jj_3R_217() { + private boolean jj_3R_179() { Token xsp; xsp = jj_scanpos; - if (jj_scan_token(18)) { - jj_scanpos = xsp; - if (jj_scan_token(22)) { - jj_scanpos = xsp; - if (jj_scan_token(23)) return true; - } - } + if (jj_3R_194()) jj_scanpos = xsp; + if (jj_scan_token(CONTAINS)) return true; while (true) { xsp = jj_scanpos; if (jj_scan_token(1)) { jj_scanpos = xsp; break; } } + if (true) { jj_la = 0; jj_scanpos = jj_lastpos; return false;} return false; } - private boolean jj_3R_179() { - if (jj_3R_189()) return true; + private boolean jj_3R_176() { + if (jj_3R_186()) return true; if (jj_scan_token(COLON)) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_scan_token(1)) { jj_scanpos = xsp; break; } } - if (jj_3R_190()) return true; + if (jj_3R_187()) return true; xsp = jj_scanpos; - if (jj_3R_191()) jj_scanpos = xsp; - if (jj_3R_192()) return true; + if (jj_3R_188()) jj_scanpos = xsp; + if (jj_3R_189()) return true; while (true) { xsp = jj_scanpos; - if (jj_3R_192()) { jj_scanpos = xsp; break; } + if (jj_3R_189()) { jj_scanpos = xsp; break; } } return false; } - private boolean jj_3R_194() { - if (jj_scan_token(S)) return true; - Token xsp; - xsp = jj_scanpos; - if (jj_3R_218()) jj_scanpos = xsp; - return false; - } - - private boolean jj_3R_193() { - if (jj_3R_217()) return true; + private boolean jj_3R_190() { + if (jj_3R_211()) return true; return false; } - private boolean jj_3R_180() { + private boolean jj_3R_177() { Token xsp; xsp = jj_scanpos; - if (jj_3R_193()) { + if (jj_3R_190()) { jj_scanpos = xsp; - if (jj_3R_194()) return true; + if (jj_3R_191()) return true; } return false; } - private boolean jj_3R_220() { + private boolean jj_3R_262() { if (jj_scan_token(HASH)) return true; return false; } - private boolean jj_3R_290() { + private boolean jj_3R_279() { if (jj_scan_token(IDENT)) return true; return false; } - private boolean jj_3R_291() { + private boolean jj_3R_280() { if (jj_scan_token(FUNCTION)) return true; Token xsp; while (true) { @@ -6724,46 +6661,46 @@ LexicalUnitImpl result = null; } private boolean jj_3_7() { - if (jj_3R_186()) return true; + if (jj_3R_183()) return true; return false; } - private boolean jj_3R_289() { + private boolean jj_3R_278() { if (jj_scan_token(COLON)) return true; return false; } - private boolean jj_3R_207() { + private boolean jj_3R_201() { if (jj_scan_token(LBRACE)) return true; return false; } - private boolean jj_3R_222() { + private boolean jj_3R_265() { if (jj_scan_token(COLON)) return true; Token xsp; xsp = jj_scanpos; - if (jj_3R_289()) jj_scanpos = xsp; + if (jj_3R_278()) jj_scanpos = xsp; xsp = jj_scanpos; - if (jj_3R_290()) { + if (jj_3R_279()) { jj_scanpos = xsp; - if (jj_3R_291()) return true; + if (jj_3R_280()) return true; } return false; } - private boolean jj_3R_206() { - if (jj_3R_190()) return true; + private boolean jj_3R_200() { + if (jj_3R_187()) return true; return false; } private boolean jj_3_6() { - if (jj_3R_185()) return true; + if (jj_3R_182()) return true; if (jj_scan_token(LBRACE)) return true; return false; } - private boolean jj_3R_186() { - if (jj_3R_205()) return true; + private boolean jj_3R_183() { + if (jj_3R_199()) return true; if (jj_scan_token(COLON)) return true; Token xsp; while (true) { @@ -6771,24 +6708,24 @@ LexicalUnitImpl result = null; if (jj_scan_token(1)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_3R_206()) { + if (jj_3R_200()) { jj_scanpos = xsp; - if (jj_3R_207()) return true; + if (jj_3R_201()) return true; } return false; } - private boolean jj_3R_269() { - if (jj_3R_190()) return true; + private boolean jj_3R_268() { + if (jj_3R_187()) return true; return false; } - private boolean jj_3R_310() { + private boolean jj_3R_290() { if (jj_scan_token(STRING)) return true; return false; } - private boolean jj_3R_259() { + private boolean jj_3R_254() { if (jj_scan_token(FUNCTION)) return true; Token xsp; while (true) { @@ -6796,65 +6733,65 @@ LexicalUnitImpl result = null; if (jj_scan_token(1)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_3R_269()) jj_scanpos = xsp; + if (jj_3R_268()) jj_scanpos = xsp; if (jj_scan_token(RPARAN)) return true; return false; } - private boolean jj_3R_308() { + private boolean jj_3R_288() { if (jj_scan_token(STARMATCH)) return true; return false; } - private boolean jj_3R_309() { - if (jj_scan_token(IDENT)) return true; + private boolean jj_3R_287() { + if (jj_scan_token(DOLLARMATCH)) return true; return false; } - private boolean jj_3R_307() { - if (jj_scan_token(DOLLARMATCH)) return true; + private boolean jj_3R_289() { + if (jj_scan_token(IDENT)) return true; return false; } - private boolean jj_3R_306() { + private boolean jj_3R_286() { if (jj_scan_token(CARETMATCH)) return true; return false; } - private boolean jj_3R_305() { + private boolean jj_3R_285() { if (jj_scan_token(DASHMATCH)) return true; return false; } - private boolean jj_3R_304() { + private boolean jj_3R_284() { if (jj_scan_token(INCLUDES)) return true; return false; } - private boolean jj_3R_271() { + private boolean jj_3R_270() { if (jj_scan_token(INTERPOLATION)) return true; return false; } - private boolean jj_3R_303() { + private boolean jj_3R_283() { if (jj_scan_token(EQ)) return true; return false; } - private boolean jj_3R_296() { + private boolean jj_3R_277() { Token xsp; xsp = jj_scanpos; - if (jj_3R_303()) { + if (jj_3R_283()) { jj_scanpos = xsp; - if (jj_3R_304()) { + if (jj_3R_284()) { jj_scanpos = xsp; - if (jj_3R_305()) { + if (jj_3R_285()) { jj_scanpos = xsp; - if (jj_3R_306()) { + if (jj_3R_286()) { jj_scanpos = xsp; - if (jj_3R_307()) { + if (jj_3R_287()) { jj_scanpos = xsp; - if (jj_3R_308()) return true; + if (jj_3R_288()) return true; } } } @@ -6865,9 +6802,9 @@ LexicalUnitImpl result = null; if (jj_scan_token(1)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_3R_309()) { + if (jj_3R_289()) { jj_scanpos = xsp; - if (jj_3R_310()) return true; + if (jj_3R_290()) return true; } while (true) { xsp = jj_scanpos; @@ -6876,22 +6813,22 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_250() { - if (jj_3R_263()) return true; + private boolean jj_3R_241() { + if (jj_3R_258()) return true; return false; } - private boolean jj_3R_249() { - if (jj_3R_262()) return true; + private boolean jj_3R_240() { + if (jj_3R_257()) return true; return false; } - private boolean jj_3R_248() { - if (jj_3R_261()) return true; + private boolean jj_3R_239() { + if (jj_3R_256()) return true; return false; } - private boolean jj_3R_223() { + private boolean jj_3R_264() { if (jj_scan_token(LBRACKET)) return true; Token xsp; while (true) { @@ -6904,65 +6841,65 @@ LexicalUnitImpl result = null; if (jj_scan_token(1)) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; - if (jj_3R_296()) jj_scanpos = xsp; + if (jj_3R_277()) jj_scanpos = xsp; if (jj_scan_token(RBRACKET)) return true; return false; } - private boolean jj_3R_302() { + private boolean jj_3R_282() { if (jj_scan_token(INTERPOLATION)) return true; return false; } - private boolean jj_3R_257() { + private boolean jj_3R_248() { if (jj_scan_token(PARENT)) return true; return false; } - private boolean jj_3R_256() { + private boolean jj_3R_247() { if (jj_scan_token(ANY)) return true; return false; } - private boolean jj_3R_266() { + private boolean jj_3R_261() { Token xsp; xsp = jj_scanpos; - if (jj_3R_270()) { + if (jj_3R_269()) { jj_scanpos = xsp; - if (jj_3R_271()) return true; + if (jj_3R_270()) return true; } return false; } - private boolean jj_3R_270() { + private boolean jj_3R_269() { if (jj_scan_token(IDENT)) return true; return false; } - private boolean jj_3R_219() { + private boolean jj_3R_213() { Token xsp; xsp = jj_scanpos; - if (jj_3R_255()) { + if (jj_3R_246()) { jj_scanpos = xsp; - if (jj_3R_256()) { + if (jj_3R_247()) { jj_scanpos = xsp; - if (jj_3R_257()) return true; + if (jj_3R_248()) return true; } } return false; } - private boolean jj_3R_255() { + private boolean jj_3R_246() { Token xsp; - if (jj_3R_266()) return true; + if (jj_3R_261()) return true; while (true) { xsp = jj_scanpos; - if (jj_3R_266()) { jj_scanpos = xsp; break; } + if (jj_3R_261()) { jj_scanpos = xsp; break; } } return false; } - private boolean jj_3R_183() { + private boolean jj_3R_180() { if (jj_scan_token(COMMA)) return true; Token xsp; while (true) { @@ -6972,30 +6909,30 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_301() { - if (jj_scan_token(IDENT)) return true; - return false; - } - - private boolean jj_3R_284() { + private boolean jj_3R_276() { Token xsp; xsp = jj_scanpos; - if (jj_3R_301()) { + if (jj_3R_281()) { jj_scanpos = xsp; - if (jj_3R_302()) return true; + if (jj_3R_282()) return true; } return false; } - private boolean jj_3R_260() { + private boolean jj_3R_281() { + if (jj_scan_token(IDENT)) return true; + return false; + } + + private boolean jj_3R_255() { if (jj_scan_token(DOT)) return true; return false; } - private boolean jj_3R_247() { + private boolean jj_3R_238() { Token xsp; xsp = jj_scanpos; - if (jj_3R_260()) jj_scanpos = xsp; + if (jj_3R_255()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(72)) { jj_scanpos = xsp; @@ -7013,49 +6950,44 @@ LexicalUnitImpl result = null; private boolean jj_3_5() { Token xsp; xsp = jj_scanpos; - if (jj_3R_183()) jj_scanpos = xsp; - if (jj_3R_184()) return true; + if (jj_3R_180()) jj_scanpos = xsp; + if (jj_3R_181()) return true; return false; } - private boolean jj_3R_300() { - if (jj_3R_222()) return true; + private boolean jj_3R_237() { + if (jj_scan_token(STRING)) return true; return false; } - private boolean jj_3R_246() { - if (jj_scan_token(STRING)) return true; + private boolean jj_3R_236() { + if (jj_3R_254()) return true; return false; } - private boolean jj_3R_221() { + private boolean jj_3R_263() { if (jj_scan_token(DOT)) return true; Token xsp; - if (jj_3R_284()) return true; + if (jj_3R_276()) return true; while (true) { xsp = jj_scanpos; - if (jj_3R_284()) { jj_scanpos = xsp; break; } + if (jj_3R_276()) { jj_scanpos = xsp; break; } } return false; } - private boolean jj_3R_245() { - if (jj_3R_259()) return true; - return false; - } - - private boolean jj_3R_202() { + private boolean jj_3R_196() { Token xsp; xsp = jj_scanpos; - if (jj_3R_246()) { + if (jj_3R_237()) { jj_scanpos = xsp; - if (jj_3R_247()) { + if (jj_3R_238()) { jj_scanpos = xsp; - if (jj_3R_248()) { + if (jj_3R_239()) { jj_scanpos = xsp; - if (jj_3R_249()) { + if (jj_3R_240()) { jj_scanpos = xsp; - if (jj_3R_250()) return true; + if (jj_3R_241()) return true; } } } @@ -7063,363 +6995,247 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_298() { - if (jj_3R_221()) return true; - return false; - } - - private boolean jj_3R_293() { - if (jj_3R_221()) return true; - return false; - } - - private boolean jj_3R_295() { - if (jj_3R_222()) return true; + private boolean jj_3R_252() { + if (jj_3R_265()) return true; return false; } - private boolean jj_3R_283() { - if (jj_3R_222()) return true; + private boolean jj_3R_275() { + if (jj_3R_265()) return true; return false; } - private boolean jj_3R_286() { - if (jj_3R_221()) return true; + private boolean jj_3R_235() { + if (jj_scan_token(DIMEN)) return true; return false; } - private boolean jj_3R_288() { - if (jj_3R_222()) return true; + private boolean jj_3R_234() { + if (jj_scan_token(KHZ)) return true; return false; } - private boolean jj_3R_244() { - if (jj_scan_token(DIMEN)) return true; + private boolean jj_3R_273() { + if (jj_3R_263()) return true; return false; } - private boolean jj_3R_243() { - if (jj_scan_token(KHZ)) return true; + private boolean jj_3R_250() { + if (jj_3R_263()) return true; return false; } - private boolean jj_3R_299() { - if (jj_3R_223()) return true; + private boolean jj_3R_233() { + if (jj_scan_token(HZ)) return true; return false; } - private boolean jj_3R_242() { - if (jj_scan_token(HZ)) return true; + private boolean jj_3R_232() { + if (jj_scan_token(MS)) return true; return false; } - private boolean jj_3R_276() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_297()) { - jj_scanpos = xsp; - if (jj_3R_298()) { - jj_scanpos = xsp; - if (jj_3R_299()) { - jj_scanpos = xsp; - if (jj_3R_300()) return true; - } - } - } + private boolean jj_3R_231() { + if (jj_scan_token(SECOND)) return true; return false; } - private boolean jj_3R_297() { - if (jj_3R_220()) return true; + private boolean jj_3R_230() { + if (jj_scan_token(GRAD)) return true; return false; } - private boolean jj_3R_275() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_292()) { - jj_scanpos = xsp; - if (jj_3R_293()) { - jj_scanpos = xsp; - if (jj_3R_294()) { - jj_scanpos = xsp; - if (jj_3R_295()) return true; - } - } - } + private boolean jj_3R_229() { + if (jj_scan_token(RAD)) return true; return false; } - private boolean jj_3R_292() { - if (jj_3R_220()) return true; + private boolean jj_3R_251() { + if (jj_3R_264()) return true; return false; } - private boolean jj_3R_241() { - if (jj_scan_token(MS)) return true; + private boolean jj_3R_274() { + if (jj_3R_264()) return true; return false; } - private boolean jj_3R_280() { - if (jj_3R_222()) return true; + private boolean jj_3R_228() { + if (jj_scan_token(DEG)) return true; return false; } - private boolean jj_3R_274() { + private boolean jj_3R_271() { Token xsp; xsp = jj_scanpos; - if (jj_3R_285()) { + if (jj_3R_272()) { jj_scanpos = xsp; - if (jj_3R_286()) { + if (jj_3R_273()) { jj_scanpos = xsp; - if (jj_3R_287()) { + if (jj_3R_274()) { jj_scanpos = xsp; - if (jj_3R_288()) return true; + if (jj_3R_275()) return true; } } } return false; } - private boolean jj_3R_285() { - if (jj_3R_220()) return true; - return false; - } - - private boolean jj_3R_294() { - if (jj_3R_223()) return true; - return false; - } - - private boolean jj_3R_282() { - if (jj_3R_223()) return true; - return false; - } - - private boolean jj_3R_240() { - if (jj_scan_token(SECOND)) return true; + private boolean jj_3R_272() { + if (jj_3R_262()) return true; return false; } - private boolean jj_3R_287() { - if (jj_3R_223()) return true; + private boolean jj_3R_227() { + if (jj_scan_token(EXS)) return true; return false; } - private boolean jj_3R_273() { + private boolean jj_3R_214() { Token xsp; xsp = jj_scanpos; - if (jj_3R_281()) { + if (jj_3R_249()) { + jj_scanpos = xsp; + if (jj_3R_250()) { jj_scanpos = xsp; - if (jj_3R_282()) { + if (jj_3R_251()) { jj_scanpos = xsp; - if (jj_3R_283()) return true; + if (jj_3R_252()) return true; + } } } return false; } - private boolean jj_3R_278() { - if (jj_3R_221()) return true; - return false; - } - - private boolean jj_3R_281() { - if (jj_3R_221()) return true; - return false; - } - - private boolean jj_3R_239() { - if (jj_scan_token(GRAD)) return true; - return false; - } - - private boolean jj_3R_238() { - if (jj_scan_token(RAD)) return true; - return false; - } - - private boolean jj_3R_237() { - if (jj_scan_token(DEG)) return true; - return false; - } - - private boolean jj_3R_236() { - if (jj_scan_token(EXS)) return true; - return false; - } - - private boolean jj_3R_199() { - if (jj_3R_223()) return true; - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_3R_276()) { jj_scanpos = xsp; break; } - } + private boolean jj_3R_249() { + if (jj_3R_262()) return true; return false; } - private boolean jj_3R_235() { + private boolean jj_3R_226() { if (jj_scan_token(REM)) return true; return false; } - private boolean jj_3R_198() { - if (jj_3R_222()) return true; + private boolean jj_3R_193() { Token xsp; + if (jj_3R_214()) return true; while (true) { xsp = jj_scanpos; - if (jj_3R_275()) { jj_scanpos = xsp; break; } + if (jj_3R_214()) { jj_scanpos = xsp; break; } } return false; } - private boolean jj_3R_279() { - if (jj_3R_223()) return true; - return false; - } - - private boolean jj_3R_234() { + private boolean jj_3R_225() { if (jj_scan_token(LEM)) return true; return false; } - private boolean jj_3R_197() { - if (jj_3R_221()) return true; + private boolean jj_3R_192() { + if (jj_3R_213()) return true; Token xsp; while (true) { xsp = jj_scanpos; - if (jj_3R_274()) { jj_scanpos = xsp; break; } + if (jj_3R_271()) { jj_scanpos = xsp; break; } } return false; } - private boolean jj_3R_196() { - if (jj_3R_220()) return true; - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_3R_273()) { jj_scanpos = xsp; break; } - } + private boolean jj_3R_224() { + if (jj_scan_token(EMS)) return true; return false; } - private boolean jj_3R_272() { + private boolean jj_3R_178() { Token xsp; xsp = jj_scanpos; - if (jj_3R_277()) { - jj_scanpos = xsp; - if (jj_3R_278()) { - jj_scanpos = xsp; - if (jj_3R_279()) { + if (jj_3R_192()) { jj_scanpos = xsp; - if (jj_3R_280()) return true; - } + if (jj_3R_193()) return true; } - } - return false; - } - - private boolean jj_3R_277() { - if (jj_3R_220()) return true; - return false; - } - - private boolean jj_3R_233() { - if (jj_scan_token(EMS)) return true; return false; } - private boolean jj_3R_232() { + private boolean jj_3R_223() { if (jj_scan_token(PX)) return true; return false; } - private boolean jj_3R_195() { - if (jj_3R_219()) return true; - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_3R_272()) { jj_scanpos = xsp; break; } - } + private boolean jj_3R_243() { + if (jj_3R_211()) return true; + if (jj_3R_178()) return true; return false; } - private boolean jj_3R_231() { + private boolean jj_3R_222() { if (jj_scan_token(IN)) return true; return false; } - private boolean jj_3R_181() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_195()) { - jj_scanpos = xsp; - if (jj_3R_196()) { - jj_scanpos = xsp; - if (jj_3R_197()) { - jj_scanpos = xsp; - if (jj_3R_198()) { - jj_scanpos = xsp; - if (jj_3R_199()) return true; - } - } - } - } - return false; - } - - private boolean jj_3R_230() { + private boolean jj_3R_221() { if (jj_scan_token(PC)) return true; return false; } - private boolean jj_3R_252() { - if (jj_3R_217()) return true; - if (jj_3R_181()) return true; - return false; - } - - private boolean jj_3R_229() { + private boolean jj_3R_220() { if (jj_scan_token(MM)) return true; return false; } - private boolean jj_3R_228() { + private boolean jj_3R_219() { if (jj_scan_token(CM)) return true; return false; } - private boolean jj_3R_227() { + private boolean jj_3R_218() { if (jj_scan_token(PT)) return true; return false; } - private boolean jj_3R_226() { + private boolean jj_3R_217() { if (jj_scan_token(PERCENTAGE)) return true; return false; } - private boolean jj_3R_209() { - if (jj_3R_254()) return true; + private boolean jj_3R_203() { + if (jj_3R_245()) return true; return false; } - private boolean jj_3R_225() { + private boolean jj_3R_216() { if (jj_scan_token(NUMBER)) return true; return false; } - private boolean jj_3R_224() { - if (jj_3R_258()) return true; + private boolean jj_3R_215() { + if (jj_3R_253()) return true; return false; } - private boolean jj_3R_201() { + private boolean jj_3R_195() { Token xsp; xsp = jj_scanpos; - if (jj_3R_224()) jj_scanpos = xsp; + if (jj_3R_215()) jj_scanpos = xsp; xsp = jj_scanpos; + if (jj_3R_216()) { + jj_scanpos = xsp; + if (jj_3R_217()) { + jj_scanpos = xsp; + if (jj_3R_218()) { + jj_scanpos = xsp; + if (jj_3R_219()) { + jj_scanpos = xsp; + if (jj_3R_220()) { + jj_scanpos = xsp; + if (jj_3R_221()) { + jj_scanpos = xsp; + if (jj_3R_222()) { + jj_scanpos = xsp; + if (jj_3R_223()) { + jj_scanpos = xsp; + if (jj_3R_224()) { + jj_scanpos = xsp; if (jj_3R_225()) { jj_scanpos = xsp; if (jj_3R_226()) { @@ -7442,25 +7258,7 @@ LexicalUnitImpl result = null; jj_scanpos = xsp; if (jj_3R_235()) { jj_scanpos = xsp; - if (jj_3R_236()) { - jj_scanpos = xsp; - if (jj_3R_237()) { - jj_scanpos = xsp; - if (jj_3R_238()) { - jj_scanpos = xsp; - if (jj_3R_239()) { - jj_scanpos = xsp; - if (jj_3R_240()) { - jj_scanpos = xsp; - if (jj_3R_241()) { - jj_scanpos = xsp; - if (jj_3R_242()) { - jj_scanpos = xsp; - if (jj_3R_243()) { - jj_scanpos = xsp; - if (jj_3R_244()) { - jj_scanpos = xsp; - if (jj_3R_245()) return true; + if (jj_3R_236()) return true; } } } @@ -7484,12 +7282,12 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_184() { + private boolean jj_3R_181() { Token xsp; xsp = jj_scanpos; - if (jj_3R_201()) { + if (jj_3R_195()) { jj_scanpos = xsp; - if (jj_3R_202()) return true; + if (jj_3R_196()) return true; } while (true) { xsp = jj_scanpos; @@ -7498,49 +7296,49 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_261() { + private boolean jj_3R_256() { if (jj_scan_token(HASH)) return true; return false; } private boolean jj_3_2() { - if (jj_3R_180()) return true; - if (jj_3R_181()) return true; + if (jj_3R_177()) return true; + if (jj_3R_178()) return true; return false; } - private boolean jj_3R_254() { - if (jj_3R_189()) return true; - return false; - } - - private boolean jj_3R_262() { - if (jj_scan_token(URL)) return true; - return false; - } - - private boolean jj_3R_204() { + private boolean jj_3R_198() { if (jj_scan_token(COMMA)) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_scan_token(1)) { jj_scanpos = xsp; break; } } - if (jj_3R_203()) return true; + if (jj_3R_197()) return true; return false; } - private boolean jj_3R_251() { - if (jj_3R_181()) return true; + private boolean jj_3R_242() { + if (jj_3R_178()) return true; return false; } - private boolean jj_3R_203() { + private boolean jj_3R_245() { + if (jj_3R_186()) return true; + return false; + } + + private boolean jj_3R_257() { + if (jj_scan_token(URL)) return true; + return false; + } + + private boolean jj_3R_197() { Token xsp; xsp = jj_scanpos; - if (jj_3R_251()) { + if (jj_3R_242()) { jj_scanpos = xsp; - if (jj_3R_252()) return true; + if (jj_3R_243()) return true; } while (true) { xsp = jj_scanpos; @@ -7553,62 +7351,62 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_208() { - if (jj_3R_184()) return true; + private boolean jj_3R_202() { + if (jj_3R_181()) return true; return false; } - private boolean jj_3R_187() { + private boolean jj_3R_184() { Token xsp; xsp = jj_scanpos; - if (jj_3R_208()) { + if (jj_3R_202()) { jj_scanpos = xsp; - if (jj_3R_209()) return true; + if (jj_3R_203()) return true; } return false; } private boolean jj_3_9() { - if (jj_3R_188()) return true; + if (jj_3R_185()) return true; return false; } - private boolean jj_3R_268() { + private boolean jj_3R_182() { + if (jj_3R_197()) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_3R_198()) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_267() { if (jj_scan_token(PLUS)) return true; return false; } - private boolean jj_3R_258() { + private boolean jj_3R_253() { Token xsp; xsp = jj_scanpos; - if (jj_3R_267()) { + if (jj_3R_266()) { jj_scanpos = xsp; - if (jj_3R_268()) return true; + if (jj_3R_267()) return true; } return false; } - private boolean jj_3R_267() { + private boolean jj_3R_266() { if (jj_scan_token(MINUS)) return true; return false; } private boolean jj_3_1() { - if (jj_3R_179()) return true; + if (jj_3R_176()) return true; return false; } - private boolean jj_3R_185() { - if (jj_3R_203()) return true; - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_3R_204()) { jj_scanpos = xsp; break; } - } - return false; - } - - private boolean jj_3R_263() { + private boolean jj_3R_258() { if (jj_scan_token(UNICODERANGE)) return true; return false; } @@ -7617,17 +7415,17 @@ LexicalUnitImpl result = null; Token xsp; xsp = jj_scanpos; if (jj_3_9()) jj_scanpos = xsp; - if (jj_3R_187()) return true; + if (jj_3R_184()) return true; return false; } private boolean jj_3_4() { - if (jj_3R_182()) return true; + if (jj_3R_179()) return true; return false; } - private boolean jj_3R_190() { - if (jj_3R_187()) return true; + private boolean jj_3R_187() { + if (jj_3R_184()) return true; Token xsp; while (true) { xsp = jj_scanpos; @@ -7636,7 +7434,7 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_215() { + private boolean jj_3R_209() { if (jj_scan_token(MINUS)) return true; Token xsp; if (jj_scan_token(1)) return true; @@ -7647,7 +7445,12 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_214() { + private boolean jj_3R_260() { + if (jj_scan_token(INTERPOLATION)) return true; + return false; + } + + private boolean jj_3R_208() { if (jj_scan_token(PLUS)) return true; Token xsp; if (jj_scan_token(1)) return true; @@ -7658,17 +7461,12 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_265() { - if (jj_scan_token(INTERPOLATION)) return true; - return false; - } - private boolean jj_3_3() { - if (jj_3R_179()) return true; + if (jj_3R_176()) return true; return false; } - private boolean jj_3R_213() { + private boolean jj_3R_207() { if (jj_scan_token(MOD)) return true; Token xsp; while (true) { @@ -7678,7 +7476,7 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_212() { + private boolean jj_3R_206() { if (jj_scan_token(ANY)) return true; Token xsp; while (true) { @@ -7688,7 +7486,7 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_211() { + private boolean jj_3R_205() { if (jj_scan_token(DIV)) return true; Token xsp; while (true) { @@ -7698,7 +7496,17 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_192() { + private boolean jj_3R_186() { + if (jj_scan_token(VARIABLE)) return true; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_scan_token(1)) { jj_scanpos = xsp; break; } + } + return false; + } + + private boolean jj_3R_189() { if (jj_scan_token(SEMICOLON)) return true; Token xsp; while (true) { @@ -7708,7 +7516,7 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_210() { + private boolean jj_3R_204() { if (jj_scan_token(COMMA)) return true; Token xsp; while (true) { @@ -7718,20 +7526,20 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_188() { + private boolean jj_3R_185() { Token xsp; xsp = jj_scanpos; - if (jj_3R_210()) { + if (jj_3R_204()) { jj_scanpos = xsp; - if (jj_3R_211()) { + if (jj_3R_205()) { jj_scanpos = xsp; - if (jj_3R_212()) { + if (jj_3R_206()) { jj_scanpos = xsp; - if (jj_3R_213()) { + if (jj_3R_207()) { jj_scanpos = xsp; - if (jj_3R_214()) { + if (jj_3R_208()) { jj_scanpos = xsp; - if (jj_3R_215()) return true; + if (jj_3R_209()) return true; } } } @@ -7740,37 +7548,27 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_189() { - if (jj_scan_token(VARIABLE)) return true; - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_scan_token(1)) { jj_scanpos = xsp; break; } - } - return false; - } - - private boolean jj_3R_253() { + private boolean jj_3R_244() { Token xsp; xsp = jj_scanpos; - if (jj_3R_264()) { + if (jj_3R_259()) { jj_scanpos = xsp; - if (jj_3R_265()) return true; + if (jj_3R_260()) return true; } return false; } - private boolean jj_3R_264() { + private boolean jj_3R_259() { if (jj_scan_token(IDENT)) return true; return false; } - private boolean jj_3R_205() { + private boolean jj_3R_199() { Token xsp; - if (jj_3R_253()) return true; + if (jj_3R_244()) return true; while (true) { xsp = jj_scanpos; - if (jj_3R_253()) { jj_scanpos = xsp; break; } + if (jj_3R_244()) { jj_scanpos = xsp; break; } } while (true) { xsp = jj_scanpos; @@ -7779,7 +7577,7 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_216() { + private boolean jj_3R_210() { if (jj_scan_token(GUARDED_SYM)) return true; Token xsp; while (true) { @@ -7789,8 +7587,8 @@ LexicalUnitImpl result = null; return false; } - private boolean jj_3R_191() { - if (jj_3R_216()) return true; + private boolean jj_3R_188() { + if (jj_3R_210()) return true; return false; } @@ -7804,7 +7602,7 @@ LexicalUnitImpl result = null; private Token jj_scanpos, jj_lastpos; private int jj_la; private int jj_gen; - final private int[] jj_la1 = new int[269]; + final private int[] jj_la1 = new int[263]; static private int[] jj_la1_0; static private int[] jj_la1_1; static private int[] jj_la1_2; @@ -7816,16 +7614,16 @@ LexicalUnitImpl result = null; jj_la1_init_3(); } private static void jj_la1_init_0() { - jj_la1_0 = new int[] {0x0,0x302,0x302,0x0,0x300,0x2,0x2,0x2,0xd4c40000,0x0,0x300,0x2,0x300,0x2,0x0,0x2,0x2,0x2,0x0,0x0,0x2,0x2,0x0,0x0,0x2,0x0,0x2,0x100000,0x2,0x0,0x2,0x2,0xd4c40000,0xd4c40000,0x2,0x2,0x2,0xd4fd1500,0xd4fd1500,0x2,0x2,0x2,0x0,0x0,0x2,0x0,0x200000,0x2,0x0,0x2,0x2,0x2,0x2,0x0,0x200000,0x2,0x0,0x2,0x391500,0xc40000,0xc40002,0xc40000,0x2,0x2,0x80120002,0x80120002,0x2,0x0,0x0,0x2,0x2,0x2,0x2,0xd4c40000,0xd4c40000,0x2,0x100000,0x2,0xd4c40000,0x2,0x84000000,0x84000000,0x84000000,0x84000000,0x84000000,0x84000000,0x84000000,0x84000000,0x84000000,0x84000000,0xd4000000,0x0,0x0,0x0,0x0,0x50000000,0x2,0x2,0x3f000,0x2,0x0,0x2,0x3f000,0x0,0x2,0x0,0x2,0x0,0x2,0x200000,0x0,0xd4c40000,0x0,0x134e0002,0x2,0xd4c40000,0xd4c40000,0x2,0x0,0x2,0x134e0002,0x0,0x2,0xd4c40000,0xd4c40000,0x2,0x134e0002,0x2,0x2,0x2,0x0,0x2,0xd4c40000,0x2,0x2,0x100000,0x2,0x2,0x2,0x2,0x0,0x2,0xd4c40000,0xd4c40000,0x2,0x100000,0x2,0x0,0x2,0x2,0x100000,0x0,0x0,0x800c0000,0x2,0x0,0x100000,0x2,0x800c0000,0x2,0x0,0x800c0000,0x2,0x2,0x0,0x200400,0x2,0x200000,0x2,0xd4c40000,0xd4c40000,0x2,0x2,0x2,0x0,0x2,0x0,0x2,0x2,0x2,0x100000,0x2,0x2,0x2,0x2,0x2,0x0,0x2,0x2,0x2,0x100000,0x2,0x2,0x2,0x0,0x2,0x2,0x2,0x100000,0x2,0x2,0x0,0x2,0x0,0x2,0x2,0x2,0x100000,0x0,0x2,0x2,0x0,0x2,0x2,0x2,0x200000,0x2,0x2,0x200000,0x2,0x2,0x0,0x200000,0x2,0x0,0x2,0x0,0xd4c40000,0x2,0x0,0x2,0x0,0x200000,0x2,0x0,0x2,0x800c0400,0x2,0x0,0x2,0x2,0x2,0x2,0x2,0x2,0x2,0x2,0x321c0000,0xc0000,0x800c0000,0xc0000,0x0,0x80000000,0x0,0x80000000,0x800c0000,0x2,0x2,0x800c0000,0x2,0xd4c40000,0x2,0x2,0x2,0x0,0x200000,0x2,0x0,0x2,}; + jj_la1_0 = new int[] {0x0,0x302,0x302,0x0,0x300,0x2,0x2,0x2,0xd4c40000,0x0,0x300,0x2,0x300,0x2,0x0,0x2,0x2,0x2,0x0,0x0,0x2,0x2,0x0,0x0,0x2,0x0,0x2,0x100000,0x2,0x0,0x2,0x2,0xd4c40000,0xd4c40000,0x2,0x2,0x2,0xd4fd1500,0x2,0xd4fd1500,0x2,0x2,0x0,0x0,0x2,0x0,0x200000,0x2,0x0,0x2,0x2,0x2,0x2,0x0,0x200000,0x2,0x0,0x2,0x391500,0xc40000,0xc40002,0xc40000,0x2,0x2,0x80120002,0x80120002,0x2,0x0,0x0,0x2,0x2,0x2,0x2,0xd4c40000,0xd4c40000,0x2,0x100000,0x2,0xd4c40000,0x2,0x84000000,0x84000000,0x84000000,0x84000000,0xd4000000,0x0,0x0,0x0,0x0,0x50000000,0x2,0x2,0x3f000,0x2,0x0,0x2,0x3f000,0x0,0x2,0x0,0x2,0x0,0x2,0x200000,0x0,0xd4c40000,0x0,0x134e0002,0x2,0xd4c40000,0xd4c40000,0x2,0x0,0x2,0x134e0002,0x0,0x2,0xd4c40000,0xd4c40000,0x2,0x134e0002,0x2,0x2,0x2,0x0,0x2,0xd4c40000,0x2,0x2,0x100000,0x2,0x2,0x2,0x2,0x0,0x2,0xd4c40000,0xd4c40000,0x2,0x100000,0x2,0x0,0x2,0x2,0x100000,0x0,0x0,0x800c0000,0x2,0x0,0x100000,0x2,0x800c0000,0x2,0x0,0x800c0000,0x2,0x2,0x0,0x200400,0x2,0x200000,0x2,0xd4c40000,0xd4c40000,0x2,0x2,0x2,0x0,0x2,0x0,0x2,0x2,0x2,0x100000,0x2,0x2,0x2,0x2,0x2,0x0,0x2,0x2,0x2,0x100000,0x2,0x2,0x2,0x0,0x2,0x2,0x2,0x100000,0x2,0x2,0x0,0x2,0x0,0x2,0x2,0x2,0x100000,0x0,0x2,0x2,0x0,0x2,0x2,0x2,0x200000,0x2,0x2,0x200000,0x2,0x2,0x0,0x200000,0x2,0x0,0x2,0x0,0xd4c40000,0x2,0x0,0x2,0x0,0x200000,0x2,0x0,0x2,0x800c0400,0x2,0x0,0x2,0x2,0x2,0x2,0x2,0x2,0x2,0x2,0x321c0000,0xc0000,0x800c0000,0xc0000,0x0,0x80000000,0x0,0x80000000,0x800c0000,0x2,0x2,0x800c0000,0x2,0xd4c40000,0x2,0x2,0x2,0x0,0x200000,0x2,0x0,0x2,}; } private static void jj_la1_init_1() { - jj_la1_1 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x566000c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x80,0x0,0x0,0x120000,0x120000,0x0,0x120000,0x0,0x0,0x0,0x120000,0x0,0x0,0x564000c0,0x564000c0,0x0,0x0,0x0,0x60001c0,0x60001c0,0x0,0x0,0x0,0x0,0x40,0x0,0x80,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0x80,0x0,0x0,0x80,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0xc2,0xc2,0x0,0x80,0x80,0x0,0x0,0x0,0x0,0x564000c0,0x564000c0,0x0,0x0,0x0,0xc0,0x0,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x40,0xc0,0x80,0x80,0x80,0x80,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x50000000,0x64000c0,0x50000000,0x3f,0x0,0x564000c0,0x564000c0,0x0,0x80000000,0x0,0x3f,0x0,0x0,0x564000c0,0x564000c0,0x0,0x3f,0x0,0x0,0x0,0x0,0x0,0x564000c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x0,0x564000c0,0x564000c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x40,0x160040,0x0,0x40,0x0,0x0,0x160040,0x0,0x40,0x160000,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0x61200c0,0x61200c0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x6000000,0x0,0x0,0x60000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x0,0x0,0x80,0x0,0x6000000,0xc0,0x0,0x0,0x0,0x80,0x0,0x0,0x80,0x0,0x160000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x160000,0x0,0x0,0x0,0x160000,0x160000,0x160000,0x0,0x0,0x160000,0x0,0x60000c0,0x0,0x0,0x0,0x80,0x0,0x0,0x80,0x0,}; + jj_la1_1 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x566000c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x80,0x0,0x0,0x120000,0x120000,0x0,0x120000,0x0,0x0,0x0,0x120000,0x0,0x0,0x564000c0,0x564000c0,0x0,0x0,0x0,0x60001c0,0x0,0x60001c0,0x0,0x0,0x0,0x40,0x0,0x80,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0x80,0x0,0x0,0x80,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0xc2,0xc2,0x0,0x80,0x80,0x0,0x0,0x0,0x0,0x564000c0,0x564000c0,0x0,0x0,0x0,0xc0,0x0,0x40,0x40,0x40,0x40,0xc0,0x80,0x80,0x80,0x80,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x50000000,0x64000c0,0x50000000,0x3f,0x0,0x564000c0,0x564000c0,0x0,0x80000000,0x0,0x3f,0x0,0x0,0x564000c0,0x564000c0,0x0,0x3f,0x0,0x0,0x0,0x0,0x0,0x564000c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x0,0x564000c0,0x564000c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x40,0x160040,0x0,0x40,0x0,0x0,0x160040,0x0,0x40,0x160000,0x0,0x0,0x80,0x0,0x0,0x0,0x0,0x61200c0,0x61200c0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x6000000,0x0,0x0,0x60000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x0,0x0,0x80,0x0,0x6000000,0xc0,0x0,0x0,0x0,0x80,0x0,0x0,0x80,0x0,0x160000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x160000,0x0,0x0,0x0,0x160000,0x160000,0x160000,0x0,0x0,0x160000,0x0,0x60000c0,0x0,0x0,0x0,0x80,0x0,0x0,0x80,0x0,}; } private static void jj_la1_init_2() { - jj_la1_2 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x1000,0x0,0x0,0x0,0x0,0x880,0x0,0x0,0x0,0x100,0x100,0x0,0x0,0x2008,0x2008,0x0,0x2000,0x0,0x0,0x0,0x2000,0x0,0x0,0x1119,0x1119,0x0,0x0,0x0,0x2b80,0x2b80,0x0,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0x0,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0x2a80,0x0,0x0,0x0,0x0,0x0,0x380,0x380,0x0,0x100,0x100,0x0,0x0,0x0,0x0,0x1119,0x1119,0x0,0x0,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x100,0x100,0x100,0x100,0x100,0x0,0x0,0x0,0x0,0x180,0x0,0x0,0x0,0x0,0x100,0x0,0x40,0x0,0x0,0x0,0x109,0x1000,0x1300,0x0,0x1109,0x1109,0x0,0x0,0x0,0x1300,0x20,0x0,0x1109,0x1109,0x0,0x1300,0x0,0x0,0x0,0x1100,0x0,0x1109,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x1109,0x1109,0x0,0x0,0x0,0x1000,0x0,0x0,0x0,0x1000,0x1000,0xfffffb80,0x0,0x0,0x0,0x0,0xfffffb80,0x0,0x0,0xfffffb80,0x0,0x0,0x1100,0x0,0x0,0x0,0x0,0x2100,0x2100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0xfffffb80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffb80,0x0,0xffffe200,0x0,0x100,0x980,0xffffeb80,0x0,0x0,0xfffffb80,0x0,0x100,0x0,0x0,0x0,0x100,0x0,0x0,0x100,0x0,}; + jj_la1_2 = new int[] {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x1000,0x0,0x0,0x0,0x0,0x880,0x0,0x0,0x0,0x100,0x100,0x0,0x0,0x2008,0x2008,0x0,0x2000,0x0,0x0,0x0,0x2000,0x0,0x0,0x1119,0x1119,0x0,0x0,0x0,0x2b88,0x0,0x2b88,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0x0,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0x2a80,0x0,0x0,0x0,0x0,0x0,0x380,0x380,0x0,0x100,0x100,0x0,0x0,0x0,0x0,0x1119,0x1119,0x0,0x0,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0x100,0x100,0x100,0x100,0x100,0x100,0x0,0x0,0x0,0x0,0x180,0x0,0x0,0x0,0x0,0x100,0x0,0x40,0x0,0x0,0x0,0x109,0x1000,0x1300,0x0,0x1109,0x1109,0x0,0x0,0x0,0x1300,0x20,0x0,0x1109,0x1109,0x0,0x1300,0x0,0x0,0x0,0x1100,0x0,0x1109,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x1109,0x1109,0x0,0x0,0x0,0x1000,0x0,0x0,0x0,0x1000,0x1000,0xfffffb80,0x0,0x0,0x0,0x0,0xfffffb80,0x0,0x0,0xfffffb80,0x0,0x0,0x1100,0x0,0x0,0x0,0x0,0x2100,0x2100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0x0,0x0,0x100,0x0,0x0,0x100,0x0,0xfffffb80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfffffb80,0x0,0xffffe200,0x0,0x100,0x980,0xffffeb80,0x0,0x0,0xfffffb80,0x0,0x100,0x0,0x0,0x0,0x100,0x0,0x0,0x100,0x0,}; } private static void jj_la1_init_3() { - jj_la1_3 = new int[] {0x8,0x80,0x80,0x2,0x80,0x0,0x0,0x0,0x75,0x0,0x80,0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc5,0xc5,0x0,0x0,0x0,0xc401bf,0xc401bf,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc401be,0x0,0x0,0x0,0x0,0x0,0x400000,0x400000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc7,0xc7,0x0,0x0,0x0,0x1,0x0,0x1,0x1,0x0,0x0,0x1,0x1,0x1,0x1,0x1,0x1,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x400000,0x0,0x0,0x0,0x0,0x0,0x45,0x80,0x200000,0x0,0xe5,0xe5,0x0,0x0,0x0,0x200000,0x0,0x0,0xe5,0xe5,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc5,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x400000,0x0,0xf5,0xf5,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x440001,0x0,0x0,0x0,0x0,0x440001,0x0,0x0,0x440001,0x0,0x0,0x400000,0x0,0x0,0x0,0x0,0x1,0x1,0x0,0x0,0x0,0x380000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0x0,0x440001,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x440001,0x0,0x400000,0x0,0x0,0x40001,0x440001,0x0,0x0,0x440001,0x0,0x37,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,}; + jj_la1_3 = new int[] {0x8,0x80,0x80,0x2,0x80,0x0,0x0,0x0,0x75,0x0,0x80,0x0,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc5,0xc5,0x0,0x0,0x0,0xc401bf,0x0,0xc401bf,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc401be,0x0,0x0,0x0,0x0,0x0,0x400000,0x400000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc7,0xc7,0x0,0x0,0x0,0x1,0x0,0x1,0x1,0x1,0x1,0x1,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x400000,0x0,0x0,0x0,0x0,0x0,0x45,0x80,0x200000,0x0,0xe5,0xe5,0x0,0x0,0x0,0x200000,0x0,0x0,0xe5,0xe5,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc5,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x400000,0x0,0xf5,0xf5,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x440001,0x0,0x0,0x0,0x0,0x440001,0x0,0x0,0x440001,0x0,0x0,0x400000,0x0,0x0,0x0,0x0,0x1,0x1,0x0,0x0,0x0,0x380000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0x0,0x440001,0x0,0x100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x440001,0x0,0x400000,0x0,0x0,0x40001,0x440001,0x0,0x0,0x440001,0x0,0x37,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,}; } final private JJCalls[] jj_2_rtns = new JJCalls[9]; private boolean jj_rescan = false; @@ -7837,7 +7635,7 @@ LexicalUnitImpl result = null; token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 269; i++) jj_la1[i] = -1; + for (int i = 0; i < 263; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } @@ -7847,7 +7645,7 @@ LexicalUnitImpl result = null; token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 269; i++) jj_la1[i] = -1; + for (int i = 0; i < 263; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } @@ -7857,7 +7655,7 @@ LexicalUnitImpl result = null; token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 269; i++) jj_la1[i] = -1; + for (int i = 0; i < 263; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } @@ -7867,7 +7665,7 @@ LexicalUnitImpl result = null; token = new Token(); jj_ntk = -1; jj_gen = 0; - for (int i = 0; i < 269; i++) jj_la1[i] = -1; + for (int i = 0; i < 263; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } @@ -7984,7 +7782,7 @@ LexicalUnitImpl result = null; la1tokens[jj_kind] = true; jj_kind = -1; } - for (int i = 0; i < 269; i++) { + for (int i = 0; i < 263; i++) { if (jj_la1[i] == jj_gen) { for (int j = 0; j < 32; j++) { if ((jj_la1_0[i] & (1<<j)) != 0) { diff --git a/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.jj b/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.jj index 482b8597d3..2b6e809088 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.jj +++ b/theme-compiler/src/com/vaadin/sass/internal/parser/Parser.jj @@ -40,6 +40,8 @@ import java.util.ArrayList; import java.util.Locale; import java.util.Map; import java.util.UUID; +import java.util.logging.Level; +import java.util.logging.Logger; import org.w3c.css.sac.ConditionFactory; import org.w3c.css.sac.Condition; @@ -912,18 +914,24 @@ void media() : <MEDIA_SYM> ( <S> )* mediaStatement(ml) { start = true; documentHandler.startMedia(ml); } - <LBRACE> ( <S> )* ( debuggingDirective() | styleRule() | skipUnknownRule() )* <RBRACE> ( <S> )* + <LBRACE> ( <S> )* ( mediaDirective() )* <RBRACE> ( <S> )* } catch (ParseException e) { reportError(getLocator(), e); skipStatement(); // reportWarningSkipText(getLocator(), skipStatement()); } finally { if (start) { - documentHandler.endMedia(ml); + documentHandler.endMedia(ml); } } } +void mediaDirective() : +{} +{ + debuggingDirective() | styleRule() | skipUnknownRule() | contentDirective() +} + void mediaStatement(MediaListImpl ml) : { Token t; @@ -1272,18 +1280,12 @@ String simple_selector(String selector, char comb) : pseudoElt = null; } { - ( simple_current=element_name() - ( cond=hash(cond) | cond=_class(cond) - | cond=attrib(cond) | cond=pseudo(cond) )* - | cond=hash(cond) ( cond=_class(cond) - | cond=attrib(cond) | cond=pseudo(cond) )* - | cond=_class(cond) ( cond=hash(cond) | cond=_class(cond) - | cond=attrib(cond) | cond=pseudo(cond) )* - | cond=pseudo(cond) ( cond=hash(cond) | cond=_class(cond) - | cond=attrib(cond) | cond=pseudo(cond) )* - | cond=attrib(cond) ( cond=hash(cond) | cond=_class(cond) - | cond=attrib(cond) | cond=pseudo(cond) )* - ) + ( (simple_current=element_name() + ( cond=hash(cond) | cond=_class(cond) + | cond=attrib(cond) | cond=pseudo(cond) )* ) + | ( cond = hash(cond) | cond=_class(cond) + | cond=attrib(cond) | cond=pseudo(cond) )+ + ) { if (simple_current == null) { simple_current = ""; @@ -1445,7 +1447,7 @@ boolean isPseudoElement = false; } } } - | ( n=<FUNCTION> ( <S> )* d=skipStatementUntilRightParan() <RPARAN> + | ( n=<FUNCTION> ( <S> )* d=skipStatementUntilMatchingRightParan() <RPARAN> { // accept anything between function and a right parenthesis String f = convertIdent(n.image); @@ -1994,7 +1996,7 @@ void debugDirective() : { String content = skipStatementUntil(new int[] {SEMICOLON,RBRACE,EOF}); // TODO should evaluate the content expression, call documentHandler.debugDirective() etc. - System.out.println(content); + Logger.getLogger(Parser.class.getName()).log(Level.INFO, content); } try { ";" (<S>)* @@ -2011,7 +2013,7 @@ void warnDirective() : { String content = skipStatementUntil(new int[] {SEMICOLON,RBRACE,EOF}); // TODO should evaluate the content expression, call documentHandler.warnDirective() etc. - System.err.println(content); + Logger.getLogger(Parser.class.getName()).log(Level.SEVERE, content); } try { ";" (<S>)* @@ -2823,9 +2825,35 @@ String skipStatementUntilLeftBrace(){ } JAVACODE -String skipStatementUntilRightParan(){ - int[] rParan = {RPARAN}; - return skipStatementUntil(rParan); +String skipStatementUntilMatchingRightParan(){ + int[] leftTokens = {LPARAN, FUNCTION}; // a FUNCTION also contains "(" + int[] rightTokens = {RPARAN}; + StringBuffer s = new StringBuffer(); + int difference = 1; + Token tok; + while(difference != 0){ + tok = getToken(1); + if(tok.kind == EOF) { + return null; + } + for(int sym : leftTokens){ + if(tok.kind == sym){ + difference++; + } + } + for(int sym : rightTokens){ + if(tok.kind == sym){ + difference--; + } + } + if(difference != 0){ + if (tok.image != null) { + s.append(tok.image); + } + getNextToken(); + } + } + return s.toString().trim(); } JAVACODE diff --git a/theme-compiler/src/com/vaadin/sass/internal/parser/ParserTokenManager.java b/theme-compiler/src/com/vaadin/sass/internal/parser/ParserTokenManager.java index d54ab4fa7e..0db4e4e2f8 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/parser/ParserTokenManager.java +++ b/theme-compiler/src/com/vaadin/sass/internal/parser/ParserTokenManager.java @@ -21,6 +21,8 @@ import java.util.ArrayList; import java.util.Locale; import java.util.Map; import java.util.UUID; +import java.util.logging.Level; +import java.util.logging.Logger; import org.w3c.css.sac.ConditionFactory; import org.w3c.css.sac.Condition; import org.w3c.css.sac.SelectorFactory; diff --git a/theme-compiler/src/com/vaadin/sass/internal/resolver/AbstractResolver.java b/theme-compiler/src/com/vaadin/sass/internal/resolver/AbstractResolver.java new file mode 100644 index 0000000000..5de1f95264 --- /dev/null +++ b/theme-compiler/src/com/vaadin/sass/internal/resolver/AbstractResolver.java @@ -0,0 +1,200 @@ +/* + * Copyright 2000-2013 Vaadin Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ + +package com.vaadin.sass.internal.resolver; + +import java.io.File; +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; +import java.util.Stack; + +import org.w3c.css.sac.InputSource; + +import com.vaadin.sass.internal.ScssStylesheet; + +/** + * Base class for resolvers. Implements functionality for locating paths which + * an import can be relative to and helpers for extracting path information from + * the identifier. + * + * @since 7.2 + * @author Vaadin Ltd + */ +public abstract class AbstractResolver implements ScssStylesheetResolver, + Serializable { + /* + * (non-Javadoc) + * + * @see + * com.vaadin.sass.internal.resolver.ScssStylesheetResolver#resolve(java + * .lang.String) + */ + @Override + public InputSource resolve(ScssStylesheet parentStylesheet, + String identifier) { + // Remove a possible ".scss" suffix + identifier = identifier.replaceFirst(".scss$", ""); + + List<String> potentialParentPaths = getPotentialParentPaths( + parentStylesheet, identifier); + + // remove path from identifier as it has already been added to the + // parent path + if (identifier.contains("/")) { + identifier = identifier.substring(identifier.lastIndexOf("/") + 1); + } + + for (String path : potentialParentPaths) { + InputSource source = normalizeAndResolve(path + "/" + identifier); + + if (source != null) { + return source; + } + + // Try to find partial import (_identifier.scss) + source = normalizeAndResolve(path + "/_" + identifier); + + if (source != null) { + return source; + } + + } + + return normalizeAndResolve(identifier); + } + + /** + * Retrieves the parent paths which should be used while resolving relative + * identifiers. By default uses the parent stylesheet location and a + * possible absolute path in the identifier. + * + * @param parentStylesheet + * The parent stylesheet or null if there is no parent + * @param identifier + * The identifier to be resolved + * @return a list of paths in which to look for the relative import + */ + protected List<String> getPotentialParentPaths( + ScssStylesheet parentStylesheet, String identifier) { + List<String> potentialParents = new ArrayList<String>(); + if (parentStylesheet != null) { + potentialParents.add(extractFullPath( + parentStylesheet.getDirectory(), identifier)); + } + + // Identifier can be a full path so extract the path part also as a + // potential parent + if (identifier.contains("/")) { + potentialParents.add(extractFullPath("", identifier)); + } + + return potentialParents; + + } + + /** + * Extracts the full path from the path combined with the identifier + * + * @param path + * The base path + * @param identifier + * The identifier which may contain a path part, separated by "/" + * from the real identifier + * @return a normalized version of the path where identifier does not + * contain any directory information + */ + protected String extractFullPath(String path, String identifier) { + int lastSlashPosition = identifier.lastIndexOf("/"); + if (lastSlashPosition == -1) { + return path; + } + String identifierPath = identifier.substring(0, lastSlashPosition); + if ("".equals(path)) { + return identifierPath; + } else { + return path + "/" + identifierPath; + } + } + + /** + * Resolves the normalized version of the given identifier + * + * @param identifier + * The identifier to resolve + * @return An input source if the resolver found one or null otherwise + */ + protected InputSource normalizeAndResolve(String identifier) { + String normalized = normalize(identifier); + return resolveNormalized(normalized); + } + + /** + * Resolves the identifier after it has been normalized using + * {@link #normalize(String)}. + * + * @param identifier + * The normalized identifier + * @return an InputSource if the resolver found a source or null otherwise + */ + protected abstract InputSource resolveNormalized(String identifier); + + /** + * Normalizes "." and ".." from the path string where parent path segments + * can be removed. Preserve leading "..". Also ensure / is used instead of \ + * in all places. + * + * @param path + * A relative or absolute file path + * @return The normalized path + */ + protected String normalize(String path) { + + // Ensure only "/" is used, also in Windows + path = path.replace(File.separatorChar, '/'); + + // Split into segments + String[] segments = path.split("/"); + Stack<String> result = new Stack<String>(); + + // Replace '.' and '..' segments + for (int i = 0; i < segments.length; i++) { + if (segments[i].equals(".")) { + // Segments marked '.' are ignored + + } else if (segments[i].equals("..") && !result.isEmpty() + && !result.lastElement().equals("..")) { + // If segment is ".." then remove the previous iff the previous + // element is not a ".." and the result stack is not empty + result.pop(); + } else { + // Other segments are just added to the stack + result.push(segments[i]); + } + } + + // Reconstruct path + StringBuilder pathBuilder = new StringBuilder(); + for (int i = 0; i < result.size(); i++) { + if (i > 0) { + pathBuilder.append("/"); + } + pathBuilder.append(result.get(i)); + } + return pathBuilder.toString(); + } + +} diff --git a/theme-compiler/src/com/vaadin/sass/internal/resolver/ClassloaderResolver.java b/theme-compiler/src/com/vaadin/sass/internal/resolver/ClassloaderResolver.java index 8711a0a3e9..755073bc4c 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/resolver/ClassloaderResolver.java +++ b/theme-compiler/src/com/vaadin/sass/internal/resolver/ClassloaderResolver.java @@ -15,31 +15,19 @@ */ package com.vaadin.sass.internal.resolver; -import java.io.File; import java.io.InputStream; import org.w3c.css.sac.InputSource; -public class ClassloaderResolver implements ScssStylesheetResolver { +public class ClassloaderResolver extends AbstractResolver { @Override - public InputSource resolve(String identifier) { - // identifier should not have .scss, fileName should - String ext = ".scss"; - if (identifier.endsWith(".css")) { - ext = ".css"; - } + public InputSource resolveNormalized(String identifier) { String fileName = identifier; - if (identifier.endsWith(ext)) { - identifier = identifier.substring(0, - identifier.length() - ext.length()); - } else { - fileName = fileName + ext; + if (!fileName.endsWith(".css")) { + fileName += ".scss"; } - // Ensure only "/" is used, also in Windows - fileName = fileName.replace(File.separatorChar, '/'); - // Filename should be a relative path starting with VAADIN/... int vaadinIdx = fileName.lastIndexOf("VAADIN/"); if (vaadinIdx > -1) { diff --git a/theme-compiler/src/com/vaadin/sass/internal/resolver/FilesystemResolver.java b/theme-compiler/src/com/vaadin/sass/internal/resolver/FilesystemResolver.java index 9bb1969ab1..786d0875da 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/resolver/FilesystemResolver.java +++ b/theme-compiler/src/com/vaadin/sass/internal/resolver/FilesystemResolver.java @@ -18,24 +18,46 @@ package com.vaadin.sass.internal.resolver; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.InputStream; +import java.util.List; import org.w3c.css.sac.InputSource; -public class FilesystemResolver implements ScssStylesheetResolver { +import com.vaadin.sass.internal.ScssStylesheet; +public class FilesystemResolver extends AbstractResolver { + + private String[] customPaths = null; + + public FilesystemResolver(String... customPaths) { + this.customPaths = customPaths; + } + + /* + * (non-Javadoc) + * + * @see + * com.vaadin.sass.internal.resolver.AbstractResolver#getPotentialPaths( + * com.vaadin.sass.internal.ScssStylesheet, java.lang.String) + */ @Override - public InputSource resolve(String identifier) { - // identifier should not have .scss, fileName should - String ext = ".scss"; - if (identifier.endsWith(".css")) { - ext = ".css"; + protected List<String> getPotentialParentPaths( + ScssStylesheet parentStyleSheet, String identifier) { + List<String> potentialPaths = super.getPotentialParentPaths( + parentStyleSheet, identifier); + if (customPaths != null) { + for (String path : customPaths) { + potentialPaths.add(extractFullPath(path, identifier)); + } } + + return potentialPaths; + } + + @Override + public InputSource resolveNormalized(String identifier) { String fileName = identifier; - if (identifier.endsWith(ext)) { - identifier = identifier.substring(0, - identifier.length() - ext.length()); - } else { - fileName = fileName + ext; + if (!fileName.endsWith(".css")) { + fileName += ".scss"; } try { diff --git a/theme-compiler/src/com/vaadin/sass/internal/resolver/ScssStylesheetResolver.java b/theme-compiler/src/com/vaadin/sass/internal/resolver/ScssStylesheetResolver.java index 45f10836a3..64b3d10d88 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/resolver/ScssStylesheetResolver.java +++ b/theme-compiler/src/com/vaadin/sass/internal/resolver/ScssStylesheetResolver.java @@ -17,6 +17,8 @@ package com.vaadin.sass.internal.resolver; import org.w3c.css.sac.InputSource; +import com.vaadin.sass.internal.ScssStylesheet; + public interface ScssStylesheetResolver { /** * Called with the "identifier" of a stylesheet that the resolver should try @@ -26,9 +28,12 @@ public interface ScssStylesheetResolver { * stylesheet was found, e.g "runo.scss" might result in a URI like * "VAADIN/themes/runo/runo.scss". * + * @param parentStylesheet + * The parent style sheet * @param identifier * used fo find stylesheet * @return InputSource for stylesheet (with URI set) or null if not found */ - public InputSource resolve(String identifier); + public InputSource resolve(ScssStylesheet parentStylesheet, + String identifier); }
\ No newline at end of file diff --git a/theme-compiler/src/com/vaadin/sass/internal/resolver/VaadinResolver.java b/theme-compiler/src/com/vaadin/sass/internal/resolver/VaadinResolver.java deleted file mode 100644 index fec16a54c8..0000000000 --- a/theme-compiler/src/com/vaadin/sass/internal/resolver/VaadinResolver.java +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Copyright 2000-2013 Vaadin Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may not - * use this file except in compliance with the License. You may obtain a copy of - * the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the - * License for the specific language governing permissions and limitations under - * the License. - */ -package com.vaadin.sass.internal.resolver; - -import java.io.File; -import java.util.Stack; - -import org.w3c.css.sac.InputSource; - -public class VaadinResolver implements ScssStylesheetResolver { - - @Override - public InputSource resolve(String identifier) { - - // Remove extra "." and ".." - identifier = normalize(identifier); - - InputSource source = null; - - // Can we find the scss from the file system? - ScssStylesheetResolver resolver = new FilesystemResolver(); - source = resolver.resolve(identifier); - - if (source == null) { - // How about the classpath? - resolver = new ClassloaderResolver(); - source = resolver.resolve(identifier); - } - - return source; - } - - /** - * Normalizes "." and ".." from the path string where parent path segments - * can be removed. Preserve leading "..". - * - * @param path - * A relative or absolute file path - * @return The normalized path - */ - private static String normalize(String path) { - - // Ensure only "/" is used, also in Windows - path = path.replace(File.separatorChar, '/'); - - // Split into segments - String[] segments = path.split("/"); - Stack<String> result = new Stack<String>(); - - // Replace '.' and '..' segments - for (int i = 0; i < segments.length; i++) { - if (segments[i].equals(".")) { - // Segments marked '.' are ignored - - } else if (segments[i].equals("..") && !result.isEmpty() - && !result.lastElement().equals("..")) { - // If segment is ".." then remove the previous iff the previous - // element is not a ".." and the result stack is not empty - result.pop(); - } else { - // Other segments are just added to the stack - result.push(segments[i]); - } - } - - // Reconstruct path - StringBuilder pathBuilder = new StringBuilder(); - for (int i = 0; i < result.size(); i++) { - if (i > 0) { - pathBuilder.append("/"); - } - pathBuilder.append(result.get(i)); - } - return pathBuilder.toString(); - } - -} diff --git a/theme-compiler/src/com/vaadin/sass/internal/selector/SelectorUtil.java b/theme-compiler/src/com/vaadin/sass/internal/selector/SelectorUtil.java index 744b560116..c1f26f968e 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/selector/SelectorUtil.java +++ b/theme-compiler/src/com/vaadin/sass/internal/selector/SelectorUtil.java @@ -16,6 +16,9 @@ package com.vaadin.sass.internal.selector; +import java.util.logging.Level; +import java.util.logging.Logger; + import org.w3c.css.sac.CombinatorCondition; import org.w3c.css.sac.Condition; import org.w3c.css.sac.ConditionFactory; @@ -115,7 +118,7 @@ public class SelectorUtil { } else if (selector.getSelectorType() == CompositeSelector.SCSS_COMPOSITE_SELECTOR) { return toString((CompositeSelector) selector); } else { - System.out.println("SU !Unknown selector type, type: " + log("SU !Unknown selector type, type: " + selector.getSelectorType() + ", " + selector.toString()); } return ""; @@ -162,8 +165,8 @@ public class SelectorUtil { PseudoClassConditionImpl pseudoClassCondition = (PseudoClassConditionImpl) condition; return ":" + pseudoClassCondition.getValue(); } else { - System.out.println("CU !condition type not identified, type: " - + conditionType + ", " + condition.toString()); + log("CU !condition type not identified, type: " + conditionType + + ", " + condition.toString()); return ""; } } @@ -330,4 +333,8 @@ public class SelectorUtil { throw new Exception("Invalid selector type"); } } + + private static void log(String msg) { + Logger.getLogger(SelectorUtil.class.getName()).log(Level.INFO, msg); + } } diff --git a/theme-compiler/src/com/vaadin/sass/internal/tree/BlockNode.java b/theme-compiler/src/com/vaadin/sass/internal/tree/BlockNode.java index 6ce67a3abd..8db522ea1a 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/tree/BlockNode.java +++ b/theme-compiler/src/com/vaadin/sass/internal/tree/BlockNode.java @@ -17,6 +17,8 @@ package com.vaadin.sass.internal.tree; import java.util.ArrayList; +import java.util.logging.Level; +import java.util.logging.Logger; import com.vaadin.sass.internal.ScssStylesheet; import com.vaadin.sass.internal.visitor.BlockNodeHandler; @@ -109,7 +111,8 @@ public class BlockNode extends Node implements IVariableNode { BlockNodeHandler.traverse(this); replaceVariables(ScssStylesheet.getVariables()); } catch (Exception e) { - e.printStackTrace(); + Logger.getLogger(BlockNode.class.getName()).log(Level.SEVERE, null, + e); } } diff --git a/theme-compiler/src/com/vaadin/sass/internal/tree/ExtendNode.java b/theme-compiler/src/com/vaadin/sass/internal/tree/ExtendNode.java index 417849d13b..dcabd2ff01 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/tree/ExtendNode.java +++ b/theme-compiler/src/com/vaadin/sass/internal/tree/ExtendNode.java @@ -17,6 +17,8 @@ package com.vaadin.sass.internal.tree; import java.util.ArrayList; +import java.util.logging.Level; +import java.util.logging.Logger; import com.vaadin.sass.internal.visitor.ExtendNodeHandler; @@ -54,7 +56,8 @@ public class ExtendNode extends Node implements IVariableNode { ExtendNodeHandler.traverse(this); getParentNode().removeChild(this); } catch (Exception e) { - e.printStackTrace(); + Logger.getLogger(ExtendNode.class.getName()).log(Level.SEVERE, + null, e); } } } diff --git a/theme-compiler/src/com/vaadin/sass/internal/tree/MixinNode.java b/theme-compiler/src/com/vaadin/sass/internal/tree/MixinNode.java index e702bc8577..c5ffb6d73d 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/tree/MixinNode.java +++ b/theme-compiler/src/com/vaadin/sass/internal/tree/MixinNode.java @@ -19,6 +19,8 @@ package com.vaadin.sass.internal.tree; import java.util.ArrayList; import java.util.Collection; import java.util.Map; +import java.util.logging.Level; +import java.util.logging.Logger; import com.vaadin.sass.internal.ScssStylesheet; import com.vaadin.sass.internal.parser.LexicalUnitImpl; @@ -119,7 +121,8 @@ public class MixinNode extends Node implements IVariableNode { ScssStylesheet.closeVariableScope(variableScope); } catch (Exception e) { - e.printStackTrace(); + Logger.getLogger(MixinNode.class.getName()).log(Level.SEVERE, null, + e); } } diff --git a/theme-compiler/src/com/vaadin/sass/internal/tree/controldirective/IfElseDefNode.java b/theme-compiler/src/com/vaadin/sass/internal/tree/controldirective/IfElseDefNode.java index 735d83a898..8449a9d891 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/tree/controldirective/IfElseDefNode.java +++ b/theme-compiler/src/com/vaadin/sass/internal/tree/controldirective/IfElseDefNode.java @@ -15,6 +15,9 @@ */ package com.vaadin.sass.internal.tree.controldirective; +import java.util.logging.Level; +import java.util.logging.Logger; + import com.vaadin.sass.internal.tree.Node; import com.vaadin.sass.internal.visitor.IfElseNodeHandler; @@ -40,7 +43,8 @@ public class IfElseDefNode extends Node { IfElseNodeHandler.traverse(this); } catch (Exception e) { - e.printStackTrace(); + Logger.getLogger(IfElseDefNode.class.getName()).log(Level.SEVERE, + null, e); } } diff --git a/theme-compiler/src/com/vaadin/sass/internal/util/DeepCopy.java b/theme-compiler/src/com/vaadin/sass/internal/util/DeepCopy.java index bc30ffdd6c..af66eb9a74 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/util/DeepCopy.java +++ b/theme-compiler/src/com/vaadin/sass/internal/util/DeepCopy.java @@ -22,13 +22,15 @@ import java.io.ObjectOutputStream; import java.util.Collection; import java.util.LinkedList; import java.util.List; +import java.util.logging.Level; +import java.util.logging.Logger; /** * Utility for making deep copies (vs. clone()'s shallow copies) of objects. * Objects are first serialized and then deserialized. Error checking is fairly * minimal in this implementation. If an object is encountered that cannot be * serialized (or that references an object that cannot be serialized) an error - * is printed to System.err and null is returned. Depending on your specific + * is printed to the logger and null is returned. Depending on your specific * application, it might make more sense to have copy(...) re-throw the * exception. */ @@ -56,9 +58,9 @@ public class DeepCopy { obj = in.readObject(); in.close(); } catch (IOException e) { - e.printStackTrace(); + log(e); } catch (ClassNotFoundException cnfe) { - cnfe.printStackTrace(); + log(cnfe); } return obj; } else { @@ -80,4 +82,8 @@ public class DeepCopy { } return copies; } + + private static void log(Throwable e) { + Logger.getLogger(DeepCopy.class.getName()).log(Level.SEVERE, null, e); + } }
\ No newline at end of file diff --git a/theme-compiler/src/com/vaadin/sass/internal/visitor/ImportNodeHandler.java b/theme-compiler/src/com/vaadin/sass/internal/visitor/ImportNodeHandler.java index cb9896967a..daf01a3eab 100644 --- a/theme-compiler/src/com/vaadin/sass/internal/visitor/ImportNodeHandler.java +++ b/theme-compiler/src/com/vaadin/sass/internal/visitor/ImportNodeHandler.java @@ -16,10 +16,11 @@ package com.vaadin.sass.internal.visitor; -import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; import java.util.ArrayList; +import java.util.logging.Level; +import java.util.logging.Logger; import org.w3c.css.sac.CSSException; import org.w3c.css.sac.LexicalUnit; @@ -57,25 +58,14 @@ public class ImportNodeHandler { ImportNode importNode = (ImportNode) n; if (!importNode.isPureCssImport()) { try { - StringBuilder filePathBuilder = new StringBuilder( - styleSheet.getFileName()); - filePathBuilder.append(File.separatorChar).append( - importNode.getUri()); - if (!filePathBuilder.toString().endsWith(".scss")) { - filePathBuilder.append(".scss"); - } - // set parent's charset to imported node. ScssStylesheet imported = ScssStylesheet.get( - filePathBuilder.toString(), - styleSheet.getCharset()); - if (imported == null) { - imported = ScssStylesheet.get(importNode.getUri()); - } + importNode.getUri(), styleSheet); if (imported == null) { - throw new FileNotFoundException(importNode.getUri() - + " (parent: " - + ScssStylesheet.get().getFileName() + ")"); + throw new FileNotFoundException("Import '" + + importNode.getUri() + "' in '" + + styleSheet.getFileName() + + "' could not be found"); } traverse(imported); @@ -90,9 +80,11 @@ public class ImportNodeHandler { importNode); node.removeChild(importNode); } catch (CSSException e) { - e.printStackTrace(); + Logger.getLogger(ImportNodeHandler.class.getName()) + .log(Level.SEVERE, null, e); } catch (IOException e) { - e.printStackTrace(); + Logger.getLogger(ImportNodeHandler.class.getName()) + .log(Level.SEVERE, null, e); } } else { if (styleSheet != node) { diff --git a/theme-compiler/src/logging.properties b/theme-compiler/src/logging.properties new file mode 100644 index 0000000000..b563d4b68e --- /dev/null +++ b/theme-compiler/src/logging.properties @@ -0,0 +1,2 @@ +handlers = com.vaadin.sass.CustomConsoleHandler +.level = ALL
\ No newline at end of file diff --git a/theme-compiler/tests/resources/automatic/css/media.css b/theme-compiler/tests/resources/automatic/css/media.css index f4183d9a07..5f7267fa9a 100644 --- a/theme-compiler/tests/resources/automatic/css/media.css +++ b/theme-compiler/tests/resources/automatic/css/media.css @@ -1,3 +1,14 @@ +@media screen { + .v-view { + overflow: visible; + } + .details { + font-size: 1pt; + font-weight: bold; + } + width: 100%; +} + @media screen and (max-width: 480px) { .abc { background: red; diff --git a/theme-compiler/tests/resources/automatic/css/mixin-empty-paramlist.css b/theme-compiler/tests/resources/automatic/css/mixin-empty-paramlist.css deleted file mode 100644 index 59ef68680d..0000000000 --- a/theme-compiler/tests/resources/automatic/css/mixin-empty-paramlist.css +++ /dev/null @@ -1,15 +0,0 @@ -body { - color: blue; -} - -h1 { - text-align: center; -} - -p { - font-style: italic; -} - -table { - width: 100%; -}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/automatic/scss/media.scss b/theme-compiler/tests/resources/automatic/scss/media.scss index 7db52de9ed..311c5088c8 100644 --- a/theme-compiler/tests/resources/automatic/scss/media.scss +++ b/theme-compiler/tests/resources/automatic/scss/media.scss @@ -1,3 +1,24 @@ +@mixin media-settings { + @media screen { + .v-view { + overflow: visible; + } + @content; + } +} + +@include media-settings { + .details { + font: { + size : 1pt; + weight: bold; + } + } + + width:100%; +} + + @media screen and (max-width: 480px) { .abc { background: red; diff --git a/theme-compiler/tests/resources/automatic/scss/mixin-empty-paramlist.scss b/theme-compiler/tests/resources/automatic/scss/mixin-empty-paramlist.scss deleted file mode 100644 index 27033ba850..0000000000 --- a/theme-compiler/tests/resources/automatic/scss/mixin-empty-paramlist.scss +++ /dev/null @@ -1,28 +0,0 @@ -@mixin emptyarglist1(){ - body{ - color: blue; - } -} - -@mixin emptyarglist2(){ - h1{ - text-align:center; - } -} - -@mixin emptyarglist3{ - p{ - font-style:italic; - } -} - -@mixin emptyarglist4{ - table{ - width: 100%; - } -} - -@include emptyarglist1(); -@include emptyarglist2; -@include emptyarglist3(); -@include emptyarglist4;
\ No newline at end of file diff --git a/theme-compiler/tests/resources/css/compass-import.css b/theme-compiler/tests/resources/css/compass-import.css new file mode 100644 index 0000000000..e3d4b5fcca --- /dev/null +++ b/theme-compiler/tests/resources/css/compass-import.css @@ -0,0 +1,49 @@ +.content-navigation { + border-color: #3bbfce; + color: #0000ff; +} + +.border { + padding: 8px; + margin: 8px; + border-color: #3bbfce; +} + +.body { + background-image: url(compass/folder-test2/bg.png); + background: transparent url(compass/folder-test2/img/loading-indicator.gif); + background-image: url(http://abc/bg.png); + background-image: url(/abc/bg.png); +} + +.base { + color: red; +} + +.text { + font-weight: bold; +} + +.footer { + border: 2px solid black; + -webkit-border-radius: 10px; + -moz-border-radius: 10px; + border-radius: 10px; +} + +.banner { + border: 1px solid black; + font-color: red; +} + +.interpolation-test { + font-size: 14px; +} + +.header { + width: 100%; +} + +.badError { + border-width: 3px; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/sasslang/css/100-test_optional_extend_does_not_warn_when_extension_fails.css b/theme-compiler/tests/resources/sasslangbroken/css/100-test_optional_extend_does_not_warn_when_extension_fails.css index 29116d880b..29116d880b 100644 --- a/theme-compiler/tests/resources/sasslang/css/100-test_optional_extend_does_not_warn_when_extension_fails.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/100-test_optional_extend_does_not_warn_when_extension_fails.css diff --git a/theme-compiler/tests/resources/sasslang/css/36-test_extend_self_loop.css b/theme-compiler/tests/resources/sasslangbroken/css/36-test_extend_self_loop.css index 234d524066..234d524066 100644 --- a/theme-compiler/tests/resources/sasslang/css/36-test_extend_self_loop.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/36-test_extend_self_loop.css diff --git a/theme-compiler/tests/resources/sasslang/css/37-test_extend_warns_when_extendee_doesnt_exist.css b/theme-compiler/tests/resources/sasslangbroken/css/37-test_extend_warns_when_extendee_doesnt_exist.css index 8b13789179..8b13789179 100644 --- a/theme-compiler/tests/resources/sasslang/css/37-test_extend_warns_when_extendee_doesnt_exist.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/37-test_extend_warns_when_extendee_doesnt_exist.css diff --git a/theme-compiler/tests/resources/sasslang/css/38-test_extend_warns_when_extension_fails.css b/theme-compiler/tests/resources/sasslangbroken/css/38-test_extend_warns_when_extension_fails.css index 29116d880b..29116d880b 100644 --- a/theme-compiler/tests/resources/sasslang/css/38-test_extend_warns_when_extension_fails.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/38-test_extend_warns_when_extension_fails.css diff --git a/theme-compiler/tests/resources/sasslang/css/57-test_long_extendee_requires_all_selectors.css b/theme-compiler/tests/resources/sasslangbroken/css/57-test_long_extendee_requires_all_selectors.css index 234d524066..234d524066 100644 --- a/theme-compiler/tests/resources/sasslang/css/57-test_long_extendee_requires_all_selectors.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/57-test_long_extendee_requires_all_selectors.css diff --git a/theme-compiler/tests/resources/sasslang/css/60-test_long_extender_aborts_unification.css b/theme-compiler/tests/resources/sasslangbroken/css/60-test_long_extender_aborts_unification.css index 18bc24e7cd..18bc24e7cd 100644 --- a/theme-compiler/tests/resources/sasslang/css/60-test_long_extender_aborts_unification.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/60-test_long_extender_aborts_unification.css diff --git a/theme-compiler/tests/resources/sasslang/css/71-test_nested_extender_aborts_unification.css b/theme-compiler/tests/resources/sasslangbroken/css/71-test_nested_extender_aborts_unification.css index 2337e9af40..2337e9af40 100644 --- a/theme-compiler/tests/resources/sasslang/css/71-test_nested_extender_aborts_unification.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/71-test_nested_extender_aborts_unification.css diff --git a/theme-compiler/tests/resources/sasslang/css/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.css b/theme-compiler/tests/resources/sasslangbroken/css/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.css index 8b13789179..8b13789179 100644 --- a/theme-compiler/tests/resources/sasslang/css/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.css +++ b/theme-compiler/tests/resources/sasslangbroken/css/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.css diff --git a/theme-compiler/tests/resources/sasslang/scss/100-test_optional_extend_does_not_warn_when_extension_fails.scss b/theme-compiler/tests/resources/sasslangbroken/scss/100-test_optional_extend_does_not_warn_when_extension_fails.scss index 6d707236f2..6d707236f2 100644 --- a/theme-compiler/tests/resources/sasslang/scss/100-test_optional_extend_does_not_warn_when_extension_fails.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/100-test_optional_extend_does_not_warn_when_extension_fails.scss diff --git a/theme-compiler/tests/resources/sasslang/scss/36-test_extend_self_loop.scss b/theme-compiler/tests/resources/sasslangbroken/scss/36-test_extend_self_loop.scss index ac40f00573..ac40f00573 100644 --- a/theme-compiler/tests/resources/sasslang/scss/36-test_extend_self_loop.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/36-test_extend_self_loop.scss diff --git a/theme-compiler/tests/resources/sasslang/scss/37-test_extend_warns_when_extendee_doesnt_exist.scss b/theme-compiler/tests/resources/sasslangbroken/scss/37-test_extend_warns_when_extendee_doesnt_exist.scss index cd54108c97..cd54108c97 100644 --- a/theme-compiler/tests/resources/sasslang/scss/37-test_extend_warns_when_extendee_doesnt_exist.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/37-test_extend_warns_when_extendee_doesnt_exist.scss diff --git a/theme-compiler/tests/resources/sasslang/scss/38-test_extend_warns_when_extension_fails.scss b/theme-compiler/tests/resources/sasslangbroken/scss/38-test_extend_warns_when_extension_fails.scss index 8381c7279a..8381c7279a 100644 --- a/theme-compiler/tests/resources/sasslang/scss/38-test_extend_warns_when_extension_fails.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/38-test_extend_warns_when_extension_fails.scss diff --git a/theme-compiler/tests/resources/sasslang/scss/57-test_long_extendee_requires_all_selectors.scss b/theme-compiler/tests/resources/sasslangbroken/scss/57-test_long_extendee_requires_all_selectors.scss index 011d26a83e..011d26a83e 100644 --- a/theme-compiler/tests/resources/sasslang/scss/57-test_long_extendee_requires_all_selectors.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/57-test_long_extendee_requires_all_selectors.scss diff --git a/theme-compiler/tests/resources/sasslang/scss/60-test_long_extender_aborts_unification.scss b/theme-compiler/tests/resources/sasslangbroken/scss/60-test_long_extender_aborts_unification.scss index 5238f3f93e..5238f3f93e 100644 --- a/theme-compiler/tests/resources/sasslang/scss/60-test_long_extender_aborts_unification.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/60-test_long_extender_aborts_unification.scss diff --git a/theme-compiler/tests/resources/sasslang/scss/71-test_nested_extender_aborts_unification.scss b/theme-compiler/tests/resources/sasslangbroken/scss/71-test_nested_extender_aborts_unification.scss index bcbb6e181d..bcbb6e181d 100644 --- a/theme-compiler/tests/resources/sasslang/scss/71-test_nested_extender_aborts_unification.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/71-test_nested_extender_aborts_unification.scss diff --git a/theme-compiler/tests/resources/sasslang/scss/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.scss b/theme-compiler/tests/resources/sasslangbroken/scss/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.scss index 551764036f..551764036f 100644 --- a/theme-compiler/tests/resources/sasslang/scss/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.scss +++ b/theme-compiler/tests/resources/sasslangbroken/scss/99-test_optional_extend_does_not_warn_when_extendee_doesnt_exist.scss diff --git a/theme-compiler/tests/resources/scss/compass-test/compass-import.scss b/theme-compiler/tests/resources/scss/compass-test/compass-import.scss new file mode 100644 index 0000000000..36d041b33c --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test/compass-import.scss @@ -0,0 +1,4 @@ +@import "compass"; +.badError { + border-width: 3px; +} diff --git a/theme-compiler/tests/resources/scss/compass-test2/_compass.scss b/theme-compiler/tests/resources/scss/compass-test2/_compass.scss new file mode 100644 index 0000000000..9b741c0f03 --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/_compass.scss @@ -0,0 +1,3 @@ +@import "compass/utilities"; +@import "compass/typography"; +@import "compass/css3"; diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass-import2.scss b/theme-compiler/tests/resources/scss/compass-test2/compass-import2.scss new file mode 100644 index 0000000000..36d041b33c --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass-import2.scss @@ -0,0 +1,4 @@ +@import "compass"; +.badError { + border-width: 3px; +} diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/_css3.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/_css3.scss new file mode 100644 index 0000000000..42163ba193 --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/_css3.scss @@ -0,0 +1,3 @@ +@import "css3/border-radius"; +@import "css3/inline-block"; +@import "css3/opacity"; diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/_typography.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/_typography.scss new file mode 100644 index 0000000000..a65c1ff292 --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/_typography.scss @@ -0,0 +1,3 @@ +@import "typography/links"; +@import "typography/lists"; +@import "typography/text"; diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/_utilities.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/_utilities.scss new file mode 100644 index 0000000000..644ad3368b --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/_utilities.scss @@ -0,0 +1,3 @@ +@import "utilities/color"; +@import "utilities/general"; +@import "utilities/sprites"; diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_border-radius.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_border-radius.scss new file mode 100644 index 0000000000..752003104b --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_border-radius.scss @@ -0,0 +1,4 @@ +.banner { + border: 1px solid black; + font-color: red; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_inline-block.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_inline-block.scss new file mode 100644 index 0000000000..3fefab83b2 --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_inline-block.scss @@ -0,0 +1,3 @@ +.interpolation-test { + font-size: 14px; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_opacity.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_opacity.scss new file mode 100644 index 0000000000..f6bf34fe24 --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/css3/_opacity.scss @@ -0,0 +1,3 @@ +.header { + width: 100%; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_links.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_links.scss new file mode 100644 index 0000000000..bc7318558e --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_links.scss @@ -0,0 +1,3 @@ +.base { + color: red; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_lists.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_lists.scss new file mode 100644 index 0000000000..af174b7095 --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_lists.scss @@ -0,0 +1,3 @@ +.text { + font-weight: bold; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_text.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_text.scss new file mode 100644 index 0000000000..8239527f7b --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/typography/_text.scss @@ -0,0 +1,6 @@ +.footer { + border: 2px solid black; + -webkit-border-radius: 10px; + -moz-border-radius: 10px; + border-radius: 10px; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_color.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_color.scss new file mode 100644 index 0000000000..ea1b7a55f0 --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_color.scss @@ -0,0 +1,4 @@ +.content-navigation { + border-color: #3bbfce; + color: #0000ff; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_general.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_general.scss new file mode 100644 index 0000000000..0c58c6433d --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_general.scss @@ -0,0 +1,5 @@ +.border { + padding: 8px; + margin: 8px; + border-color: #3bbfce; +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_sprites.scss b/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_sprites.scss new file mode 100644 index 0000000000..28960f89fc --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/compass/utilities/_sprites.scss @@ -0,0 +1,6 @@ +.body { + background-image: url(../folder-test2/bg.png); + background: transparent url(../folder-test2/img/loading-indicator.gif); + background-image: url(http://abc/bg.png); + background-image: url(/abc/bg.png); +}
\ No newline at end of file diff --git a/theme-compiler/tests/resources/scss/compass-test2/license-readme.txt b/theme-compiler/tests/resources/scss/compass-test2/license-readme.txt new file mode 100644 index 0000000000..90ba808179 --- /dev/null +++ b/theme-compiler/tests/resources/scss/compass-test2/license-readme.txt @@ -0,0 +1,26 @@ +The design here is to use the stylesheets located at: +https://github com/chriseppstein/compass/tree/stable/frameworks/compass/stylesheets + +and update the VAADIN code to be able to read them in such that an existing JRuby implementation can be replaced with VAADIN without any changes to one's *.scss and *.css files. + +The current short snippets of SCSS that are included here only for testing Compass compatibility might not qualify as significant or substantial parts, but in any case Compass is being mentioned for related tests pointing to the original implementation. These small portions of Compass are copied and modified for the testing of compatibility only. + +The license for Compass mentioned here: +https://github.com/chriseppstein/compass/blob/stable/LICENSE.markdown + +is as follows: + + + + +Copyright (c) 2009 Christopher M. Eppstein + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. No attribution is required by products that make use of this software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name(s) of the above copyright holders shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization. + +Contributors to this project agree to grant all rights to the copyright holder of the primary product. Attribution is maintained in the source control history of the product. diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.0.scss new file mode 100644 index 0000000000..2f1e55e87e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-001.htm */ + +html { margin:10px; border:20px solid black; padding:30px; } +body { height:10000px; margin:0; } +div { position:absolute; width:100px; height:100px; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.1.scss new file mode 100644 index 0000000000..7b5eace311 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-001.htm */ +.style { top:0; background:yellow; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.2.scss new file mode 100644 index 0000000000..c94661f654 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-001.htm */ +.style { right:0; background:orange; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.3.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.3.scss new file mode 100644 index 0000000000..893b95ca14 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-001.htm */ +.style { bottom:0; background:brown; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.4.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.4.scss new file mode 100644 index 0000000000..71d199866c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-001.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-001.htm */ +.style { left:0; background:pink; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004a.0.scss new file mode 100644 index 0000000000..457f6a2d2f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004a.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-004a.htm */ +.style { position:absolute; left:100px; top:100px; width:100px; height:100px; background:yellow; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004b.0.scss new file mode 100644 index 0000000000..8990089fb6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004b.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-004b.htm */ +.style { position:fixed; left:100px; top:100px; width:100px; height:100px; background:yellow; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004c.0.scss new file mode 100644 index 0000000000..1bad688abe --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004c.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-004c.htm */ +.style { position:absolute; left:100px; top:100px; width:100px; height:100px; background:yellow; border:10px solid black; display:table; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004d.0.scss new file mode 100644 index 0000000000..8f8b50e4c7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004d.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-004d.htm */ +.style { position:fixed; left:100px; top:100px; width:100px; height:100px; background:yellow; border:10px solid black; display:table } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004e.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004e.0.scss new file mode 100644 index 0000000000..0c460b5c3f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004e.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-004e.htm */ +.style { display:table } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004e.1.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004e.1.scss new file mode 100644 index 0000000000..29c22194fd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004e.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-004e.htm */ +.style { position:absolute; left:100px; top:100px; width:100px; height:100px; border:10px solid black; background:yellow; margin:0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004f.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004f.0.scss new file mode 100644 index 0000000000..33f39b6ab6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004f.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-004f.htm */ +.style { display:table } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004f.1.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004f.1.scss new file mode 100644 index 0000000000..c458e5dc33 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-004f.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-004f.htm */ +.style { position:fixed; left:100px; top:100px; width:100px; height:100px; border:10px solid black; background:yellow; margin:0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005a.0.scss new file mode 100644 index 0000000000..a724d1b918 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005a.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-005a.htm */ +.style { position:absolute; width:100px; height:100px; background:yellow; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005b.0.scss new file mode 100644 index 0000000000..d9b1214a4b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005b.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-005b.htm */ +.style { position:absolute; width:100px; height:100px; display:table; background:yellow; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005c.0.scss new file mode 100644 index 0000000000..e6e7f6b90b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005c.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-005c.htm */ +.style { position:fixed; width:100px; height:100px; background:yellow; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005d.0.scss new file mode 100644 index 0000000000..1bc05d796a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-005d.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-005d.htm */ +.style { position:fixed; width:100px; height:100px; display:table; background:yellow; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-007.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-007.0.scss new file mode 100644 index 0000000000..9080cba258 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-007.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-007.htm */ +.style { position:relative; top:100px; left:100px; height:100px; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-007.1.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-007.1.scss new file mode 100644 index 0000000000..40f293c03b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-007.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-007.htm */ +.style { position:absolute; margin:0; bottom:0; height:30px; border:10px solid orange; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009a.0.scss new file mode 100644 index 0000000000..ac865fb846 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009a.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-009a.htm */ +.style { width:50%; height:50%; margin:50px; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009b.0.scss new file mode 100644 index 0000000000..0b108fff62 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009b.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-009b.htm */ +.style { position:absolute; left:50px; top:50px; width:50%; height:50%; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009e.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009e.0.scss new file mode 100644 index 0000000000..f5bda4dc9f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009e.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-009e.htm */ +.style { position:absolute; width:50%; height:50%; top:50px; left:50px; margin:0; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009f.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009f.0.scss new file mode 100644 index 0000000000..788e50c119 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009f.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-009f.htm */ +.style { position:relative; height:50%; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009f.1.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009f.1.scss new file mode 100644 index 0000000000..e1c3142ad8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-containing-block-initial-009f.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-containing-block-initial-009f.htm */ +.style { position:absolute; width:50%; top:50px; left:50px; height:100%; margin:0; border:10px solid black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-non-replaced-width-margin-000.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-non-replaced-width-margin-000.0.scss new file mode 100644 index 0000000000..69f5c2fa6a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-non-replaced-width-margin-000.0.scss @@ -0,0 +1,93 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-non-replaced-width-margin-000.htm */ + + +div { height: 1px; direction: ltr; } + +/* + * Every case here has three divs nested inside of each other. The + * innermost div (absolutely positioned) is the testcase (and has + * color). The middle div's content edge establishes the containing + * block it would have if it were statically positioned. The outermost + * div is actually its containing block. + * + * the abs pos containing block runs from 50px to 700px from the left edge + * the static pos containing block runs from 150px to 650px from the left edge + */ + +/* totals for html and body: 21px on the left, 34px on the right */ +html, body { border: transparent medium solid; } +html { margin: 0 3px 0 2px; padding: 0 4px 0 3px; border-width: 0 3px 0 8px; } +body { margin: 0 6px 0 3px; padding: 0 7px 0 1px; border-width: 0 11px 0 4px; } + +body > div { + position: relative; + + top: 0; + left: 4px; + + margin-left: 16px; + border-left: 9px solid transparent; + /* sum of above items (29px), plus 21px above, is 50px */ + padding-left: 40px; + + width: 595px; + + padding-right: 15px; + /* sum of above items (650px), plus 50px above, is 700px */ + + border-right: 27px solid transparent; + margin-right: 13px; +} + +body > div > div { + /* padding-left above: 40px */ + margin-left: 7px; + border-left: 29px solid transparent; + padding-left: 24px; + /* sum of above items (100px), plus 50px above, is 150px */ + + /* padding-right above: 15px */ + padding-right: 14px; + border-right: 3px solid transparent; + margin-right: 18px; + /* sum of above items (50px), subtracted from 700px, is 650px */ +} + +body > div > div > div { + background: navy; + position: absolute; + top: 0; + bottom: 0; + + /* specify everything; we'll put the autos as overrides below */ + left: 3px; + margin-left: 17px; + border-left: 6px solid transparent; + padding-left: 1px; + padding-right: 9px; + border-right: 8px solid transparent; + margin-right: 19px; + right: 8px; +} + +/* and give it 72px of intrinsic width for the case where it has width:auto */ +body > div > div > div > div { + width: 72px; +} + +/* now we want to test all 128 combinations of presence of the following */ + +body > div.adir { direction: rtl; } +body > div.sdir > div { direction: rtl; } +body > div.edir > div > div { direction: rtl; } +body > div.ol > div > div { left: auto; } +body > div.or > div > div { right: auto; } +body > div.ml > div > div { margin-left: auto; } +body > div.mr > div > div { margin-right: auto; } + +/* combined with each of these three */ +body > div.narrowwidth > div > div { width: 153px; } +body > div.autowidth > div > div { width: auto; } +body > div.widewidth > div > div { width: 660px; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/abspos-replaced-width-margin-000.0.scss b/theme-compiler/tests/resources/w3ctests/scss/abspos-replaced-width-margin-000.0.scss new file mode 100644 index 0000000000..99f2a308f3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/abspos-replaced-width-margin-000.0.scss @@ -0,0 +1,88 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/abspos-replaced-width-margin-000.htm */ + + +div { height: 1px; direction: ltr; } + +/* + * Every case here has two divs and an image nested inside of each other. The + * innermost div (absolutely positioned) is the testcase (and has + * color). The middle div's content edge establishes the containing + * block it would have if it were statically positioned. The outermost + * div is actually its containing block. + * + * the abs pos containing block runs from 50px to 700px from the left edge + * the static pos containing block runs from 150px to 650px from the left edge + */ + +/* totals for html and body: 21px on the left, 34px on the right */ +html, body { border: transparent medium solid; } +html { margin: 0 3px 0 2px; padding: 0 4px 0 3px; border-width: 0 3px 0 8px; } +body { margin: 0 6px 0 3px; padding: 0 7px 0 1px; border-width: 0 11px 0 4px; } + +body > div { + position: relative; + + top: 0; + left: 4px; + + margin-left: 16px; + border-left: 9px solid transparent; + /* sum of above items (29px), plus 21px above, is 50px */ + padding-left: 40px; + + width: 595px; + + padding-right: 15px; + /* sum of above items (650px), plus 50px above, is 700px */ + + border-right: 27px solid transparent; + margin-right: 13px; +} + +body > div > div { + /* padding-left above: 40px */ + margin-left: 7px; + border-left: 29px solid transparent; + padding-left: 24px; + /* sum of above items (100px), plus 50px above, is 150px */ + + /* padding-right above: 15px */ + padding-right: 14px; + border-right: 3px solid transparent; + margin-right: 18px; + /* sum of above items (50px), subtracted from 700px, is 650px */ +} + +body > div > div > img { + background: navy; + position: absolute; + top: 0; + bottom: 0; + + /* specify everything; we'll put the autos as overrides below */ + left: 3px; + margin-left: 17px; + border-left: 6px solid transparent; + padding-left: 1px; + padding-right: 9px; + border-right: 8px solid transparent; + margin-right: 19px; + right: 8px; +} + +/* now we want to test all 128 combinations of presence of the following */ + +body > div.adir { direction: rtl; } +body > div.sdir > div { direction: rtl; } +body > div.edir > div > img { direction: rtl; } +body > div.ol > div > img { left: auto; } +body > div.or > div > img { right: auto; } +body > div.ml > div > img { margin-left: auto; } +body > div.mr > div > img { margin-right: auto; } + +/* combined with each of these three (as appropriate for narrow/wide images) */ +body > div.narrowwidth > div > img { width: 153px; height: 1px; } +body > div.autowidth > div > img { width: auto; } +body > div.widewidth > div > img { width: 660px; height: 1px; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/anonymous-boxes-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/anonymous-boxes-001.0.scss new file mode 100644 index 0000000000..3c30052779 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/anonymous-boxes-001.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/anonymous-boxes-001.htm */ + + #parent { height: 200px; position: relative; } + #child { float: left; height: 50%; width: 100px; background: green; position: relative } + #background { position: absolute; top: 0; left: 0; width: 100px; height: 100px; background: red } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-quotes-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-quotes-001.0.scss new file mode 100644 index 0000000000..3a4f2c68a2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-quotes-001.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-quotes-001.htm */ + + body { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-quotes-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-quotes-001.1.scss Binary files differnew file mode 100644 index 0000000000..f9ff59ef63 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-quotes-001.1.scss diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-001.0.scss new file mode 100644 index 0000000000..e81cd566d8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-001.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-space-001.htm */ + + body { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-001.1.scss Binary files differnew file mode 100644 index 0000000000..89cf375ace --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-001.1.scss diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-002.0.scss new file mode 100644 index 0000000000..f37bd48b03 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-002.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-space-002.htm */ + + body { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-002.1.scss Binary files differnew file mode 100644 index 0000000000..4ca1f3465a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-space-002.1.scss diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-be-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-be-001.0.scss new file mode 100644 index 0000000000..82b8dcb50a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-be-001.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-utf16-be-001.htm */ + + body { color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-be-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-be-001.1.scss Binary files differnew file mode 100644 index 0000000000..3bf9f5f6b4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-be-001.1.scss diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-le-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-le-001.0.scss new file mode 100644 index 0000000000..92ca00bc53 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-le-001.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-utf16-le-001.htm */ + + body { color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-le-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-le-001.1.scss Binary files differnew file mode 100644 index 0000000000..483b8494dd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/at-charset-utf16-le-001.1.scss diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-001.0.scss new file mode 100644 index 0000000000..ed10b1ea02 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-001.0.scss @@ -0,0 +1,40 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-001.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + /* 100 x 120 bgpaint area */ + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-none.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-none.svg); + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-002.0.scss new file mode 100644 index 0000000000..849421d055 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-002.0.scss @@ -0,0 +1,42 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-002.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-width.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-width.svg); + } + .control { + width: 60px; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-003.0.scss new file mode 100644 index 0000000000..baac57662f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-003.0.scss @@ -0,0 +1,42 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-003.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-height.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-height.svg); + } + .control { + height: 60px; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-004.0.scss new file mode 100644 index 0000000000..22a6983830 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-004.0.scss @@ -0,0 +1,45 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-004.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-ratio-portrait.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-ratio-portrait.svg); + } + .cover .control { + width: 66px; + } + .limit .control { + width: 67px; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-005.0.scss new file mode 100644 index 0000000000..cc0e002964 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-005.0.scss @@ -0,0 +1,45 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-005.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-ratio-landscape.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-ratio-landscape.svg); + } + .cover .control { + height: 53px; + } + .limit .control { + height: 54px; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-006.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-006.0.scss new file mode 100644 index 0000000000..fda8699018 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-006.0.scss @@ -0,0 +1,43 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-006.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-width-pc-height-pc.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-width-pc-height-pc.svg); + } + .control { + width: 32px; + height: 60px; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-007.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-007.0.scss new file mode 100644 index 0000000000..09b38ffacb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-007.0.scss @@ -0,0 +1,43 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-007.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-width-ratio.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-width-ratio.svg); + } + .control { + width: 40px; + height: 60px; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-008.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-008.0.scss new file mode 100644 index 0000000000..f54ce9a61a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-008.0.scss @@ -0,0 +1,43 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-008.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-height-ratio.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-height-ratio.svg); + } + .control { + width: 40px; + height: 60px; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-009.0.scss b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-009.0.scss new file mode 100644 index 0000000000..6b9b2d6456 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/background-intrinsic-009.0.scss @@ -0,0 +1,43 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/background-intrinsic-009.htm */ + + /* Setup. Use 5:6 ratio because it's weird and unlikely to be hard-coded anywhere. */ + div { + position: relative; + } + .cover, .limit { + width: 120px; + height: 120px; + margin: 0.5em; + background: green; /* Used to match reference; remove for debugging. */ + } + .control { + position: absolute; + top: 10px; bottom: 10px; + left: 10px; right: 30px; + } + .cover .control { + background: red; + } + .limit .control { + background: green; + } + .test { + /* 80x100 bgpos area */ + height: 80px; + width: 60px; + padding: 10px; + border: 10px solid transparent; + } + + /* Test */ + .cover .test { + background: no-repeat url(support/green-intrinsic-width-height.svg); + } + .limit .test { + background: no-repeat url(support/red-intrinsic-width-height.svg); + } + .control { + width: 40px; + height: 60px; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-display-types-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-display-types-001.0.scss new file mode 100644 index 0000000000..5a3d20fd24 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-display-types-001.0.scss @@ -0,0 +1,25 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-display-types-001.htm */ + +div { counter-reset:ctr; quotes:"\0022" "\0022" "\0022" "\0022"} + +div:before { + content:counter(ctr) url(support/square-outline-32x32.png) open-quote "Before " attr(class); + counter-increment:ctr; +} +div:after { + content:counter(ctr) url(support/square-outline-32x32.png) "After " attr(class) close-quote; + counter-increment:ctr; +} + +.block:before, .block:after { display:block; } +.inline:before, .inline:after { display:inline; } +.inline-block:before, .inline-block:after { display:inline-block; } +.table:before, .table:after { display:table; } +.inline-table:before, .inline-table:after { display:inline-table; } +.table-row-group:before, .table-row-group:after { display:table-row-group; } +.table-row:before, .table-row:after { display:table-row; } +.table-cell:before, .table-cell:after { display:table-cell; } +.table-caption:before, .table-caption:after { display:table-caption; } + +div { border:1px solid green; margin:5px; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-dynamic-attr-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-dynamic-attr-001.0.scss new file mode 100644 index 0000000000..b2b28a5c97 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-dynamic-attr-001.0.scss @@ -0,0 +1,12 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-dynamic-attr-001.htm */ + +body { + font-family:sans-serif; +} +body:before { + content:attr(my-attr); +} +body:after { + content:attr(my-attr-2); +} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-dynamic-restyle-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-dynamic-restyle-001.0.scss new file mode 100644 index 0000000000..4a1861941e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-dynamic-restyle-001.0.scss @@ -0,0 +1,11 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-dynamic-restyle-001.htm */ + +body:before { + content:"Before"; + border:inherit; +} +.cl:after { + display:block; + content:"After"; +} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-floated-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-floated-001.0.scss new file mode 100644 index 0000000000..324cae53d2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-floated-001.0.scss @@ -0,0 +1,29 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-floated-001.htm */ + +div { counter-reset:ctr; quotes:"\0022" "\0022" "\0022" "\0022"; } + +div:before { + content:counter(ctr) url(support/square-outline-32x32.png) open-quote "Before " attr(class); + counter-increment:ctr; +} +div:after { + content:counter(ctr) url(support/square-outline-32x32.png) "After " attr(class) close-quote; + counter-increment:ctr; +} + +.beforeleft:before { + float:left; +} +.beforeright:before { + float:right; +} +.afterleft:after { + float:left; +} +.afterright:after { + float:right; +} + +div { border:1px solid green; margin:5px; } +div { overflow:auto; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-images-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-images-001.0.scss new file mode 100644 index 0000000000..c419306c2a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-images-001.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-images-001.htm */ + +div:before { + content:url(missing-image.png); +} +div { border:1px solid green; margin:5px; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-positioned-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-positioned-001.0.scss new file mode 100644 index 0000000000..a5b7d7b26b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-positioned-001.0.scss @@ -0,0 +1,33 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-positioned-001.htm */ + +div { counter-reset:ctr; quotes:"\0022" "\0022" "\0022" "\0022"; } + +.gen:before { + content:counter(ctr) url(support/square-outline-32x32.png) open-quote "Before " attr(class); + counter-increment:ctr; +} +.gen:after { + content:counter(ctr) url(support/square-outline-32x32.png) "After " attr(class) close-quote; + counter-increment:ctr; +} + +.abs:before { + position:absolute; + left:0; +} +.abs:after { + position:absolute; + right:0; +} + +.rel:before { + position:relative; + top:-10px; +} +.rel:after { + position:relative; + top:10px; +} + +div { border:1px solid green; margin:5px; height:100px; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-positioned-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-positioned-001.1.scss new file mode 100644 index 0000000000..33ee1ef76b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-positioned-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-positioned-001.htm */ +.style { position:relative; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-table-parts-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-table-parts-001.0.scss new file mode 100644 index 0000000000..f199f3ae10 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-table-parts-001.0.scss @@ -0,0 +1,44 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-table-parts-001.htm */ + +table, div.gen { counter-reset:ctr; quotes:"\0022" "\0022" "\0022" "\0022"; } + +.gen:before { + content:counter(ctr) url(support/square-outline-32x32.png) open-quote "Before " attr(class); + counter-increment:ctr; +} +.gen:after { + content:counter(ctr) url(support/square-outline-32x32.png) "After " attr(class) close-quote; + counter-increment:ctr; +} + +table { border:1px solid blue; } +td { border:1px solid cyan; } +td { border-spacing:0; padding:0; } + +tr.gen:before, tr.gen:after { display:table-cell; } +tbody.gen:before, tbody.gen:after { display:table-row; } +table.gen:before, table.gen:after { display:table-row-group; } +table.col:before, table.gen.col:after { display:table-column-group; } +/* note reordering here! */ +table.headfoot:after { display:table-header-group; } +table.headfoot:before { display:table-footer-group; } + +.cell { display:table-cell; } +.row { display:table-row; } +.rowgroup { display:table-row-group; } +.table { display:table; } +div.gencell:before, div.gencell:after { display:table-cell; } +div.genrow:before, div.genrow:after { display:table-row; } +div.genblock:before, div.genblock:after { display:block; } +div.geninline:before, div.geninline:after { display:inline; } + +div { border:1px solid green; margin:5px; } + +.varyheight:before { height:100px; background:yellow; } +.varyheight > div { height:80px; background:orange; } +.varyheight:after { height:60px; background:brown; } + +.varywidth:before { background:yellow; } +.varywidth > div { background:orange; } +.varywidth:after { background:brown; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-table-parts-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-table-parts-001.1.scss new file mode 100644 index 0000000000..652b7fb64f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-table-parts-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-table-parts-001.htm */ +.style { border:none } diff --git a/theme-compiler/tests/resources/w3ctests/scss/before-after-table-whitespace-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/before-after-table-whitespace-001.0.scss new file mode 100644 index 0000000000..a4bd9b3f27 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/before-after-table-whitespace-001.0.scss @@ -0,0 +1,17 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/before-after-table-whitespace-001.htm */ + +.gen0:before { + padding:1px; +} +.gen1:before { + content: " "; +} +.gen2:before { + content: attr(missing); +} +.gen3:before { + content: url(missing-image.png); +} + +div { border:1px solid green; margin:5px; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-001.0.scss new file mode 100644 index 0000000000..f2d73053d4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-001.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-append-001.htm */ + + + body > span { outline: 1px dotted black; } + body > span > span { display: block; width: 10em; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-002.0.scss new file mode 100644 index 0000000000..15821f265e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-002.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-append-002.htm */ + + #outermost { border: 2px solid; } + #outer { border: 4px solid yellow; } + #inner { border: 6px sold green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-002.1.scss new file mode 100644 index 0000000000..92b70020f2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-append-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-append-002.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.0.scss new file mode 100644 index 0000000000..c59fe1cefd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-001.htm */ +.style { direction: ltr } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.1.scss new file mode 100644 index 0000000000..24f75e5c03 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-001.htm */ +.style { border: 5px solid blue; border-left: none; border-right: none; padding-right: 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.2.scss new file mode 100644 index 0000000000..578cdb672b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-001.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.0.scss new file mode 100644 index 0000000000..ebd82de172 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-002.htm */ +.style { direction: rtl } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.1.scss new file mode 100644 index 0000000000..800d89067f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-002.htm */ +.style { border: 5px solid blue; border-left: none; border-right: none; padding-right: 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.2.scss new file mode 100644 index 0000000000..47d968fb36 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-002.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.0.scss new file mode 100644 index 0000000000..bec0ff7a45 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-003.htm */ +.style { direction: ltr } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.1.scss new file mode 100644 index 0000000000..d55949134e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-003.htm */ +.style { border: 5px solid blue; border-left: none; border-right: none; padding-left: 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.2.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.2.scss new file mode 100644 index 0000000000..972cbf30eb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-003.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-003.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.0.scss new file mode 100644 index 0000000000..6259effef6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-004.htm */ +.style { direction: rtl } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.1.scss new file mode 100644 index 0000000000..85f7e37a8c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-004.htm */ +.style { border: 5px solid blue; border-left: none; border-right: none; padding-left: 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.2.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.2.scss new file mode 100644 index 0000000000..e4dfb13524 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-empty-004.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-empty-004.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.0.scss new file mode 100644 index 0000000000..081e58affc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-float-between-001.htm */ +.style { position: relative; left: 100px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.1.scss new file mode 100644 index 0000000000..99babd326f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-float-between-001.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.2.scss new file mode 100644 index 0000000000..8f5a27f693 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-float-between-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-float-between-001.htm */ +.style { float: left } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001a.0.scss new file mode 100644 index 0000000000..4482654240 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001a.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001a.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001b.0.scss new file mode 100644 index 0000000000..d0b1193abc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001b.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001c.0.scss new file mode 100644 index 0000000000..a820d992bc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001c.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001c.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001d.0.scss new file mode 100644 index 0000000000..dc7c044309 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001d.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001d.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001e.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001e.0.scss new file mode 100644 index 0000000000..4ee59b7c3c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001e.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001e.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001f.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001f.0.scss new file mode 100644 index 0000000000..544fddaee6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001f.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001f.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001g.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001g.0.scss new file mode 100644 index 0000000000..5bbfb01512 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001g.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001g.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001h.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001h.0.scss new file mode 100644 index 0000000000..d03bbf51a7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001h.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001h.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001i.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001i.0.scss new file mode 100644 index 0000000000..d48cc6477c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001i.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001i.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001j.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001j.0.scss new file mode 100644 index 0000000000..8662fec547 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001j.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001j.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001k.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001k.0.scss new file mode 100644 index 0000000000..ed1c00b772 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001k.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001k.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001l.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001l.0.scss new file mode 100644 index 0000000000..7e792b2f0b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-001l.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-001l.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002a.0.scss new file mode 100644 index 0000000000..76a2977e4f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002a.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002a.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002b.0.scss new file mode 100644 index 0000000000..1c468dc942 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002b.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002c.0.scss new file mode 100644 index 0000000000..17517332ea --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002c.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002c.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002d.0.scss new file mode 100644 index 0000000000..697822ae0a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002d.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002d.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002e.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002e.0.scss new file mode 100644 index 0000000000..20d8d46d16 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002e.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002e.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002f.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002f.0.scss new file mode 100644 index 0000000000..b0680028e7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002f.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002f.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002g.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002g.0.scss new file mode 100644 index 0000000000..67bc7ebadc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002g.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002g.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002h.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002h.0.scss new file mode 100644 index 0000000000..5c7c0a767d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002h.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002h.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002i.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002i.0.scss new file mode 100644 index 0000000000..810b088676 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-002i.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-002i.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-003.0.scss new file mode 100644 index 0000000000..71760d321c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-003.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-003.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-004.0.scss new file mode 100644 index 0000000000..7d18b5f0bb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-004.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-004.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-006.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-006.0.scss new file mode 100644 index 0000000000..5fae99411f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-006.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-006.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-007.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-007.0.scss new file mode 100644 index 0000000000..3e59471379 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-007.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-007.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008a.0.scss new file mode 100644 index 0000000000..840e4c41ac --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008a.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-008a.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008b.0.scss new file mode 100644 index 0000000000..b1e3f46489 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-008b.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008c.0.scss new file mode 100644 index 0000000000..9ccc845aa6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-008c.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-008c.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-009.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-009.0.scss new file mode 100644 index 0000000000..134414535f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-009.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-009.htm */ + + body > span { border: 3px solid blue } + body > span > span { border: 3px solid cyan } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-010.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-010.0.scss new file mode 100644 index 0000000000..62431c82a3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-010.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-010.htm */ + + body > span { border: 3px solid blue } + body > span > span { border: 3px solid cyan } + body > span > span:after { content: "Ten" } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-011.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-011.0.scss new file mode 100644 index 0000000000..2844241d70 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-011.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-011.htm */ + + body > span { border: 3px solid blue } + body > span > span { border: 3px solid cyan } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-012.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-012.0.scss new file mode 100644 index 0000000000..105753b69f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-012.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-012.htm */ + + #i { display: inline; border: 2px solid; } + #i:after { display: block; content: "Three"; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-013.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-013.0.scss new file mode 100644 index 0000000000..dd0da56c7d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-013.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-013.htm */ + + #i { border: 2px solid; } + #i:before { display: block; content: "One"; } + #i:after { content: "Three"; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-013.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-013.1.scss new file mode 100644 index 0000000000..fce9f7e44a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-013.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-013.htm */ +.style { display: none } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-014.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-014.0.scss new file mode 100644 index 0000000000..0d1f7f3a3e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-014.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-014.htm */ + + #i { border: 2px solid; } + #i:before { display: block; content: "One"; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-014.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-014.1.scss new file mode 100644 index 0000000000..4fb8ca38ec --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-014.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-014.htm */ +.style { display: none } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-015.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-015.0.scss new file mode 100644 index 0000000000..064cb0734c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-015.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-015.htm */ + + #i { display: inline; border: 2px solid; } + #i:after { display: block; content: "Three"; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016a.0.scss new file mode 100644 index 0000000000..27a0dd79bd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-016a.htm */ + + #i { border: 2px solid; } + #i:after { display: block; content: "Two"; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016a.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016a.1.scss new file mode 100644 index 0000000000..e2ddc868f4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016a.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-016a.htm */ +.style { display: none } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016b.0.scss new file mode 100644 index 0000000000..7b53f1212b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-016b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-016b.htm */ + + #i { border: 2px solid; } + #i:after { display: block; content: "Two"; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.0.scss new file mode 100644 index 0000000000..fb90ff7fde --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-017.htm */ +.style { width: 0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.1.scss new file mode 100644 index 0000000000..7efbd77d83 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-017.htm */ +.style { border: 2px solid blue; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.2.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.2.scss new file mode 100644 index 0000000000..95aac0261c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-insert-017.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-insert-017.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001a.0.scss new file mode 100644 index 0000000000..d683f3fa54 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001a.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-001a.htm */ +.style { direction: ltr; width: 100px; border: 1px solid green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001a.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001a.1.scss new file mode 100644 index 0000000000..aae6310bf0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001a.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-001a.htm */ +.style { display: block; height: 20px; width: 80px; margin: 10px; border: 5px solid black } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.0.scss new file mode 100644 index 0000000000..4a040231ea --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-001b.htm */ +.style { direction: ltr; width: 100px; border: 1px solid green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.1.scss new file mode 100644 index 0000000000..5f99cd4c5c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-001b.htm */ +.style { direction: rtl } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.2.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.2.scss new file mode 100644 index 0000000000..bede015e4e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-001b.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-001b.htm */ +.style { display: block; height: 20px; width: 80px; margin: 10px; border: 5px solid black } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002a.0.scss new file mode 100644 index 0000000000..7c7cbd0808 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002a.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-002a.htm */ +.style { direction: rtl; width: 100px; border: 1px solid green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002a.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002a.1.scss new file mode 100644 index 0000000000..305b8ac11a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002a.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-002a.htm */ +.style { display: block; height: 20px; width: 80px; margin: 10px; border: 5px solid black } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.0.scss new file mode 100644 index 0000000000..7b8252e044 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-002b.htm */ +.style { direction: rtl; width: 100px; border: 1px solid green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.1.scss new file mode 100644 index 0000000000..11e90f792e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-002b.htm */ +.style { direction: ltr } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.2.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.2.scss new file mode 100644 index 0000000000..3416f8de01 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-margins-002b.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-margins-002b.htm */ +.style { display: block; height: 20px; width: 80px; margin: 10px; border: 5px solid black } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-001.0.scss new file mode 100644 index 0000000000..e78538e895 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-nested-001.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-002.0.scss new file mode 100644 index 0000000000..9367c041d0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-002.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-nested-002.htm */ +.style { border: 5px solid blue } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-002.1.scss new file mode 100644 index 0000000000..fee6eb9e60 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-nested-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-nested-002.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-percents-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-percents-001.0.scss new file mode 100644 index 0000000000..efb841d5dc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-percents-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-percents-001.htm */ +.style { height: 200px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-percents-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-percents-001.1.scss new file mode 100644 index 0000000000..57e6d10c49 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-percents-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-percents-001.htm */ +.style { display: block; height: 50%; border: 10px solid black } diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-001.0.scss new file mode 100644 index 0000000000..ebe1d5373b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-001.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-remove-001.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-002.0.scss new file mode 100644 index 0000000000..ca9c6e7a45 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-002.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-remove-002.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-003.0.scss new file mode 100644 index 0000000000..dc223e8297 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-003.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-remove-003.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-004.0.scss new file mode 100644 index 0000000000..ed1891d7f0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-004.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-remove-004.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-005.0.scss new file mode 100644 index 0000000000..c3f1c4fcc0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-005.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-remove-005.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-006.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-006.0.scss new file mode 100644 index 0000000000..2f4d5643be --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-remove-006.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-remove-006.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-whitespace-001a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-whitespace-001a.0.scss new file mode 100644 index 0000000000..a0fdf69e23 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-whitespace-001a.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-whitespace-001a.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-whitespace-001b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-whitespace-001b.0.scss new file mode 100644 index 0000000000..4c860c2a7e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/block-in-inline-whitespace-001b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/block-in-inline-whitespace-001b.htm */ + + body > span { border: 3px solid blue } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.0.scss new file mode 100644 index 0000000000..898d753e68 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-001.htm */ + +td { border: 10px green outset;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.1.scss new file mode 100644 index 0000000000..7a2f6b66db --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-001.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.2.scss new file mode 100644 index 0000000000..bfd8fdb6e5 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-001.htm */ +.style { border-style:none } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.0.scss new file mode 100644 index 0000000000..e0dbae8b77 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-002.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.1.scss new file mode 100644 index 0000000000..a5f32321c6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-002.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.2.scss new file mode 100644 index 0000000000..49b52904b4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-002.htm */ +.style { border-width:11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-003.0.scss new file mode 100644 index 0000000000..8b018c1980 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-003.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-003.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-003.1.scss new file mode 100644 index 0000000000..c4dc834384 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-003.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.0.scss new file mode 100644 index 0000000000..1f0a0f3c56 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-004.htm */ + +td { border: 10px green outset;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.1.scss new file mode 100644 index 0000000000..14810d15b6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-004.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.2.scss new file mode 100644 index 0000000000..15f89578e1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-004.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-004.htm */ +.style { border-style:none } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.0.scss new file mode 100644 index 0000000000..5117efb468 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-005.htm */ + +td { border: 10px green outset;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.1.scss new file mode 100644 index 0000000000..2e248a0aaa --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-005.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.2.scss new file mode 100644 index 0000000000..15ba20a79f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-cell-005.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-cell-005.htm */ +.style { border-style:none } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.0.scss new file mode 100644 index 0000000000..d6af94204f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-001.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.1.scss new file mode 100644 index 0000000000..1d942d6b38 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-001.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.2.scss new file mode 100644 index 0000000000..27a43b6bd8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-001.htm */ +.style { border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.0.scss new file mode 100644 index 0000000000..ae15dde154 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-002.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.1.scss new file mode 100644 index 0000000000..8ee152dc38 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-002.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.2.scss new file mode 100644 index 0000000000..c6318a3584 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-002.htm */ +.style { border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.0.scss new file mode 100644 index 0000000000..0d7f407a9d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-003.htm */ + +td { border: 10px green outset;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.1.scss new file mode 100644 index 0000000000..e58b8bb8df --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-003.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.2.scss new file mode 100644 index 0000000000..cadad9538f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-colgroup-003.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-colgroup-003.htm */ +.style { border:outset green 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.0.scss new file mode 100644 index 0000000000..ba42b5052f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-001.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.1.scss new file mode 100644 index 0000000000..262d6bbedd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-001.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.2.scss new file mode 100644 index 0000000000..d32773435c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-001.htm */ +.style { border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.0.scss new file mode 100644 index 0000000000..4ca986a899 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-002.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.1.scss new file mode 100644 index 0000000000..caf207660d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-002.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.2.scss new file mode 100644 index 0000000000..f7228f354e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-002.htm */ +.style { border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.0.scss new file mode 100644 index 0000000000..d5b7eae31a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-003.htm */ + +td { border: 10px green outset;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.1.scss new file mode 100644 index 0000000000..4b42a2998c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-003.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.2.scss new file mode 100644 index 0000000000..a967891706 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-column-003.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-column-003.htm */ +.style { border:outset green 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.0.scss new file mode 100644 index 0000000000..070b886636 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-001.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.1.scss new file mode 100644 index 0000000000..0aec943a6c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-001.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.2.scss new file mode 100644 index 0000000000..1c23b85d86 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-001.htm */ +.style { border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.0.scss new file mode 100644 index 0000000000..7bfdeac373 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-002.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.1.scss new file mode 100644 index 0000000000..f50de68330 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-002.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.2.scss new file mode 100644 index 0000000000..62bb238c7a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-002.htm */ +.style { border:solid green 2px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.0.scss new file mode 100644 index 0000000000..a18235986c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-003.htm */ + +td { border: 10px green outset;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.1.scss new file mode 100644 index 0000000000..16f289c84f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-003.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.2.scss new file mode 100644 index 0000000000..0cef689399 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-row-003.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-row-003.htm */ +.style { border:outset green 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.0.scss new file mode 100644 index 0000000000..aa87c0c1d3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-001.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.1.scss new file mode 100644 index 0000000000..9d26fe3df3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-001.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.2.scss new file mode 100644 index 0000000000..7195bcef72 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-001.htm */ +.style { border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.0.scss new file mode 100644 index 0000000000..be951ef050 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-002.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.1.scss new file mode 100644 index 0000000000..8fde9220db --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-002.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.2.scss new file mode 100644 index 0000000000..86f188e449 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-002.htm */ +.style { border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.0.scss new file mode 100644 index 0000000000..7a94d7c74b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-003.htm */ + +td { border: 10px green outset;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.1.scss new file mode 100644 index 0000000000..2c43199f38 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-003.htm */ +.style { border-collapse:collapse } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.2.scss new file mode 100644 index 0000000000..08d7e668d6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-rowgroup-003.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-rowgroup-003.htm */ +.style { border:outset green 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-001.0.scss new file mode 100644 index 0000000000..98f04c7a57 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-table-001.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-001.1.scss new file mode 100644 index 0000000000..7a7cf28388 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-table-001.htm */ +.style { border-collapse:collapse; border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-002.0.scss new file mode 100644 index 0000000000..d5453532b4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-002.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-table-002.htm */ + +td { border: 10px green solid;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-002.1.scss new file mode 100644 index 0000000000..da3a1b0a1b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-table-002.htm */ +.style { border-collapse:collapse; border:solid green 11px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-003.0.scss new file mode 100644 index 0000000000..aff4d99c71 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-003.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-table-003.htm */ + +td { border: 10px green outset;} +table {margin: 30px} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-003.1.scss new file mode 100644 index 0000000000..fd48bad69d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-dynamic-table-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-dynamic-table-003.htm */ +.style { border-collapse:collapse; border:none green 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.0.scss new file mode 100644 index 0000000000..10da13d64d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-offset-001.htm */ + +td {width: 100px; text-align:center} +div {position:absolute; border:green 4px solid} + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.1.scss new file mode 100644 index 0000000000..c87fcbc76a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-offset-001.htm */ +.style { border-collapse:collapse; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.2.scss new file mode 100644 index 0000000000..340f309e2e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-offset-001.htm */ +.style { border:solid 4px orange; height:30px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.0.scss new file mode 100644 index 0000000000..d33ffa4284 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-offset-002.htm */ + +td {width: 100px; text-align:center} +caption {border:solid 4px green} + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.1.scss new file mode 100644 index 0000000000..88535218ab --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-offset-002.htm */ +.style { border-collapse:collapse; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.2.scss new file mode 100644 index 0000000000..ee3eb8c007 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/border-collapse-offset-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/border-collapse-offset-002.htm */ +.style { border:solid 4px orange; height:30px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/charset-attr-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/charset-attr-001.0.scss new file mode 100644 index 0000000000..b09d86f8f7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/charset-attr-001.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/charset-attr-001.htm */ + + body { color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/charset-attr-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/charset-attr-001.1.scss Binary files differnew file mode 100644 index 0000000000..bfaba9dc01 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/charset-attr-001.1.scss diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-1.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-1.0.scss new file mode 100644 index 0000000000..f0a8248396 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-1.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-1.html */ +li,p { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-10.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-10.0.scss new file mode 100644 index 0000000000..d0d1a14d60 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-10.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-10.html */ +p { background-color : red } +p[title$="bar"] { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-11.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-11.0.scss new file mode 100644 index 0000000000..ca558792b0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-11.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-11.html */ +p { background-color : red } +p[title*="bar"] { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-13.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-13.0.scss new file mode 100644 index 0000000000..344a9e8e46 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-13.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-13.html */ +li { background-color : red } +.t1 { background-color : lime } +li.t2 { background-color : lime } +.t3 { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14.0.scss new file mode 100644 index 0000000000..faf4d3c7cb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14.0.scss @@ -0,0 +1,10 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-14.html */ +p { background-color : red ; border : thick solid red ; padding : 1em } +p.t1 { background-color : lime } +p.t2 { border : thick solid green } + +div { background: green; color: white; } +div.teST { background: red; color: yellow; } +div.te { background: red; color: yellow; } +div.st { background: red; color: yellow; } +div.te.st { background: red; color: yellow; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-144.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-144.0.scss new file mode 100644 index 0000000000..c669785ac7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-144.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-144.html */ +div :not(:enabled):not(:disabled) { background: lime; } +p { background : red;} diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-148.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-148.0.scss new file mode 100644 index 0000000000..a41bb1ed85 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-148.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-148.html */ + + p { background: lime; } + p:empty { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-149.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-149.0.scss new file mode 100644 index 0000000000..23eba2f553 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-149.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-149.html */ + + address:empty { background: lime; } + address { background: red; margin: 0; height: 1em; } + .text { margin: -1em 0 0 0; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-149b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-149b.0.scss new file mode 100644 index 0000000000..ae6c5ca1c7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-149b.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-149b.html */ + + address:empty { background: lime; } + address { background: red; margin: 0; height: 1em; } + .text { margin: -1em 0 0 0; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14b.0.scss new file mode 100644 index 0000000000..5851edc2e3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14b.0.scss @@ -0,0 +1,10 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-14b.html */ + +p { background: green; color: white; } +.t1.fail { background: red; color: yellow; } +.fail.t1 { background: red; color: yellow; } +.t2.fail { background: red; color: yellow; } +.fail.t2 { background: red; color: yellow; } +/* Note: This is a valid test even per CSS1, since in CSS1 those rules + are invalid and should be dropped. */ + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14c.0.scss new file mode 100644 index 0000000000..d32fec8496 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14c.0.scss @@ -0,0 +1,9 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-14c.html */ + +p { background: red; color: yellow; } +p.t1.t2 { background: green; color: white; } +div { background: green; color: white; } +div.t1 { background: red; color: yellow; } +address { background: red; color: yellow; } +address.t5.t5 { background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14d.0.scss new file mode 100644 index 0000000000..3432db6913 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14d.0.scss @@ -0,0 +1,8 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-14d.html */ + +p { background: green; color: white; } +.t1:not(.t2) { background: red; color: yellow; } +:not(.t2).t1 { background: red; color: yellow; } +.t2:not(.t1) { background: red; color: yellow; } +:not(.t1).t2 { background: red; color: yellow; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14e.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14e.0.scss new file mode 100644 index 0000000000..979edeed91 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-14e.0.scss @@ -0,0 +1,9 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-14e.html */ + +p { background: green; color: white; } +p:not(.t1):not(.t2) { background: red; color: yellow; } +div { background: red; color: yellow; } +div:not(.t1) { background: green; color: white; } +address { background: green; color: white; } +address:not(.t5):not(.t5) { background: red; color: yellow; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-15.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-15.0.scss new file mode 100644 index 0000000000..ff1d3a2d9b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-15.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-15.html */ +li { background-color : red } +#t1 { background-color : lime } +li#t2 { background-color : lime } +li#t3 { background-color : lime } +#t4 { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-150.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-150.0.scss new file mode 100644 index 0000000000..bb9cc2cb7c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-150.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-150.html */ + + address:empty { background: lime; } + address { background: red; margin: 0; height: 1em; } + .text { margin: -1em 0 0 0; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-151.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-151.0.scss new file mode 100644 index 0000000000..ec229bdd33 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-151.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-151.html */ + + address { background: lime; margin: 0; height: 1em; } + address:empty { background: red; } + .text { margin: -1em 0 0 0; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-152.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-152.0.scss new file mode 100644 index 0000000000..bf765f8b5d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-152.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-152.html */ + + address { background: lime; margin: 0; height: 1em; } + address:empty { background: red; } + .text { margin: -1em 0 0 0; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155.0.scss new file mode 100644 index 0000000000..1f073c35b4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-155.html */ + + p { background: lime; } + .5cm { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155a.0.scss new file mode 100644 index 0000000000..9ce3a19428 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-155a.html */ + + p { background: lime; } + .\5cm { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155b.0.scss new file mode 100644 index 0000000000..83340f5351 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155b.0.scss @@ -0,0 +1,10 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-155b.html */ + + p { background: lime; } + .two\ words { background: red; } + + /* the "." and "~=" forms match on a space separated list of words. + In such a list, a word containing a space can never match, since it + would by definition be two words. */ + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155c.0.scss new file mode 100644 index 0000000000..516c8de4e0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155c.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-155c.html */ + + p { background: lime; } + .one.word { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155d.0.scss new file mode 100644 index 0000000000..6930469379 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-155d.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-155d.html */ + + .one\.word { background: lime; } + p { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156.0.scss new file mode 100644 index 0000000000..058b6b4290 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-156.html */ + + p { background: lime; } + foo & address, p { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156b.0.scss new file mode 100644 index 0000000000..033b8f59a9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-156b.html */ + + foo & address, p { background: red; } + p { background: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156c.0.scss new file mode 100644 index 0000000000..62d2a7ceb6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-156c.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-156c.html */ + + foo & address, p { background: red ! important; } + p { background: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-159.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-159.0.scss new file mode 100644 index 0000000000..6f85988756 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-159.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-159.html */ + + ::selection { background: lime; } + :selection { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-15b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-15b.0.scss new file mode 100644 index 0000000000..b2fb3ac6ae --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-15b.0.scss @@ -0,0 +1,9 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-15b.html */ + +p { background: green; color: white; } +#test#fail { background: red; color: yellow; } +#fail#test { background: red; color: yellow; } +#fail { background: red; color: yellow; } +div { background: red; color: yellow; } +#pass#pass { background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-16.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-16.0.scss new file mode 100644 index 0000000000..7b909a1ac1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-16.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-16.html */ +p.test a { background-color : red } +p.test *:link { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-160.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-160.0.scss new file mode 100644 index 0000000000..45c7c74e02 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-160.0.scss @@ -0,0 +1,7 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-160.html */ + + p { background: lime; } + p:subject { background: red; } /* this is not valid CSS, and if UAs + implemented the experimental :subject pseudo-class they should have + used the :-vnd-ident syntax. */ + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-161.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-161.0.scss new file mode 100644 index 0000000000..c10cdd2dfd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-161.0.scss @@ -0,0 +1,26 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-161.html */ + + p { background: lime; } + p * { background: lime; } + p > * { background: lime; } + p + * { background: lime; } + p ~ * { background: lime; } + + /* let's try some pseudos that are not valid CSS but are likely to + be implemented as extensions in some UAs. These should not be + recognised, as UAs implementing such extensions should use the + :-vnd-ident syntax. */ + + :canvas { background: red; } + :viewport { background: red; } + :window { background: red; } + :menu { background: red; } + :table { background: red; } + :select { background: red; } + ::canvas { background: red; } + ::viewport { background: red; } + ::window { background: red; } + ::menu { background: red; } + ::table { background: red; } + ::select { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-166.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-166.0.scss new file mode 100644 index 0000000000..de27d9ffd2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-166.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-166.html */ + + p:first-letter { background-color: red; } + p::first-letter { background-color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-166a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-166a.0.scss new file mode 100644 index 0000000000..ed465fe93b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-166a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-166a.html */ + + p::first-letter { background-color: red; } + p:first-letter { background-color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-167.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-167.0.scss new file mode 100644 index 0000000000..5aad6a87bd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-167.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-167.html */ + + p:first-line { background-color: red; } + p::first-line { background-color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-167a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-167a.0.scss new file mode 100644 index 0000000000..109defc654 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-167a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-167a.html */ + + p::first-line { background-color: red; } + p:first-line { background-color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-168.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-168.0.scss new file mode 100644 index 0000000000..81f5c1e9b1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-168.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-168.html */ + + span:before { background-color: red; content: 'FAILED'; } + span::before { background-color: lime; content: 'PASSED'; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-168a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-168a.0.scss new file mode 100644 index 0000000000..0898dd7d8c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-168a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-168a.html */ + + span::before { background-color: red; content: 'FAILED'; } + span:before { background-color: lime; content: 'PASSED'; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-169.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-169.0.scss new file mode 100644 index 0000000000..69ddf7fccc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-169.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-169.html */ + + span:after { background-color: red; content: 'FAILED'; } + span::after { background-color: lime; content: 'PASSED'; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-169a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-169a.0.scss new file mode 100644 index 0000000000..efb74238ec --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-169a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-169a.html */ + + span::after { background-color: red; content: 'FAILED'; } + span:after { background-color: lime; content: 'PASSED'; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-17.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-17.0.scss new file mode 100644 index 0000000000..2b881ad09d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-17.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-17.html */ +p.test a { background-color : red } +p.test *:visited { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170.0.scss new file mode 100644 index 0000000000..e33d2f5b12 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-170.html */ + + span { color: red; } + span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span, span { color: green } /* 2049 */ + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170a.0.scss new file mode 100644 index 0000000000..7d09cee5ee --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-170a.html */ + + .span { color: red; } + .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span, .span { color: green } /* 2049 */ + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170b.0.scss new file mode 100644 index 0000000000..9144c18516 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-170b.html */ + + .span { color: red; } + .span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span.span { color: green } /* 2049 */ + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170c.0.scss new file mode 100644 index 0000000000..adcf326e76 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170c.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-170c.html */ + + p.span { color: red; } + p:not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span):not(.span) { color: green } /* 2049 */ + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170d.0.scss new file mode 100644 index 0000000000..1ace26ae1f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-170d.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-170d.html */ + + p { color: red; } + p:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child:first-child { color: green } /* 2049 */ + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175a.0.scss new file mode 100644 index 0000000000..eb61d12ff2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-175a.html */ + + p { color: green; } + .13 { color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175b.0.scss new file mode 100644 index 0000000000..91066d4671 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-175b.html */ + + p { color: green; } + .\13 { color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175c.0.scss new file mode 100644 index 0000000000..d7555e9fa0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-175c.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-175c.html */ + + p { color: red; } + .\31 \33 { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-176.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-176.0.scss new file mode 100644 index 0000000000..474be8d9e8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-176.0.scss @@ -0,0 +1,11 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-176.html */ + +p { background: red; color: yellow; } +p:not(#other).class:not(.fail).test#id#id { background: green; color: white; } +div { background: green; color: white; } +div:not(#theid).class:not(.fail).test#theid#theid { background: red; color: yellow; } +div:not(#other).notclass:not(.fail).test#theid#theid { background: red; color: yellow; } +div:not(#other).class:not(.test).test#theid#theid { background: red; color: yellow; } +div:not(#other).class:not(.fail).nottest#theid#theid { background: red; color: yellow; } +div:not(#other).class:not(.fail).nottest#theid#other { background: red; color: yellow; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-177a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-177a.0.scss new file mode 100644 index 0000000000..29359bcba2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-177a.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-177a.html */ + + p:selection { color: yellow; background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-177b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-177b.0.scss new file mode 100644 index 0000000000..64f2c84901 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-177b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-177b.html */ + + div { color: green; } + p::first-child { color: yellow; background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-178.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-178.0.scss new file mode 100644 index 0000000000..92b765dff4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-178.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-178.html */ + + div { color: green; } + p:not(:first-line) { color: yellow; background: red; } + p:not(:after) { color: yellow; background: red; content: ' THIS TEST HAS FAILED! '; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-179.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-179.0.scss new file mode 100644 index 0000000000..ce5e3a8630 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-179.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-179.html */ + + p { color: green; } + span:first-line { background: red; color: yellow; font-size: 4em; } + span::first-line { background: red; color: yellow; font-size: 4em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-179a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-179a.0.scss new file mode 100644 index 0000000000..660e7508dc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-179a.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-179a.html */ + + p { color: green; } + p:first-line { background: red; color: yellow; font-size: 4em; } + p::first-line { background: red; color: yellow; font-size: 4em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18.0.scss new file mode 100644 index 0000000000..33067afba0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18.0.scss @@ -0,0 +1,8 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-18.html */ +p:hover { background-color : lime } +a:hover { background-color : lime } + +tr:hover { background-color : green } +td:hover { background-color : lime } + +table { border-spacing: 5px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-180a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-180a.0.scss new file mode 100644 index 0000000000..a7a641bcb6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-180a.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-180a.html */ + + p { color: green; } + p:first-letter { background: red; color: yellow; font-size: 4em; } + p::first-letter { background: red; color: yellow; font-size: 4em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-181.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-181.0.scss new file mode 100644 index 0000000000..24dbd1031d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-181.0.scss @@ -0,0 +1,15 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-181.html */ + + .cs { color: green; } + .cs P { background: red; color: yellow; } + .cs .a { background: red; color: yellow; } + .cs .span1 span { background: red; color: yellow; } + .cs .span2 { color: red; } + .cs .span2 SPAN { color: green; } + .cs .span2 span { background: red; color: yellow; } + .ci { color: red; } + .ci P { background: green; color: white; } + .ci .a { background: green; color: white; } + .ci .span1 span { background: green; color: white; } + .ci .span2 SPAN { background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184a.0.scss new file mode 100644 index 0000000000..7d5c5fd2d4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-184a.html */ + +p { color: lime; } +p[class$=""] { color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184b.0.scss new file mode 100644 index 0000000000..f0e5f98b15 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-184b.html */ + +p { color: lime; } +p[class^=""] { color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184c.0.scss new file mode 100644 index 0000000000..892f85f7f3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184c.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-184c.html */ + +p { color: lime; } +p[class*=""] { color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184d.0.scss new file mode 100644 index 0000000000..ad721d0131 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184d.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-184d.html */ + +p { color: red; } +p:not([class$=""]) { color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184e.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184e.0.scss new file mode 100644 index 0000000000..b1ae45984c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184e.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-184e.html */ + +p { color: red; } +p:not([class^=""]) { color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184f.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184f.0.scss new file mode 100644 index 0000000000..8d461ff6d6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-184f.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-184f.html */ + +p { color: red; } +p:not([class*=""]) { color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18a.0.scss new file mode 100644 index 0000000000..ccd04a2cef --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18a.0.scss @@ -0,0 +1,12 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-18a.html */ + +p { color: navy; } + +.a a:hover { background: green; color: white; } + +.b a:hover { background: red; color: yellow; } +.b a:link { background: green; color: white; } + +.c :link { background: green; color: white; } +.c :visited:hover { background: red; color: yellow; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18b.0.scss new file mode 100644 index 0000000000..87405f66f8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18b.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-18b.html */ +div:hover > p:first-child { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18c.0.scss new file mode 100644 index 0000000000..519cbce0ee --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-18c.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-18c.html */ + +:link, :visited { color: navy; text-decoration: none; } +:link:hover span { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-19.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-19.0.scss new file mode 100644 index 0000000000..8b13ef8766 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-19.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-19.html */ +a:active { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-19b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-19b.0.scss new file mode 100644 index 0000000000..c5ddec6c1d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-19b.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-19b.html */ +button:active { background: green; color: white; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-2.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-2.0.scss new file mode 100644 index 0000000000..ae64542b1c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-2.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-2.html */ +address { background-color: lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-20.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-20.0.scss new file mode 100644 index 0000000000..5a2ef60ca9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-20.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-20.html */ +a:focus { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21.0.scss new file mode 100644 index 0000000000..c391cb4d6f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-21.html */ +p:target { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21b.0.scss new file mode 100644 index 0000000000..ef7b904578 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21b.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-21b.html */ +p { background-color: lime; } +p:target { background-color: red; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21c.0.scss new file mode 100644 index 0000000000..842e11db74 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-21c.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-21c.html */ +:root { background-color: green; } +:target { background-color: red; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-22.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-22.0.scss new file mode 100644 index 0000000000..62a0370b78 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-22.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-22.html */ +ul > li { background-color : red } +li:lang(en-GB) { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-23.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-23.0.scss new file mode 100644 index 0000000000..4415be07a9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-23.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-23.html */ +button { background-color : red } +input { background-color : red } +button:enabled { background-color : lime } +input:enabled { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-24.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-24.0.scss new file mode 100644 index 0000000000..40f518adc3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-24.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-24.html */ +button { background-color : red } +input { background-color : red } +button:disabled { background-color : lime } +input:disabled { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-25.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-25.0.scss new file mode 100644 index 0000000000..a9d194c71e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-25.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-25.html */ +input, span { background-color : red } +input:checked, input:checked + span { background-color : lime} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27.0.scss new file mode 100644 index 0000000000..6451254f09 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-27.html */ +html { background-color : red } +*:root { background-color: lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27a.0.scss new file mode 100644 index 0000000000..4482386911 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27a.0.scss @@ -0,0 +1,17 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-27a.html */ + +:root:first-child { background-color: red; } +:root:last-child { background-color: red; } +:root:only-child { background-color: red; } +:root:nth-child(1) { background-color: red; } +:root:nth-child(n) { background-color: red; } +:root:nth-last-child(1) { background-color: red; } +:root:nth-last-child(n) { background-color: red; } +:root:first-of-type { background-color: red; } +:root:last-of-type { background-color: red; } +:root:only-of-type { background-color: red; } +:root:nth-of-type(1) { background-color: red; } +:root:nth-of-type(n) { background-color: red; } +:root:nth-last-of-type(1) { background-color: red; } +:root:nth-last-of-type(n) { background-color: red; } +p { color: green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27b.0.scss new file mode 100644 index 0000000000..a21c7dbf6d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-27b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-27b.html */ +* html { background-color: red; } +* :root { background-color: red; } +p { color: green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-28.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-28.0.scss new file mode 100644 index 0000000000..3546bfc898 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-28.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-28.html */ +.red { background-color : red } +ul > li:nth-child(odd) { background-color : lime } +ol > li:nth-child(even) { background-color : lime } +table.t1 tr:nth-child(-n+4) { background-color : lime } +table.t2 td:nth-child(3n+1) { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-28b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-28b.0.scss new file mode 100644 index 0000000000..a91ad30283 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-28b.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-28b.html */ +.green { background-color : lime ! important } +ul > li:nth-child(odd) { background-color : red } +ol > li:nth-child(even) { background-color : red } +table.t1 tr:nth-child(-n+4) { background-color : red } +table.t2 td:nth-child(3n+1) { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-29.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-29.0.scss new file mode 100644 index 0000000000..0860aa4956 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-29.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-29.html */ +.red { background-color : red } +ul > li:nth-last-child(odd) { background-color : green } +ol > li:nth-last-child(even) { background-color : green } +table.t1 tr:nth-last-child(-n+4) { background-color : green } +table.t2 td:nth-last-child(3n+1) { background-color : green } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-29b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-29b.0.scss new file mode 100644 index 0000000000..eb55cc8de4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-29b.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-29b.html */ +.green { background-color : lime ! important } +ul > li:nth-last-child(odd) { background-color : red } +ol > li:nth-last-child(even) { background-color : red } +table.t1 tr:nth-last-child(-n+4) { background-color : red } +table.t2 td:nth-last-child(3n+1) { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-30.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-30.0.scss new file mode 100644 index 0000000000..46d21fae2a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-30.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-30.html */ +.red { background-color : red } +p:nth-of-type(3) { background-color : lime } +dl > :nth-of-type(3n+1) { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-31.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-31.0.scss new file mode 100644 index 0000000000..de45ba5eb1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-31.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-31.html */ +.red { background-color : red } +p:nth-last-of-type(3) { background-color : lime } +dl > :nth-last-of-type(3n+1) { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-32.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-32.0.scss new file mode 100644 index 0000000000..5fbf5c2b5e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-32.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-32.html */ +.red { background-color : red } +.t1 td:first-child { background-color : lime } +p > *:first-child { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-33.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-33.0.scss new file mode 100644 index 0000000000..507ac1b3cb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-33.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-33.html */ +.red { background-color : red } +.t1 td:last-child { background-color : lime } +p > *:last-child { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-34.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-34.0.scss new file mode 100644 index 0000000000..697d635940 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-34.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-34.html */ +.red { background-color : red } +address { margin-bottom : 1em ; margin-left : 1em } +address:first-of-type { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-35.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-35.0.scss new file mode 100644 index 0000000000..0fee4326d0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-35.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-35.html */ +.red { background-color : red } +address { margin-bottom : 1em ; margin-left : 1em } +address:last-of-type { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-36.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-36.0.scss new file mode 100644 index 0000000000..5190600df7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-36.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-36.html */ +.red { background-color : red } +p:only-child { background-color : lime } +div.testText > div > p { margin-left : 1em } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-37.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-37.0.scss new file mode 100644 index 0000000000..37d2a23b4c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-37.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-37.html */ +.red { background-color : red } +.t1 :only-of-type { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-38.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-38.0.scss new file mode 100644 index 0000000000..9a039639b1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-38.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-38.html */ +p:first-line { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39.0.scss new file mode 100644 index 0000000000..5243f7505a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-39.html */ +p:first-letter { font-size : xx-large ; background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39a.0.scss new file mode 100644 index 0000000000..af6c66bd8a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39a.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-39a.html */ +p:first-letter { color: lime; font-size: xx-large; } +p:before { color: red; content: 'T'; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39b.0.scss new file mode 100644 index 0000000000..38ff4ba000 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39b.0.scss @@ -0,0 +1,2 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-39b.html */ +p::first-letter { font-size : xx-large ; background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39c.0.scss new file mode 100644 index 0000000000..f49d085ddb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-39c.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-39c.html */ +p::first-letter { color: lime; font-size: xx-large; } + p::before { color: red; content: 'T'; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-3a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-3a.0.scss new file mode 100644 index 0000000000..a53bb65f46 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-3a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-3a.html */ +* { color : lime } +ul, p { color : red } +*.t1 { color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-4.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-4.0.scss new file mode 100644 index 0000000000..232286f470 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-4.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-4.html */ +#foo { background-color : lime } +p { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-41.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-41.0.scss new file mode 100644 index 0000000000..12049ebc09 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-41.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-41.html */ +p::before { background-color : lime ; content : "GENERATED CONTENT "} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-41a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-41a.0.scss new file mode 100644 index 0000000000..9092fb307f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-41a.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-41a.html */ +p:before { background-color : lime ; content : "GENERATED CONTENT "} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-42.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-42.0.scss new file mode 100644 index 0000000000..2c7b3c5930 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-42.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-42.html */ +p::after { background-color : lime ; content : "GENERATED CONTENT "} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-42a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-42a.0.scss new file mode 100644 index 0000000000..319f9620b6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-42a.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-42a.html */ +p:after { background-color : lime ; content : "GENERATED CONTENT "} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-43.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-43.0.scss new file mode 100644 index 0000000000..6bac1431f1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-43.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-43.html */ +.white { background-color: transparent ! important; } +.red { background-color: red; } +div.t1 p { background-color: lime; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-43b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-43b.0.scss new file mode 100644 index 0000000000..57d2e390f0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-43b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-43b.html */ +.white { background-color: transparent ! important; } +.green { background-color: lime; } +div.t1 p { background-color: red; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44.0.scss new file mode 100644 index 0000000000..909bbca20e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-44.html */ +.white { background-color: transparent ! important; } +.red { background-color: red; } +div > p.test { background-color: lime; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44b.0.scss new file mode 100644 index 0000000000..b26c14087f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-44b.html */ +.white { background-color: transparent ! important; } +.green { background-color: lime; } +div > p.test { background-color: red; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44c.0.scss new file mode 100644 index 0000000000..9279385479 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44c.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-44c.html */ + + .fail > div { background: red; color: yellow; } + .control { background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44d.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44d.0.scss new file mode 100644 index 0000000000..a8ed5ed793 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-44d.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-44d.html */ + + #fail > div { background: red; } + p { background: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45.0.scss new file mode 100644 index 0000000000..3de4e06318 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-45.html */ +.red { background-color : red } +div.stub > p + p { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45b.0.scss new file mode 100644 index 0000000000..02ddbde845 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-45b.html */ +.green { background-color: lime; } +.white { background-color: transparent ! important; } +div.stub > p + p { background-color: red; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45c.0.scss new file mode 100644 index 0000000000..6ed552f04e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-45c.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-45c.html */ + + .fail + div { background: red; } + .control { background: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-46.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-46.0.scss new file mode 100644 index 0000000000..be3866cefe --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-46.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-46.html */ +.red { background-color : red } +div.stub > p ~ p { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-46b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-46b.0.scss new file mode 100644 index 0000000000..4de9c09290 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-46b.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-46b.html */ +.green { background-color : lime ! important } +div.stub > p ~ p { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-5.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-5.0.scss new file mode 100644 index 0000000000..acf0689798 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-5.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-5.html */ +p { background-color : red } +p[title] { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-54.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-54.0.scss new file mode 100644 index 0000000000..4be84ca7f0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-54.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-54.html */ +div.stub > * { color : red } +div.stub *:not([title^="si on"]) { color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-55.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-55.0.scss new file mode 100644 index 0000000000..eb3a0e6341 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-55.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-55.html */ +div.stub > * { color : red } +div.stub *:not([title$="tait"]) { color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-56.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-56.0.scss new file mode 100644 index 0000000000..e9a01bdad8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-56.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-56.html */ +div.stub > * { color : red } +div.stub *:not([title*=" on"]) { color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-59.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-59.0.scss new file mode 100644 index 0000000000..8c8d5d061c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-59.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-59.html */ +div.stub > * { color : red } +div.stub *:not(.foo) { color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-6.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-6.0.scss new file mode 100644 index 0000000000..514e4c3a8c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-6.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-6.html */ +address { background-color : red } +address[title="foo"] { background-color : lime } +span[title="a"] { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-60.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-60.0.scss new file mode 100644 index 0000000000..726b9f378b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-60.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-60.html */ +div.stub > * { color : red } +div.stub *:not(#foo) { color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-61.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-61.0.scss new file mode 100644 index 0000000000..2b346351b6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-61.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-61.html */ +div.stub > * { background-color : red } +div.stub *:not(:link) { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-62.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-62.0.scss new file mode 100644 index 0000000000..4181d2eec7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-62.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-62.html */ +div.stub > * { background-color : red } +div.stub *:not(:visited) { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-63.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-63.0.scss new file mode 100644 index 0000000000..24d4e99c5d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-63.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-63.html */ +div.stub * { color: lime; text-decoration: none; } +div.stub > * > *:not(:hover) { color: black } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-64.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-64.0.scss new file mode 100644 index 0000000000..480b30d221 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-64.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-64.html */ +div.stub * { color : lime } +div.stub > * > *:not(:active) { color : black } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-65.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-65.0.scss new file mode 100644 index 0000000000..30615dc8ef --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-65.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-65.html */ +a:not(:focus) { background-color: transparent; } +a { background-color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-66.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-66.0.scss new file mode 100644 index 0000000000..6532029b34 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-66.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-66.html */ +p { background-color: navy; color: white; } +p:not(:target) { background-color: white; color: black; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-66b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-66b.0.scss new file mode 100644 index 0000000000..6323784598 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-66b.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-66b.html */ +p { background-color: red; } +p:not(:target) { background-color: lime; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-67.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-67.0.scss new file mode 100644 index 0000000000..4e177b1149 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-67.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-67.html */ +div.stub * { background-color : red } +div.stub *:not(:lang(fr)) { background-color : green } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-68.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-68.0.scss new file mode 100644 index 0000000000..b6f16cb7a8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-68.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-68.html */ +button { background-color : red } +input { background-color : red } +button:not(:enabled) { background-color : lime } +input:not(:enabled) { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-69.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-69.0.scss new file mode 100644 index 0000000000..9f407b8406 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-69.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-69.html */ +button { background-color : red } +input { background-color : red } +button:not(:disabled) { background-color : lime } +input:not(:disabled) { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-7.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-7.0.scss new file mode 100644 index 0000000000..8f1a711e3e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-7.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-7.html */ +p { background-color : red } +p[class~="b"] { background-color : lime } +address { background-color : red } +address[title~="foo"] { background-color : lime } +span[class~="b"] { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-70.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-70.0.scss new file mode 100644 index 0000000000..23ec933cc2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-70.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-70.html */ +input, span { background-color : red } +input:not(:checked), input:not(:checked) + span { background-color : lime} diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-72.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-72.0.scss new file mode 100644 index 0000000000..ee7aae040e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-72.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-72.html */ +p:not(:root) { background-color: lime; } +div * { background-color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-72b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-72b.0.scss new file mode 100644 index 0000000000..2e52ad5595 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-72b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-72b.html */ +html:not(:root), test:not(:root) { background-color: red; } +p { background-color: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-77.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-77.0.scss new file mode 100644 index 0000000000..43036386f6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-77.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-77.html */ +.red { background-color : red } +.t1 td:not(:first-child) { background-color : lime } +p > *:not(:first-child) { background-color : lime } +table.t1 td { border : thin black solid } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-77b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-77b.0.scss new file mode 100644 index 0000000000..fd95f40ed5 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-77b.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-77b.html */ +.green { background-color : lime ! important } +.t1 td:not(:first-child) { background-color : red } +p > *:not(:first-child) { background-color : red } +table.t1 td { border : thin black solid } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-78.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-78.0.scss new file mode 100644 index 0000000000..4d99f1ceca --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-78.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-78.html */ +.red { background-color : red } +.t1 td:not(:last-child) { background-color : lime } +p > *:not(:last-child) { background-color : lime } +table.t1 td { border : thin black solid } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-78b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-78b.0.scss new file mode 100644 index 0000000000..8e3c173b9c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-78b.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-78b.html */ +.green { background-color : lime ! important } +.t1 td:not(:last-child) { background-color : red } +p > *:not(:last-child) { background-color : red } +table.t1 td { border : thin black solid } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-79.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-79.0.scss new file mode 100644 index 0000000000..1d1ff21830 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-79.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-79.html */ +.red { background-color : red } +address { margin-bottom : 1em ; margin-left : 1em } +address:not(:first-of-type) { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-7b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-7b.0.scss new file mode 100644 index 0000000000..8043e647d2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-7b.0.scss @@ -0,0 +1,9 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-7b.html */ + +p { background: lime; } +[title~="hello world"] { background: red; } +/* Section 6.3.1: Represents the att attribute whose value is a +space-separated list of words, one of which is exactly "val". If this +selector is used, the words in the value must not contain spaces +(since they are separated by spaces). */ + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-8.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-8.0.scss new file mode 100644 index 0000000000..8afa5ca99d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-8.0.scss @@ -0,0 +1,6 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-8.html */ +p { background-color : red } +p[lang|="en"] { background-color : lime } +address { background-color : red } +address[lang="fi"] { background-color : lime } +span[lang|="fr"] { background-color : red } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-80.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-80.0.scss new file mode 100644 index 0000000000..697846a18f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-80.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-80.html */ +.red { background-color : red } +address { margin-bottom : 1em ; margin-left : 1em } +address:not(:last-of-type) { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-81.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-81.0.scss new file mode 100644 index 0000000000..7b6f700901 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-81.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-81.html */ +.red { background-color : red } +p:not(:only-child) { background-color : lime } +div.testText > div > p { margin-left : 1em } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-81b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-81b.0.scss new file mode 100644 index 0000000000..af6a6cb054 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-81b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-81b.html */ +.green { background-color : lime ! important } +p:not(:only-child) { background-color : lime } +div.testText > div > p { margin-left : 1em } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-82.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-82.0.scss new file mode 100644 index 0000000000..5869d3161a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-82.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-82.html */ +.red { background-color : red } +.t1 *:not(:only-of-type) { background-color : lime } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-82b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-82b.0.scss new file mode 100644 index 0000000000..c9e4c2cc94 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-82b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-82b.html */ +.green { background-color : lime ! important } +.t1 *:not(:only-of-type) { background-color : red } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-86.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-86.0.scss new file mode 100644 index 0000000000..7022b8c830 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-86.0.scss @@ -0,0 +1,4 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-86.html */ +p { color: red; } +blockquote > div p { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-87.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-87.0.scss new file mode 100644 index 0000000000..275d4274ca --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-87.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-87.html */ +p { color: red; } +blockquote + div ~ p { color: green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-87b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-87b.0.scss new file mode 100644 index 0000000000..1776b027f7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-87b.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-87b.html */ +p { color: green ! important; } +blockquote + div ~ p { color: red; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-88.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-88.0.scss new file mode 100644 index 0000000000..57814ed7c0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-88.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-88.html */ +p { color: red; } +blockquote + div p { color: green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-88b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-88b.0.scss new file mode 100644 index 0000000000..2d0e34e3c8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-88b.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-88b.html */ +p { color: green ! important; } +blockquote + div p { color: red; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-89.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-89.0.scss new file mode 100644 index 0000000000..d6c797e143 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-89.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-89.html */ +p { color: red; } +blockquote div > p { color: green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-9.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-9.0.scss new file mode 100644 index 0000000000..cba3eded20 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-9.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-9.html */ +p { background-color : red } +p[title^="foo"] { background-color : lime } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-90.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-90.0.scss new file mode 100644 index 0000000000..32175261e4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-90.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-90.html */ +p { color: red; } +blockquote ~ div + p { color: green; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-90b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-90b.0.scss new file mode 100644 index 0000000000..afcdbafe4d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-90b.0.scss @@ -0,0 +1,3 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-90b.html */ +p { color: green ! important; } +blockquote ~ div + p { color: red; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d1.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d1.0.scss new file mode 100644 index 0000000000..b669874e11 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d1.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-d1.html */ + + #test { background: red; display: block; padding: 1em; } + #test:not(:empty) { background: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d1b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d1b.0.scss new file mode 100644 index 0000000000..0ac92bcd18 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d1b.0.scss @@ -0,0 +1,7 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-d1b.html */ + + #test1 { background: red; display: block; padding: 1em; margin: 1em; } + #test1:empty { background: lime; } + #test2 { background: lime; display: block; padding: 1em; margin: 1em; } + #test2:empty { background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d2.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d2.0.scss new file mode 100644 index 0000000000..c3f0544bb5 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d2.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-d2.html */ + + #test { background: red; display: block; padding: 1em; } + #stub ~ div div + div > div { background: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d4.0.scss b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d4.0.scss new file mode 100644 index 0000000000..dbf2bdda74 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/css3-modsel-d4.0.scss @@ -0,0 +1,5 @@ +/* Source: http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-d4.html */ + + #two:first-child { background: red; } + #three:last-child { background: lime; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-001.0.scss new file mode 100644 index 0000000000..7e94325735 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-001.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-001.0.scss new file mode 100644 index 0000000000..3e68199d28 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-001.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-dynamic-001.htm */ + + span:before { content: open-quote; } + span:after { content: close-quote; } + span { quotes: '"' '"'; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-003a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-003a.0.scss new file mode 100644 index 0000000000..30c5445777 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-003a.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-dynamic-003a.htm */ + + div#x:first-letter { color: blue; float: left; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-003b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-003b.0.scss new file mode 100644 index 0000000000..37e3dee7fd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-dynamic-003b.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-dynamic-003b.htm */ + + div#x:first-letter { color: blue; float: none } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-inherit-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-inherit-001.0.scss new file mode 100644 index 0000000000..4aea22c740 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-inherit-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-inherit-001.htm */ + +div { float: left; overflow: scroll; font-size: 50px; width: 3em; line-height: 10px } +div:first-letter { float: inherit; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-inherit-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-inherit-001.1.scss new file mode 100644 index 0000000000..9bc48c3a71 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-inherit-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-inherit-001.htm */ +.style { font-size: 10px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-001.0.scss new file mode 100644 index 0000000000..7d79ae49d8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-nested-001.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-002.0.scss new file mode 100644 index 0000000000..8ab9328de6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-002.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-nested-002.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-003.0.scss new file mode 100644 index 0000000000..2c2b8a906f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-003.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-nested-003.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-004.0.scss new file mode 100644 index 0000000000..b568b4430b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-004.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-nested-004.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-005.0.scss new file mode 100644 index 0000000000..d5f9376161 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-005.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-nested-005.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-006.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-006.0.scss new file mode 100644 index 0000000000..fc0089ccde --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-006.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-nested-006.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-007.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-007.0.scss new file mode 100644 index 0000000000..5fbf16bc9d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-nested-007.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-nested-007.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-001.0.scss new file mode 100644 index 0000000000..ba956560c8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-quote-001.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-002.0.scss new file mode 100644 index 0000000000..a5f95536b7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-002.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-quote-002.htm */ + + div { color: black; } + div:first-letter { color: green; } + span:before { content: open-quote; } + span:after { content: close-quote; } + span { quotes: '"' '"'; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-003.0.scss new file mode 100644 index 0000000000..849c55abf5 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-003.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-quote-003.htm */ + + div { color: black; } + div:first-letter { color: green; } + span:before { content: open-quote "This "; } + span:after { content: close-quote; } + span { quotes: '"' '"'; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-004.0.scss new file mode 100644 index 0000000000..96706e1f1e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-004.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-quote-004.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-005.0.scss new file mode 100644 index 0000000000..15214106ba --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-005.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-quote-005.htm */ + + div { color: black; } + div:first-letter { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-006.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-006.0.scss new file mode 100644 index 0000000000..970e5b70b0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-letter-quote-006.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-letter-quote-006.htm */ + + div { color: black; } + div:first-letter { color: green; } + span:before { content: "\"This "; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-001.0.scss new file mode 100644 index 0000000000..74973ac9a1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-001.htm */ + + body { color: red } + body:first-line { color: green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-001.0.scss new file mode 100644 index 0000000000..5cec148572 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-floats-001.htm */ + + div { color: green } + div:first-line { color: red } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-001.1.scss new file mode 100644 index 0000000000..59ddfc8476 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-floats-001.htm */ +.style { float: left } diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-002.0.scss new file mode 100644 index 0000000000..89f8cbdeda --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-002.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-floats-002.htm */ + + div { color: red } + div:first-line { color: green } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-002.1.scss new file mode 100644 index 0000000000..716528bfc2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-floats-002.htm */ +.style { float: left } diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-003.0.scss new file mode 100644 index 0000000000..8b793f90aa --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-003.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-floats-003.htm */ + + div { color: green } + div:first-line { color: red } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-003.1.scss new file mode 100644 index 0000000000..1da72d9761 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-floats-003.htm */ +.style { float: left } diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-004.0.scss new file mode 100644 index 0000000000..cade4a2861 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-floats-004.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-floats-004.htm */ + + div { color: green } + div:first-line { color: red } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-001.0.scss new file mode 100644 index 0000000000..c5e5fe5468 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-001.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-inherit-001.htm */ + + +.a:first-line { } +.a { overflow: scroll; } +.b, .c { overflow: inherit; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-002.0.scss new file mode 100644 index 0000000000..ea1027fc24 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-002.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-inherit-002.htm */ + + div { background: green; } + div:first-line { background-color: red; } + span.one { background: inherit; } + span.two { background-color: inherit; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-003.0.scss new file mode 100644 index 0000000000..f498981952 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/first-line-inherit-003.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/first-line-inherit-003.htm */ + + div, p { background: green; } + div:first-line, p:first-line { background-color: red; } + span.one { background: inherit; } + span.two { background-color: inherit; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.0.scss new file mode 100644 index 0000000000..9358f2916e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001a.htm */ + +.left { float:left; } +.right { float:right; } +.left, .right { width:50px; height:50px; background:yellow; } +p { overflow:auto; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.1.scss new file mode 100644 index 0000000000..d803b8ffd2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001a.htm */ +.style { width:400px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.2.scss new file mode 100644 index 0000000000..0a22209fb1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001a.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001a.htm */ +.style { text-align:right; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.0.scss new file mode 100644 index 0000000000..80fe2ff996 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001b.htm */ + +.left { float:left; } +.right { float:right; } +.left, .right { width:50px; height:50px; background:yellow; } +p { overflow:auto; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.1.scss new file mode 100644 index 0000000000..3992160e83 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001b.htm */ +.style { width:400px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.2.scss new file mode 100644 index 0000000000..f19a8d2088 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001b.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001b.htm */ +.style { text-align:right; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.0.scss new file mode 100644 index 0000000000..19d1d26dc5 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001c.htm */ + +.left { float:left; } +.right { float:right; } +.left, .right { width:50px; height:50px; background:yellow; } +p { overflow:auto; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.1.scss new file mode 100644 index 0000000000..c3143dca78 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001c.htm */ +.style { width:400px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.2.scss new file mode 100644 index 0000000000..e52a60f4ed --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-001c.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-001c.htm */ +.style { text-align:right; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.0.scss new file mode 100644 index 0000000000..4141a2ba00 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-003.htm */ +.style { width:100px; font-size:5px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.1.scss new file mode 100644 index 0000000000..aecdad0621 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-003.htm */ +.style { background:blue; width:100px; height:100px; float:left; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.2.scss new file mode 100644 index 0000000000..2e7fc3e31e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-003.htm */ +.style { background:yellow; width:30px; height:30px; float:left; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.3.scss new file mode 100644 index 0000000000..bacc9de7c9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-003.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-003.htm */ +.style { background:yellow; width:30px; height:30px; float:right; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.0.scss new file mode 100644 index 0000000000..a1f23b9119 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-004.htm */ +.style { width:200px; font-size:5px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.1.scss new file mode 100644 index 0000000000..be86a0b01e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-004.htm */ +.style { background:green; width:100px; height:100px; float:left; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.2.scss new file mode 100644 index 0000000000..b9c4341835 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-placement-vertical-004.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-placement-vertical-004.htm */ +.style { background:blue; width:100px; height:100px; float:left; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.0.scss new file mode 100644 index 0000000000..1f12c6fb78 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-left-001.htm */ +.style { float: left; width: 500px; height: 500px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.1.scss new file mode 100644 index 0000000000..155ae9bb17 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-left-001.htm */ +.style { float: right; width: 50px; height: 300px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.2.scss new file mode 100644 index 0000000000..03921ad64e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-left-001.htm */ +.style { margin-right: 100px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.3.scss new file mode 100644 index 0000000000..82327074bf --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-001.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-left-001.htm */ +.style { float: left; width: 425px; height: 10px; background: blue } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.0.scss new file mode 100644 index 0000000000..b0659ed170 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-left-002.htm */ +.style { float: left; width: 500px; height: 500px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.1.scss new file mode 100644 index 0000000000..51d4aae421 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-left-002.htm */ +.style { float: right; width: 50px; height: 300px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.2.scss new file mode 100644 index 0000000000..b64d557e23 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-left-002.htm */ +.style { margin-right: 100px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.3.scss new file mode 100644 index 0000000000..667087faba --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-left-002.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-left-002.htm */ +.style { float: left; width: 475px; height: 10px; background: blue } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.0.scss new file mode 100644 index 0000000000..bb6604d005 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-right-001.htm */ +.style { float: left; width: 500px; height: 500px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.1.scss new file mode 100644 index 0000000000..7ee24227e9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-right-001.htm */ +.style { float: left; width: 50px; height: 300px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.2.scss new file mode 100644 index 0000000000..1d11bdf6dc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-right-001.htm */ +.style { margin-left: 100px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.3.scss new file mode 100644 index 0000000000..2ce67f6358 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-001.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-right-001.htm */ +.style { float: right; width: 425px; height: 10px; background: blue } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.0.scss new file mode 100644 index 0000000000..02936f2d05 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-right-002.htm */ +.style { float: left; width: 500px; height: 500px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.1.scss new file mode 100644 index 0000000000..62e70dc857 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-right-002.htm */ +.style { float: left; width: 50px; height: 300px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.2.scss new file mode 100644 index 0000000000..33158539ba --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-right-002.htm */ +.style { margin-left: 100px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.3.scss new file mode 100644 index 0000000000..b657772275 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule3-outside-right-002.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule3-outside-right-002.htm */ +.style { float: right; width: 475px; height: 10px; background: blue } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.0.scss new file mode 100644 index 0000000000..a0b07a7d20 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule7-outside-left-001.htm */ +.style { float: left; width: 500px; height: 500px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.1.scss new file mode 100644 index 0000000000..282d40f7de --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule7-outside-left-001.htm */ +.style { float: left; width: 50px; height: 300px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.2.scss new file mode 100644 index 0000000000..ab40480544 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule7-outside-left-001.htm */ +.style { margin-left: 100px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.3.scss new file mode 100644 index 0000000000..3d1bced7d2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-left-001.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule7-outside-left-001.htm */ +.style { float: left; width: 425px; height: 10px; background: blue } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.0.scss new file mode 100644 index 0000000000..808f90847a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule7-outside-right-001.htm */ +.style { float: left; width: 500px; height: 500px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.1.scss new file mode 100644 index 0000000000..2591c3de52 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule7-outside-right-001.htm */ +.style { float: right; width: 50px; height: 300px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.2.scss new file mode 100644 index 0000000000..2ca9103b55 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule7-outside-right-001.htm */ +.style { margin-right: 100px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.3.scss new file mode 100644 index 0000000000..a051758341 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-rule7-outside-right-001.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-rule7-outside-right-001.htm */ +.style { float: right; width: 425px; height: 10px; background: blue } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.0.scss new file mode 100644 index 0000000000..55dbbeebaa --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ + + + table { margin: 0; border-spacing: 0; } + td, th { padding: 0; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.1.scss new file mode 100644 index 0000000000..59d553acc3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ +.style { background: aqua } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.12.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.12.scss new file mode 100644 index 0000000000..941f9b0c43 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.12.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ +.style { float:right; background:blue; width: 100px; height: 20px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.2.scss new file mode 100644 index 0000000000..231f1d76cf --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ +.style { float:left; background:blue; width: 100px; height: 20px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.24.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.24.scss new file mode 100644 index 0000000000..5304225969 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.24.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ +.style { overflow: hidden; background: yellow } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.3.scss new file mode 100644 index 0000000000..0ffa20c60c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ +.style { float:left; background:silver; width: 100px; height: 6px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.4.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.4.scss new file mode 100644 index 0000000000..3af0c41084 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ +.style { background: yellow } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.5.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.5.scss new file mode 100644 index 0000000000..70e5ab27a3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ +.style { width: 150px; height: 10px; background: purple } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.8.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.8.scss new file mode 100644 index 0000000000..4f0231e636 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-004.8.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-004.htm */ +.style { float:right; background:silver; width: 100px; height: 6px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.0.scss new file mode 100644 index 0000000000..87b04d41d4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.0.scss @@ -0,0 +1,9 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-005.htm */ + + + body { font-size: 10px; } + + table { margin: 0; border-spacing: 0; } + td, th { padding: 0; vertical-align: top; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.1.scss new file mode 100644 index 0000000000..4ed6811ec4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-005.htm */ +.style { background: aqua } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.2.scss new file mode 100644 index 0000000000..04ba12051e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-005.htm */ +.style { float:left; background:blue; width: 200px; height: 20px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.3.scss new file mode 100644 index 0000000000..59ff5a258e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-005.htm */ +.style { background: yellow } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.5.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.5.scss new file mode 100644 index 0000000000..1f9328855c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-005.htm */ +.style { float:right; background:blue; width: 200px; height: 20px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.9.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.9.scss new file mode 100644 index 0000000000..53a68a0469 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-005.9.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-005.htm */ +.style { overflow:hidden; background: yellow; width: 50%; height: 20px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.0.scss new file mode 100644 index 0000000000..ca6d5ed844 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.0.scss @@ -0,0 +1,12 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ + + + body { font-size: 16px; } + + table { margin: 0; border-spacing: 0; } + caption, td, th { padding: 0; vertical-align: top; text-align: left; } + + table table caption { background: yellow; } + table table { background: purple; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.1.scss new file mode 100644 index 0000000000..beba9cf330 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { background: aqua } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.10.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.10.scss new file mode 100644 index 0000000000..49c74a97d9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.10.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:110px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.11.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.11.scss new file mode 100644 index 0000000000..deee635381 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.11.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:105px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.12.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.12.scss new file mode 100644 index 0000000000..fdb260729a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.12.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:100px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.13.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.13.scss new file mode 100644 index 0000000000..4522f57cb8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.13.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:95px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.131.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.131.scss new file mode 100644 index 0000000000..a274d6ee7f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.131.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { caption-side: bottom; height:30px; width: 192px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.14.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.14.scss new file mode 100644 index 0000000000..b49fd302a9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.14.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:90px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.15.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.15.scss new file mode 100644 index 0000000000..2a29f56c3f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.15.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:85px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.16.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.16.scss new file mode 100644 index 0000000000..e8f11cc823 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.16.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:80px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.17.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.17.scss new file mode 100644 index 0000000000..231f28519c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.17.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:75px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.18.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.18.scss new file mode 100644 index 0000000000..a4f78671cb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.18.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:70px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.19.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.19.scss new file mode 100644 index 0000000000..9e9e29d19c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.19.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:65px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.2.scss new file mode 100644 index 0000000000..501590ad5d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:150px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.20.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.20.scss new file mode 100644 index 0000000000..126280a6fe --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.20.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:60px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.21.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.21.scss new file mode 100644 index 0000000000..a7228173da --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.21.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:55px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.22.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.22.scss new file mode 100644 index 0000000000..0cc681c041 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.22.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:50px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.23.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.23.scss new file mode 100644 index 0000000000..f2c07e7838 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.23.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:45px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.24.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.24.scss new file mode 100644 index 0000000000..b8e2c5796e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.24.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:40px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.25.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.25.scss new file mode 100644 index 0000000000..ce05ee6888 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.25.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:35px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.26.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.26.scss new file mode 100644 index 0000000000..d5ab773c5f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.26.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:30px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.27.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.27.scss new file mode 100644 index 0000000000..3385f4ea30 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.27.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:25px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.28.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.28.scss new file mode 100644 index 0000000000..6022a36c29 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.28.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:20px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.29.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.29.scss new file mode 100644 index 0000000000..a352e1fa56 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.29.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:15px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.3.scss new file mode 100644 index 0000000000..29eb47aa2f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:145px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.30.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.30.scss new file mode 100644 index 0000000000..5bacfae2f3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.30.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:10px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.31.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.31.scss new file mode 100644 index 0000000000..0a8445e2b0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.31.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:5px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.32.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.32.scss new file mode 100644 index 0000000000..ba50d0bd65 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.32.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { caption-side: top; height:30px; width: 100px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.33.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.33.scss new file mode 100644 index 0000000000..2dc59a3264 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.33.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { height: 30px; width: 230px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.4.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.4.scss new file mode 100644 index 0000000000..97ec1f9113 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:140px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.5.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.5.scss new file mode 100644 index 0000000000..0778fc55c9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:135px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.6.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.6.scss new file mode 100644 index 0000000000..eee0117225 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.6.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:130px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.65.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.65.scss new file mode 100644 index 0000000000..7c9e6eda76 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.65.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { caption-side: top; height:30px; width: 190px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.66.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.66.scss new file mode 100644 index 0000000000..bb41e0cbaf --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.66.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { height: 30px; width: 100px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.7.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.7.scss new file mode 100644 index 0000000000..764745abb1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.7.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:125px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.8.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.8.scss new file mode 100644 index 0000000000..ae65d3d2e4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.8.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:120px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.9.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.9.scss new file mode 100644 index 0000000000..c86cc30a7c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.9.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { float:left; clear:left; background:blue; width:115px; height:1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.98.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.98.scss new file mode 100644 index 0000000000..9cd7749821 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.98.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { caption-side: bottom; height:30px; width: 100px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.99.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.99.scss new file mode 100644 index 0000000000..eabd2b81b7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-006.99.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-006.htm */ +.style { height: 30px; width: 227px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.0.scss new file mode 100644 index 0000000000..fe79ead93b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ + + + table { margin: 0; border-spacing: 0; } + td, th { padding: 0; vertical-align: top; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.1.scss new file mode 100644 index 0000000000..da32416752 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { background: aqua } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.15.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.15.scss new file mode 100644 index 0000000000..dc37b6963d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.15.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; margin-bottom: 5px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.16.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.16.scss new file mode 100644 index 0000000000..c2fed6240b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.16.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 5px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.19.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.19.scss new file mode 100644 index 0000000000..a656c57cf1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.19.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; margin-bottom: 10px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.2.scss new file mode 100644 index 0000000000..bcd2f016b0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { float: left; height: 10px; width: 150px; background: blue } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.20.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.20.scss new file mode 100644 index 0000000000..64956d2143 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.20.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: -5px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.23.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.23.scss new file mode 100644 index 0000000000..9796be893b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.23.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; margin-bottom: -5px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.24.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.24.scss new file mode 100644 index 0000000000..7842444780 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.24.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 10px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.27.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.27.scss new file mode 100644 index 0000000000..d2e20e04cc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.27.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; margin-bottom: 4px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.28.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.28.scss new file mode 100644 index 0000000000..74db9f2d40 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.28.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 4px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.3.scss new file mode 100644 index 0000000000..b50e1429ae --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; margin-bottom: 6px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.31.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.31.scss new file mode 100644 index 0000000000..f09ed11cee --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.31.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; margin-bottom: -1px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.39.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.39.scss new file mode 100644 index 0000000000..8dcb8d161c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.39.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; margin-bottom: -4px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.4.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.4.scss new file mode 100644 index 0000000000..3a4a85219f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.40.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.40.scss new file mode 100644 index 0000000000..bfdf7db3b4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.40.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 0px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.43.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.43.scss new file mode 100644 index 0000000000..6f0581a068 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.43.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; margin-bottom: 0px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.44.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.44.scss new file mode 100644 index 0000000000..186f24937b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.44.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: -4px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.48.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.48.scss new file mode 100644 index 0000000000..489890f8bd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.48.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: -1px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.7.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.7.scss new file mode 100644 index 0000000000..0ee68c91ce --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.7.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { height: 5px; background: purple; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.8.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.8.scss new file mode 100644 index 0000000000..5c131b1a4d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-007.8.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-007.htm */ +.style { overflow: hidden; width: 200px; height: 5px; background: yellow; margin-top: 6px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-outside-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-outside-001.0.scss new file mode 100644 index 0000000000..c7fdc4f3ba --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-bfc-outside-001.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-bfc-outside-001.htm */ + +#wrap {width:600px; border:1px solid;} +.a {background:lime; color:#fff; width:80%;} +.b {float:right; width:18%; background: cyan; color: #000; height:10em;} +textarea {width: 100%; height:10em;} + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.0.scss new file mode 100644 index 0000000000..f780444dc2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-001l.htm */ + + +body { width: 400px; border: medium solid; } +div { float: left; clear: left; } +span { display: block; overflow: hidden; width: 200px; height: 50px; background: aqua; margin-right: auto; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.1.scss new file mode 100644 index 0000000000..a695061dc6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-001l.htm */ +.style { width: 50px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.2.scss new file mode 100644 index 0000000000..94b3728f3d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001l.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-001l.htm */ +.style { width: 100px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.0.scss new file mode 100644 index 0000000000..c665929221 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-001r.htm */ + + +body { width: 400px; border: medium solid; } +div { float: right; clear: right; } +span { display: block; overflow: hidden; width: 200px; height: 50px; background: aqua; margin-left: auto; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.1.scss new file mode 100644 index 0000000000..2775ef585f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-001r.htm */ +.style { width: 50px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.2.scss new file mode 100644 index 0000000000..3c9ab6d376 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-001r.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-001r.htm */ +.style { width: 100px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.0.scss new file mode 100644 index 0000000000..48cf6ec53a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-002l.htm */ + + +body { width: 400px; border: medium solid; } +span { display: block; overflow: hidden; width: 200px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.1.scss new file mode 100644 index 0000000000..10ffd0fc80 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-002l.htm */ +.style { float: left; width: 150px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.2.scss new file mode 100644 index 0000000000..3a572e8b03 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002l.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-002l.htm */ +.style { float: right; width: 300px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.0.scss new file mode 100644 index 0000000000..fe457370c1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-002r.htm */ + + +body { width: 400px; border: medium solid; } +span { display: block; overflow: hidden; width: 200px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.1.scss new file mode 100644 index 0000000000..4e2081dba9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-002r.htm */ +.style { float: right; width: 150px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.2.scss new file mode 100644 index 0000000000..1055fac5ff --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-002r.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-002r.htm */ +.style { float: left; width: 300px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.0.scss new file mode 100644 index 0000000000..ef1a96a2bf --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-003l.htm */ + + +body { width: 400px; border: medium solid; } +span { display: block; overflow: hidden; width: 100px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.1.scss new file mode 100644 index 0000000000..1c57064ba3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-003l.htm */ +.style { float: left; width: 250px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.2.scss new file mode 100644 index 0000000000..2e90f18734 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003l.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-003l.htm */ +.style { float: right; width: 250px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.0.scss new file mode 100644 index 0000000000..d2971cb795 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-003r.htm */ + + +body { width: 400px; border: medium solid; } +span { display: block; overflow: hidden; width: 100px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.1.scss new file mode 100644 index 0000000000..f6306c31aa --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-003r.htm */ +.style { float: right; width: 250px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.2.scss new file mode 100644 index 0000000000..3b63ad756d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-bfc-003r.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-bfc-003r.htm */ +.style { float: left; width: 250px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.0.scss new file mode 100644 index 0000000000..6119b6895a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-001l.htm */ + + +body { width: 400px; border: medium solid; text-align: left; } +div { float: left; clear: left; } +span { display: inline-block; vertical-align: top; width: 200px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.1.scss new file mode 100644 index 0000000000..60abfaa89f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-001l.htm */ +.style { width: 50px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.2.scss new file mode 100644 index 0000000000..bb8f7d8585 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001l.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-001l.htm */ +.style { width: 100px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.0.scss new file mode 100644 index 0000000000..3c674d4165 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-001r.htm */ + + +body { width: 400px; border: medium solid; text-align: right; } +div { float: right; clear: right; } +span { display: inline-block; vertical-align: top; width: 200px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.1.scss new file mode 100644 index 0000000000..254cceff5d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-001r.htm */ +.style { width: 50px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.2.scss new file mode 100644 index 0000000000..f9da61827d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-001r.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-001r.htm */ +.style { width: 100px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.0.scss new file mode 100644 index 0000000000..d391fc5bb6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-002l.htm */ + + +body { width: 400px; border: medium solid; } +span { display: inline-block; vertical-align: top; width: 200px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.1.scss new file mode 100644 index 0000000000..b8b4e306b2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-002l.htm */ +.style { float: left; width: 150px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.2.scss new file mode 100644 index 0000000000..4fe3554d42 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002l.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-002l.htm */ +.style { float: right; width: 300px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.0.scss new file mode 100644 index 0000000000..278a0b20d1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-002r.htm */ + + +body { width: 400px; border: medium solid; } +span { display: inline-block; vertical-align: top; width: 200px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.1.scss new file mode 100644 index 0000000000..24fc0000cb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-002r.htm */ +.style { float: right; width: 150px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.2.scss new file mode 100644 index 0000000000..5aba32ba55 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-002r.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-002r.htm */ +.style { float: left; width: 300px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.0.scss new file mode 100644 index 0000000000..5af166b155 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-003l.htm */ + + +body { width: 400px; border: medium solid; } +span { display: inline-block; vertical-align: top; width: 100px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.1.scss new file mode 100644 index 0000000000..ae6e0a84ea --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-003l.htm */ +.style { float: left; width: 250px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.2.scss new file mode 100644 index 0000000000..f6a110f660 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003l.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-003l.htm */ +.style { float: right; width: 250px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.0.scss new file mode 100644 index 0000000000..573684a70a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-003r.htm */ + + +body { width: 400px; border: medium solid; } +span { display: inline-block; vertical-align: top; width: 100px; height: 50px; background: aqua; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.1.scss new file mode 100644 index 0000000000..ed8f4d939a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-003r.htm */ +.style { float: right; width: 250px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.2.scss new file mode 100644 index 0000000000..3156752c2e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-wrap-top-below-inline-003r.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-wrap-top-below-inline-003r.htm */ +.style { float: left; width: 250px; height: 75px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.0.scss new file mode 100644 index 0000000000..4cb8f644c2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-001.htm */ +.style { width: 500px; height: 500px; float: left; font-size: 12px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.1.scss new file mode 100644 index 0000000000..c1ed4bbe00 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-001.htm */ +.style { float: left; width: 10px; height: 30px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.2.scss new file mode 100644 index 0000000000..b3891027db --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-001.htm */ +.style { float: left; clear: left; width: 100px; height: 1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.3.scss new file mode 100644 index 0000000000..92c36c2b4b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-001.htm */ +.style { display:inline-block; vertical-align: bottom; height: 20px; width: 300px; background: blue; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.4.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.4.scss new file mode 100644 index 0000000000..7a4a377d29 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-001.htm */ +.style { display:inline-block; vertical-align: bottom; height: 20px; width: 300px; background: purple; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.5.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.5.scss new file mode 100644 index 0000000000..30b08ae999 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-001.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-001.htm */ +.style { display:inline-block; vertical-align: bottom; height: 20px; width: 300px; background: fuchsia } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.0.scss new file mode 100644 index 0000000000..c718bdcd07 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-002.htm */ +.style { width: 500px; height: 500px; float: left; font-size: 12px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.1.scss new file mode 100644 index 0000000000..fa43435f50 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-002.htm */ +.style { float: left; width: 10px; height: 30px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.2.scss new file mode 100644 index 0000000000..302c91ab56 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-002.htm */ +.style { float: left; clear: left; width: 100px; height: 0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.3.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.3.scss new file mode 100644 index 0000000000..d90881ad6d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-002.htm */ +.style { display:inline-block; vertical-align: bottom; height: 20px; width: 300px; background: blue; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.4.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.4.scss new file mode 100644 index 0000000000..1f403a2ed2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-002.htm */ +.style { display:inline-block; vertical-align: bottom; height: 20px; width: 300px; background: purple; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.5.scss b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.5.scss new file mode 100644 index 0000000000..901a27fe9d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/floats-zero-height-wrap-002.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/floats-zero-height-wrap-002.htm */ +.style { display:inline-block; vertical-align: bottom; height: 20px; width: 300px; background: fuchsia } diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-001.0.scss new file mode 100644 index 0000000000..f70698a920 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-001.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-001.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: CSSTest FamilyName, CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-002.0.scss new file mode 100644 index 0000000000..f1cfd976b2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-002.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-002.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: csstest familyname, CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-003.0.scss new file mode 100644 index 0000000000..55ae604a48 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-003.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-003.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: cssTest familyName, CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-004.0.scss new file mode 100644 index 0000000000..b95f2e94bf --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-004.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-004.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: "CSSTest FamilyName", CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-005.0.scss new file mode 100644 index 0000000000..3a5f916cce --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-005.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-005.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: 'CSSTest FamilyName', CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-006.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-006.0.scss new file mode 100644 index 0000000000..312f9c8948 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-006.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-006.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: CSSTest FamilyName, CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-007.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-007.0.scss new file mode 100644 index 0000000000..d6f61aa0da --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-007.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-007.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: "CSSTest FamilyName", CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-008.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-008.0.scss new file mode 100644 index 0000000000..b0f025d6f0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-008.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-008.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: 'CSSTest FamilyName', CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-009.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-009.0.scss new file mode 100644 index 0000000000..f6ed3eea3d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-009.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-009.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: CSSTest \000046amilyName, CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-012.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-012.0.scss new file mode 100644 index 0000000000..ff9c919acd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-012.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-012.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: "CSSTest Family\Name", CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-013.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-013.0.scss new file mode 100644 index 0000000000..04100a1326 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-013.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-013.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: CSSTest FamilyName Bold, CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-014.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-014.0.scss new file mode 100644 index 0000000000..d98252d89d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-014.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-014.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: CSSTestFamilyNameBold, CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-016.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-016.0.scss new file mode 100644 index 0000000000..11566bc342 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-016.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-016.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + p { + font-family: CSSTest Weights 400; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-017.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-017.0.scss new file mode 100644 index 0000000000..ea2b2110b0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-017.0.scss @@ -0,0 +1,9 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-017.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + body { font-family: CSSTest Fallback; } + p, div { + font-family: CSSTest Unknown; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-018.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-018.0.scss new file mode 100644 index 0000000000..81e90cee9c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-018.0.scss @@ -0,0 +1,9 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-018.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + body { font-family: CSSTest Fallback; } + p, div { + font-family: "CSSTest Unknown"; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-019.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-019.0.scss new file mode 100644 index 0000000000..ad32f6351b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-019.0.scss @@ -0,0 +1,9 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-019.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + div#test { font-family: CSSTest Fallback; } + p { + font-family: CSSTest Unknown; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-020.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-020.0.scss new file mode 100644 index 0000000000..0d66b81154 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-020.0.scss @@ -0,0 +1,9 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-020.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + div#test { font-family: CSSTest Fallback; } + p { + font-family: "CSSTest Unknown"; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-021.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-021.0.scss new file mode 100644 index 0000000000..592d994b47 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-021.0.scss @@ -0,0 +1,10 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-021.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + body { font-family: "CSSTest FamilyName"; } + div { font-family: "CSSTest Unknown"; } + p { + font-family: "CSSTest" Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-022.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-022.0.scss new file mode 100644 index 0000000000..dc737140a8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-022.0.scss @@ -0,0 +1,14 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-022.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + div { font-family: "CSSTest Unknown"; } + p { + } + p#test1 { + font-family: x-large CSSTest Fallback; + } + p#test4 { + font-family: caption CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-023.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-023.0.scss new file mode 100644 index 0000000000..4c4dc9c7f3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-023.0.scss @@ -0,0 +1,20 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-023.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + div.test { font-family: CSSTest Fallback; } + p { + } + p#test1a { + font-family: "small-caps 1in CSSTest FamilyName Funky", CSSTest Fallback; + } + p#test2 { + font-family: x-large CSSTest FamilyName Funky, CSSTest Fallback; + } + p#test2a { + font-family: "x-large CSSTest FamilyName Funky", CSSTest Fallback; + } + p#test3a { + font-family: "12px CSSTest FamilyName Funky", CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-family-name-024.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-024.0.scss new file mode 100644 index 0000000000..79ac477f2c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-family-name-024.0.scss @@ -0,0 +1,26 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-024.htm */ + + body { font-size: 36px; } + span#verify { font-family: CSSTest Verify; } + div.test { font-family: CSSTest Fallback; } + p { + } + p#test1 { + font-family: caption, CSSTest Fallback; + } + p#test2 { + font-family: icon, CSSTest Fallback; + } + p#test3 { + font-family: menu, CSSTest Fallback; + } + p#test4 { + font-family: message-box, CSSTest Fallback; + } + p#test5 { + font-family: small-caption, CSSTest Fallback; + } + p#test6 { + font-family: status-bar, CSSTest Fallback; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-weight-bolder-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-weight-bolder-001.0.scss new file mode 100644 index 0000000000..e1334dbe2f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-weight-bolder-001.0.scss @@ -0,0 +1,43 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-weight-bolder-001.htm */ + + span#verify { font-family: CSSTest Verify; font-weight: normal; } + div { margin-bottom: 1em; } + body { margin: 50px; } + table { + border-collapse: collapse; + } + th { + font-weight: normal; + text-align: left; + padding-right: 1em; + } + span { font-weight: bolder; } + thead th { text-align: center; padding-bottom: 1em; } + td { width: 5em; text-align: center; } + td.f1 { font-family: CSSTest Weights Full; } + td.f2 { font-family: CSSTest Weights W1479; } + td.f3 { font-family: CSSTest Weights W15; } + td.f4 { font-family: CSSTest Weights W24; } + td.f5 { font-family: CSSTest Weights W2569; } + td.f6 { font-family: CSSTest Weights W258; } + td.f7 { font-family: CSSTest Weights W3589; } + td.f8 { font-family: CSSTest Weights W47; } + th.f1 { display: table-cell; } + th.f2 { display: table-cell; } + th.f3 { display: table-cell; } + th.f4 { display: table-cell; } + th.f5 { display: table-cell; } + th.f6 { display: table-cell; } + th.f7 { display: table-cell; } + th.f8 { display: table-cell; } + + tr.w1 td { font-weight: 100; } + tr.w2 td { font-weight: 200; } + tr.w3 td { font-weight: 300; } + tr.w4 td { font-weight: 400; } + tr.w5 td { font-weight: 500; } + tr.w6 td { font-weight: 600; } + tr.w7 td { font-weight: 700; } + tr.w8 td { font-weight: 800; } + tr.w9 td { font-weight: 900; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-weight-lighter-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-weight-lighter-001.0.scss new file mode 100644 index 0000000000..1840142b38 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-weight-lighter-001.0.scss @@ -0,0 +1,43 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-weight-lighter-001.htm */ + + span#verify { font-family: CSSTest Verify; font-weight: normal; } + div { margin-bottom: 1em; } + body { margin: 50px; } + table { + border-collapse: collapse; + } + th { + font-weight: normal; + text-align: left; + padding-right: 1em; + } + span { font-weight: lighter; } + thead th { text-align: center; padding-bottom: 1em; } + td { width: 5em; text-align: center; } + td.f1 { font-family: CSSTest Weights Full; } + td.f2 { font-family: CSSTest Weights W1479; } + td.f3 { font-family: CSSTest Weights W15; } + td.f4 { font-family: CSSTest Weights W24; } + td.f5 { font-family: CSSTest Weights W2569; } + td.f6 { font-family: CSSTest Weights W258; } + td.f7 { font-family: CSSTest Weights W3589; } + td.f8 { font-family: CSSTest Weights W47; } + th.f1 { display: table-cell; } + th.f2 { display: table-cell; } + th.f3 { display: table-cell; } + th.f4 { display: table-cell; } + th.f5 { display: table-cell; } + th.f6 { display: table-cell; } + th.f7 { display: table-cell; } + th.f8 { display: table-cell; } + + tr.w1 td { font-weight: 100; } + tr.w2 td { font-weight: 200; } + tr.w3 td { font-weight: 300; } + tr.w4 td { font-weight: 400; } + tr.w5 td { font-weight: 500; } + tr.w6 td { font-weight: 600; } + tr.w7 td { font-weight: 700; } + tr.w8 td { font-weight: 800; } + tr.w9 td { font-weight: 900; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/font-weight-normal-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/font-weight-normal-001.0.scss new file mode 100644 index 0000000000..29a665ee9a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/font-weight-normal-001.0.scss @@ -0,0 +1,43 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/font-weight-normal-001.htm */ + + span#verify { font-family: CSSTest Verify; font-weight: normal; } + div { margin-bottom: 1em; } + body { margin: 50px; } + table { + border-collapse: collapse; + } + th { + font-weight: normal; + text-align: left; + padding-right: 1em; + } + span { } + thead th { text-align: center; padding-bottom: 1em; } + td { width: 5em; text-align: center; } + td.f1 { font-family: CSSTest Weights Full; } + td.f2 { font-family: CSSTest Weights W1479; } + td.f3 { font-family: CSSTest Weights W15; } + td.f4 { font-family: CSSTest Weights W24; } + td.f5 { font-family: CSSTest Weights W2569; } + td.f6 { font-family: CSSTest Weights W258; } + td.f7 { font-family: CSSTest Weights W3589; } + td.f8 { font-family: CSSTest Weights W47; } + th.f1 { display: table-cell; } + th.f2 { display: table-cell; } + th.f3 { display: table-cell; } + th.f4 { display: table-cell; } + th.f5 { display: table-cell; } + th.f6 { display: table-cell; } + th.f7 { display: table-cell; } + th.f8 { display: table-cell; } + + tr.w1 td { font-weight: 100; } + tr.w2 td { font-weight: 200; } + tr.w3 td { font-weight: 300; } + tr.w4 td { font-weight: 400; } + tr.w5 td { font-weight: 500; } + tr.w6 td { font-weight: 600; } + tr.w7 td { font-weight: 700; } + tr.w8 td { font-weight: 800; } + tr.w9 td { font-weight: 900; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-000.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-000.0.scss new file mode 100644 index 0000000000..9ddf923d46 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-000.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-000.htm */ + +span { display: inline-block; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-height-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-height-001.0.scss new file mode 100644 index 0000000000..595b0fef80 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-height-001.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-height-001.htm */ + +div { display: inline-block; width: 10em; background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-height-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-height-002.0.scss new file mode 100644 index 0000000000..2876e73ab5 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-height-002.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-height-002.htm */ + +div { display: inline-block; height: 5em; width:10em; vertical-align: baseline; background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-valign-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-valign-001.0.scss new file mode 100644 index 0000000000..5d2446d71f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-valign-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-valign-001.htm */ + +span { display: inline-block; } +span > span { display: block; visibility: hidden; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-valign-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-valign-002.0.scss new file mode 100644 index 0000000000..f262046c2b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-valign-002.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-valign-002.htm */ + +body { background: white; color: black; } +span { display: inline-block; margin: 3px 0; border: 4px solid white; border-width: 4px 0; padding: 9px 0; } +span > span { display: block; visibility: hidden; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-001a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-001a.0.scss new file mode 100644 index 0000000000..18c2f89059 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-001a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-width-001a.htm */ + +body > div { width: 10em; } +body > div > div { display: inline-block; background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-001b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-001b.0.scss new file mode 100644 index 0000000000..438331f06c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-001b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-width-001b.htm */ + +body > div { width: 10em; } +body > div > div { display: inline-block; background: green; color: white; width: 10em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-002a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-002a.0.scss new file mode 100644 index 0000000000..851a3e0556 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-002a.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-width-002a.htm */ + +body > div { width: 10em; } +body > div > div { display: inline-block; background: green; color: white; } +body > div > div > div { width: 20em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-002b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-002b.0.scss new file mode 100644 index 0000000000..652628c616 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-width-002b.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-width-002b.htm */ + +body > div { width: 10em; } +body > div > div { display: inline-block; background: green; color: white; width: 20em; } +body > div > div > div { width: 20em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-001.0.scss new file mode 100644 index 0000000000..b04dd45c9a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-001.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-zorder-001.htm */ + +div { width: 2em; height: 1em; } +span { display:inline-block; vertical-align: top; width: 2em; height: 1em; background: green; } +div#after { margin-top:-1em; background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-002.0.scss new file mode 100644 index 0000000000..f888f84439 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-002.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-zorder-002.htm */ + +div { width: 2em; height: 1em; } +span { display:inline-block; vertical-align: top; width: 2em; height: 1em; } +span span { display: block; background: green; } +div#after { margin-top: -1em; background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-003.0.scss new file mode 100644 index 0000000000..902c10615b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-003.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-zorder-003.htm */ + +div { height: 1em; } +div#test span { display:inline-block; vertical-align: top; height: 1em; background: red; color: red; } +div#after { margin-top:-1em; } +div#after span { display: inline; vertical-align: top; background: green; color: green; border-bottom: 0.25em solid green; border-top: 0.25em solid green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-004.0.scss new file mode 100644 index 0000000000..2a326680b7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-004.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-zorder-004.htm */ + +div#test span { display:inline-block; vertical-align: top; background: green; color: green; border-bottom: 0.25em solid green; border-top: 0.25em solid green; } +div#before { height: 1em; margin-bottom:-1em; } +div#before span { display: inline; vertical-align: top; background: red; color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-005.0.scss new file mode 100644 index 0000000000..7831203024 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-block-zorder-005.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-block-zorder-005.htm */ + +div#test > span { display:inline-block; vertical-align: top; } +div#test > span > span { display: block; background: green; color: green; border-bottom: 0.25em solid green; border-top: 0.25em solid green; } +div#before { height: 1em; margin-bottom:-1em; } +div#before > span { display: inline; vertical-align: top; background: red; color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-002a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-002a.0.scss new file mode 100644 index 0000000000..bbb79e3952 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-002a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-002a.htm */ + +span { display: inline-table; } +span > span { display: block; visibility: hidden; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-002b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-002b.0.scss new file mode 100644 index 0000000000..085e0301ae --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-002b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-002b.htm */ + +span > span { display: table-cell; } +span > span > span { display: block; visibility: hidden; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-003.0.scss new file mode 100644 index 0000000000..ced4d93ae8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-003.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-003.htm */ + +span { display: inline-table; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-height-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-height-001.0.scss new file mode 100644 index 0000000000..76cf9d68e4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-height-001.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-height-001.htm */ + +div { display: inline-table; width: 10em; background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-height-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-height-002.0.scss new file mode 100644 index 0000000000..ee38aae8ea --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-height-002.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-height-002.htm */ + +div { display: inline-table; height: 5em; vertical-align: baseline; background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-valign-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-valign-001.0.scss new file mode 100644 index 0000000000..73e683bbcd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-valign-001.0.scss @@ -0,0 +1,15 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-valign-001.htm */ + +span#table { display: inline-table; } +span#rowgroup { display: table-row-group; } +span#row { display: table-row; } +span#cell { display: table-cell; } +span#table, span#rowgroup, span#row, span#cell { + border: 4px solid white; + margin: 3px 0; + border-width: 4px 0; + padding: 9px 0; + border-spacing: 0 5px; +} +span#block { display: block; visibility: hidden; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-001a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-001a.0.scss new file mode 100644 index 0000000000..78e2c1ecab --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-001a.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-width-001a.htm */ + +body > div { width: 10em; } +body > div > div { display: inline-table; background: green; color: white; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-001b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-001b.0.scss new file mode 100644 index 0000000000..3a7ba0f225 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-001b.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-width-001b.htm */ + +body > div { width: 10em; } +body > div > div { display: inline-table; background: green; color: white; width: 10em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-002a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-002a.0.scss new file mode 100644 index 0000000000..686714f14a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-002a.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-width-002a.htm */ + +body > div { width: 10em; } +body > div > div { display: inline-table; background: green; color: white; } +body > div > div > div { width: 20em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-002b.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-002b.0.scss new file mode 100644 index 0000000000..c363def1ac --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-width-002b.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-width-002b.htm */ + +body > div { width: 10em; } +body > div > div { display: inline-table; background: green; color: white; width: 20em; } +body > div > div > div { width: 20em; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-001.0.scss new file mode 100644 index 0000000000..79c11c95e5 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-001.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-zorder-001.htm */ + +div { width: 2em; height: 2em; } +span { display:inline-table; vertical-align: top; width: 2em; height: 2em; background: green; } +div#after { margin-top:-2em; background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-002.0.scss new file mode 100644 index 0000000000..6e208ec410 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-002.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-zorder-002.htm */ + +div { width: 2em; height: 2em; } +span { display:inline-table; vertical-align: top; width: 2em; height: 2em; } +span span { display: block; background: green; } +div#after { margin-top: -2em; background: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-003.0.scss new file mode 100644 index 0000000000..8722af2fb2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-003.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-zorder-003.htm */ + +div { height: 1em; } +div#test > span { display:inline-table; vertical-align: top; height: 1em; background: red; color: red; } +div#after { margin-top:-1em; } +div#after > span { display: inline; vertical-align: top; background: green; color: green; border-bottom: 0.25em solid green; border-top: 0.25em solid green; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-004.0.scss new file mode 100644 index 0000000000..344d56ff21 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-004.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-zorder-004.htm */ + +div#test > span { display:inline-table; vertical-align: top; background: green; color: green; border-bottom: 0.25em solid green; border-top: 0.25em solid green; } +div#before { height: 1em; margin-bottom:-1em; } +div#before > span { display: inline; vertical-align: top; background: red; color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-005.0.scss new file mode 100644 index 0000000000..de883783f6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/inline-table-zorder-005.0.scss @@ -0,0 +1,7 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/inline-table-zorder-005.htm */ + +div#test > span { display:inline-table; vertical-align: top; } +div#test > span > span { display: block; background: green; color: green; border-bottom: 0.25em solid green; border-top: 0.25em solid green; } +div#before { height: 1em; margin-bottom:-1em; } +div#before > span { display: inline; vertical-align: top; background: red; color: red; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/quotes-035.0.scss b/theme-compiler/tests/resources/w3ctests/scss/quotes-035.0.scss new file mode 100644 index 0000000000..7e8809a736 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/quotes-035.0.scss @@ -0,0 +1,29 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/quotes-035.htm */ + + + .party1 * { display: inline; } + .party1 .a { quotes: "Isn" "'" + "t" "FAIL!" + "FAIL!" " i"; } + .party1 .b { quotes: "" "FAIL!!" + " wonderful" "!!!" + " to " " work" + "see " " [FAIL to]" + "C" "quotes" + "S" " "; } + .party1 .c { quotes: none; } + .party1 .d { quotes: "FAIL!" "FAIL!" + "FAIL!" "FAIL!" + "" ""; } + .test { margin-left: 2em; } + .test .no-open:before { content: no-open-quote; } + .test .open:before { content: open-quote; } + .test .triple-open:before { content: open-quote open-quote open-quote; } + .test .no-close:after { content: no-close-quote; } + .test .triple-no-close:after { content: no-close-quote no-close-quote no-close-quote; } + .test .close:after { content: close-quote; } + .test .triple-close:after { content: close-quote close-quote close-quote; } + .test .no-close-open:before { content: no-close-quote open-quote; } + + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/quotes-035a.0.scss b/theme-compiler/tests/resources/w3ctests/scss/quotes-035a.0.scss new file mode 100644 index 0000000000..e4e3d17658 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/quotes-035a.0.scss @@ -0,0 +1,31 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/quotes-035a.htm */ + + + .party1 * { display: inline; } + .party1 .a { quotes: "Isn" "'" + "t" "FAIL!" + "FAIL!" " i"; } + .party1 .b { quotes: "" "FAIL!!" + " wonderful" "!!!" + " to " " work" + "see " " [FAIL to]" + "C" "quotes" + "S" " " + "S" " "; } + .party1 .c { quotes: none; } + .party1 .d { quotes: "FAIL!" "FAIL!" + "FAIL!" "FAIL!" + "" "" + "" ""; } + .test { margin-left: 2em; } + .test .no-open:before { content: no-open-quote; } + .test .open:before { content: open-quote; } + .test .triple-open:before { content: open-quote open-quote open-quote; } + .test .no-close:after { content: no-close-quote; } + .test .triple-no-close:after { content: no-close-quote no-close-quote no-close-quote; } + .test .close:after { content: close-quote; } + .test .triple-close:after { content: close-quote close-quote close-quote; } + .test .no-close-open:before { content: no-close-quote open-quote; } + + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/quotes-036.0.scss b/theme-compiler/tests/resources/w3ctests/scss/quotes-036.0.scss new file mode 100644 index 0000000000..2d2927c254 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/quotes-036.0.scss @@ -0,0 +1,35 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/quotes-036.htm */ + + + .party1 * { display: inline; } + .party1 .a { quotes: "Isn" "'" + "t" "FAIL!" + "FAIL!" " i"; } + .party1 .b { quotes: "" "FAIL!!" + " wonderful" "!!!" + " to " " work" + "see " " [FAIL to]" + "C" "quotes" + "S" " "; } + .party1 .c { quotes: none; } + .party1 .d { quotes: "FAIL!" "FAIL!" + "FAIL!" "FAIL!" + "" ""; } + .test { margin-left: 2em; } + .test .no-open:before { content: no-open-quote; } + .test .open:before { content: open-quote; } + .test .triple-open:before { content: open-quote open-quote open-quote; } + .test .no-close:after { content: no-close-quote; } + .test .triple-no-close:after { content: no-close-quote no-close-quote no-close-quote; } + .test .close:after { content: close-quote; } + .test .triple-close:after { content: close-quote close-quote close-quote; } + .test .no-close-open:before { content: no-close-quote open-quote; } + + /* hr br */ + .test hr, .test br { display: inline; margin: 0; padding: 0; + height: auto; width: auto; border: none; color: inherit; + background: transparent; } + .test br:before { content: "" } + .test br:after { content: "" } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/ref-green-box-100x100.0.scss b/theme-compiler/tests/resources/w3ctests/scss/ref-green-box-100x100.0.scss new file mode 100644 index 0000000000..6ee83f95d6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/ref-green-box-100x100.0.scss @@ -0,0 +1,8 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/support/ref-green-box-100x100.htm */ + + div { + width: 100px; + height: 100px; + background: green; + } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-cell-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-cell-001.0.scss new file mode 100644 index 0000000000..c03a4049a6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-cell-001.0.scss @@ -0,0 +1,33 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bc-cell-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 8px 6px; /* collapsed */ + padding: 3px 7px 8px 6px; /* ignored */ + border-collapse: collapse; + } + + td { + border: transparent solid; + border-width: 2px 0 4px 2px; /* collapsed */ + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color td.t { background-color: aqua; } + + table.imagetl td.t, table.imagebr td.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl td.t { background-position: top left; /* default */ } + table.imagebr td.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-colgroup-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-colgroup-001.0.scss new file mode 100644 index 0000000000..d0ce72d0e0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-colgroup-001.0.scss @@ -0,0 +1,33 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bc-colgroup-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 8px 6px; /* collapsed */ + padding: 3px 7px 8px 6px; /* ignored */ + border-collapse: collapse; + } + + td { + border: transparent solid; + border-width: 2px 0 4px 2px; /* collapsed */ + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color colgroup.t { background-color: aqua; } + + table.imagetl colgroup.t, table.imagebr colgroup.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl colgroup.t { background-position: top left; /* default */ } + table.imagebr colgroup.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-column-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-column-001.0.scss new file mode 100644 index 0000000000..c3d2bd0503 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-column-001.0.scss @@ -0,0 +1,33 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bc-column-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 8px 6px; /* collapsed */ + padding: 3px 7px 8px 6px; /* ignored */ + border-collapse: collapse; + } + + td { + border: transparent solid; + border-width: 2px 0 4px 2px; /* collapsed */ + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color col.t { background-color: aqua; } + + table.imagetl col.t, table.imagebr col.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl col.t { background-position: top left; /* default */ } + table.imagebr col.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-row-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-row-001.0.scss new file mode 100644 index 0000000000..1a7049fba8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-row-001.0.scss @@ -0,0 +1,33 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bc-row-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 8px 6px; /* collapsed */ + padding: 3px 7px 8px 6px; /* ignored */ + border-collapse: collapse; + } + + td { + border: transparent solid; + border-width: 2px 0 4px 2px; /* collapsed */ + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color tr.t { background-color: aqua; } + + table.imagetl tr.t, table.imagebr tr.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl tr.t { background-position: top left; /* default */ } + table.imagebr tr.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-rowgroup-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-rowgroup-001.0.scss new file mode 100644 index 0000000000..69c10cca9f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-rowgroup-001.0.scss @@ -0,0 +1,33 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bc-rowgroup-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 8px 6px; /* collapsed */ + padding: 3px 7px 8px 6px; /* ignored */ + border-collapse: collapse; + } + + td { + border: transparent solid; + border-width: 2px 0 4px 2px; /* collapsed */ + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color tbody.t { background-color: aqua; } + + table.imagetl tbody.t, table.imagebr tbody.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl tbody.t { background-position: top left; /* default */ } + table.imagebr tbody.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-table-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-table-001.0.scss new file mode 100644 index 0000000000..b6a8f27ab2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bc-table-001.0.scss @@ -0,0 +1,33 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bc-table-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 8px 6px; /* collapsed */ + padding: 3px 7px 8px 6px; /* ignored */ + border-collapse: collapse; + } + + td { + border: transparent solid; + border-width: 2px 0 4px 2px; /* collapsed */ + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color { background-color: aqua; } + + table.imagetl, table.imagebr { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl { background-position: top left; /* default */ } + table.imagebr { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-cell-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-cell-001.0.scss new file mode 100644 index 0000000000..02289c80e2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-cell-001.0.scss @@ -0,0 +1,34 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bs-cell-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 7px 3px; + padding: 3px 7px 8px 6px; + border-collapse: separate; + border-spacing: 2px 3px; + } + + td { + border: transparent solid; + border-width: 2px 1px 4px 3px; + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color td.t { background-color: aqua; } + + table.imagetl td.t, table.imagebr td.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl td.t { background-position: top left; /* default */ } + table.imagebr td.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-colgroup-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-colgroup-001.0.scss new file mode 100644 index 0000000000..dae2af72ae --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-colgroup-001.0.scss @@ -0,0 +1,34 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bs-colgroup-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 7px 3px; + padding: 3px 7px 8px 6px; + border-collapse: separate; + border-spacing: 2px 3px; + } + + td { + border: transparent solid; + border-width: 2px 1px 4px 3px; + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color colgroup.t { background-color: aqua; } + + table.imagetl colgroup.t, table.imagebr colgroup.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl colgroup.t { background-position: top left; /* default */ } + table.imagebr colgroup.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-column-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-column-001.0.scss new file mode 100644 index 0000000000..8289f3a4bb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-column-001.0.scss @@ -0,0 +1,34 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bs-column-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 7px 3px; + padding: 3px 7px 8px 6px; + border-collapse: separate; + border-spacing: 2px 3px; + } + + td { + border: transparent solid; + border-width: 2px 1px 4px 3px; + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color col.t { background-color: aqua; } + + table.imagetl col.t, table.imagebr col.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl col.t { background-position: top left; /* default */ } + table.imagebr col.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-row-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-row-001.0.scss new file mode 100644 index 0000000000..f2ec27e38b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-row-001.0.scss @@ -0,0 +1,34 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bs-row-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 7px 3px; + padding: 3px 7px 8px 6px; + border-collapse: separate; + border-spacing: 2px 3px; + } + + td { + border: transparent solid; + border-width: 2px 1px 4px 3px; + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color tr.t { background-color: aqua; } + + table.imagetl tr.t, table.imagebr tr.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl tr.t { background-position: top left; /* default */ } + table.imagebr tr.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-rowgroup-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-rowgroup-001.0.scss new file mode 100644 index 0000000000..cb5b8f79a6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-rowgroup-001.0.scss @@ -0,0 +1,34 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bs-rowgroup-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 7px 3px; + padding: 3px 7px 8px 6px; + border-collapse: separate; + border-spacing: 2px 3px; + } + + td { + border: transparent solid; + border-width: 2px 1px 4px 3px; + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color tbody.t { background-color: aqua; } + + table.imagetl tbody.t, table.imagebr tbody.t { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl tbody.t { background-position: top left; /* default */ } + table.imagebr tbody.t { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-table-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-table-001.0.scss new file mode 100644 index 0000000000..6d1eabb6a8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-backgrounds-bs-table-001.0.scss @@ -0,0 +1,34 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-backgrounds-bs-table-001.htm */ + + + html, body { margin: 0; padding: 0; border: 0; font-size: 16px; } + body { padding: 15px; } + + table { + margin: 0 3px 2px 4px; /* zero top to work around collapsing bug */ + border: transparent solid; + border-width: 4px 2px 7px 3px; + padding: 3px 7px 8px 6px; + border-collapse: separate; + border-spacing: 2px 3px; + } + + td { + border: transparent solid; + border-width: 2px 1px 4px 3px; + padding: 1px 2px 4px 3px; + empty-cells: show; + } + + div { height: 10px; width: 50px; } + + table.color { background-color: aqua; } + + table.imagetl, table.imagebr { + background-image: url(support/repeatable-diagonal-gradient-with-ticks.png); + } + + table.imagetl { background-position: top left; /* default */ } + table.imagebr { background-position: bottom right; /* default */ } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.0.scss new file mode 100644 index 0000000000..bc5733aedd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-in-inline-001.htm */ +.style { display: table-row } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.1.scss new file mode 100644 index 0000000000..a4d01762bd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-in-inline-001.htm */ +.style { display: block } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.2.scss new file mode 100644 index 0000000000..fe13eb4cbb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-in-inline-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-in-inline-001.htm */ +.style { display: table-cell } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.0.scss new file mode 100644 index 0000000000..15d24294d1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-001.htm */ + + +td { vertical-align: baseline; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.1.scss new file mode 100644 index 0000000000..c93d980b57 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-001.htm */ +.style { padding-top: 40px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.2.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.2.scss new file mode 100644 index 0000000000..8c98e302cc --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-001.htm */ +.style { padding-top: 20px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.3.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.3.scss new file mode 100644 index 0000000000..90b0e303b2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-001.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-001.htm */ +.style { padding-top: 0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.0.scss new file mode 100644 index 0000000000..9e8fc17d73 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-002.htm */ + + +td { vertical-align: baseline; padding-top: 0; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.1.scss new file mode 100644 index 0000000000..c8a265b2e4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-002.htm */ +.style { padding-top: 40px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.2.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.2.scss new file mode 100644 index 0000000000..84c4a43819 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-002.htm */ +.style { padding-top: 20px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.3.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.3.scss new file mode 100644 index 0000000000..b212fc065f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-002.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-002.htm */ +.style { padding-top: 0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.0.scss new file mode 100644 index 0000000000..b623b103e4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-003.htm */ + + +td { vertical-align: baseline; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.1.scss new file mode 100644 index 0000000000..646c3603f7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-003.htm */ +.style { padding-top: 0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.2.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.2.scss new file mode 100644 index 0000000000..c461bdba34 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-003.htm */ +.style { padding-top: 40px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.3.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.3.scss new file mode 100644 index 0000000000..3b0a262d34 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-003.htm */ +.style { padding-top: 12px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.4.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.4.scss new file mode 100644 index 0000000000..055905d9d7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-003.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-003.htm */ +.style { padding-top: 3px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.0.scss new file mode 100644 index 0000000000..3563cde096 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-004.htm */ + + +td { vertical-align: baseline; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.1.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.1.scss new file mode 100644 index 0000000000..eac995c41d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-004.htm */ +.style { padding-top: 12px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.2.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.2.scss new file mode 100644 index 0000000000..b2745143e2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-004.htm */ +.style { padding-top: 3px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.3.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.3.scss new file mode 100644 index 0000000000..15214ad16a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-004.htm */ +.style { padding-top: 40px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.4.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.4.scss new file mode 100644 index 0000000000..4b93164a1b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-004.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-004.htm */ +.style { padding-top: 0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.0.scss new file mode 100644 index 0000000000..49e4923cc8 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-005.htm */ + + +td { vertical-align: baseline; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.1.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.1.scss new file mode 100644 index 0000000000..7896c6342c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-005.htm */ +.style { padding-top: 0; height: 80px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.2.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.2.scss new file mode 100644 index 0000000000..e000d2e340 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-005.htm */ +.style { padding-top: 40px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.3.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.3.scss new file mode 100644 index 0000000000..0a30e0d376 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-005.htm */ +.style { padding-top: 12px; height: 120px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.4.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.4.scss new file mode 100644 index 0000000000..c4152587ea --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-005.htm */ +.style { padding-top: 3px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.5.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.5.scss new file mode 100644 index 0000000000..ec44e94e6d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-005.htm */ +.style { padding-top: 40px; height: 160px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.6.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.6.scss new file mode 100644 index 0000000000..3a3990256c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-005.6.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-005.htm */ +.style { padding-top: 0 } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.0.scss new file mode 100644 index 0000000000..3f56772677 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-006.htm */ + + +td { vertical-align: baseline; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.1.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.1.scss new file mode 100644 index 0000000000..4b20736354 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-006.htm */ +.style { padding-top: 0; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.2.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.2.scss new file mode 100644 index 0000000000..9f71b57dd9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-006.htm */ +.style { padding-top: 40px; height: 80px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.3.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.3.scss new file mode 100644 index 0000000000..dd8cd111f5 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-006.htm */ +.style { padding-top: 12px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.4.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.4.scss new file mode 100644 index 0000000000..90ef71d106 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-006.htm */ +.style { padding-top: 3px; height: 120px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.5.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.5.scss new file mode 100644 index 0000000000..6d33486f7c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-006.htm */ +.style { padding-top: 40px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.6.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.6.scss new file mode 100644 index 0000000000..0bec2dee1a --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-006.6.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-006.htm */ +.style { padding-top: 0; height: 160px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.0.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.0.scss new file mode 100644 index 0000000000..6c11f1b90f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.0.scss @@ -0,0 +1,6 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-007.htm */ + + +td { vertical-align: baseline; } + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.1.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.1.scss new file mode 100644 index 0000000000..4863e1df5b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-007.htm */ +.style { padding-top: 0; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.2.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.2.scss new file mode 100644 index 0000000000..d32301afb9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-007.htm */ +.style { padding-top: 40px; height: 80px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.3.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.3.scss new file mode 100644 index 0000000000..b25a964d73 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-007.htm */ +.style { padding-top: 12px; height: 160px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.4.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.4.scss new file mode 100644 index 0000000000..98808066f1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-007.htm */ +.style { padding-top: 3px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.5.scss b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.5.scss new file mode 100644 index 0000000000..8a366d4df2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/table-vertical-align-baseline-007.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/table-vertical-align-baseline-007.htm */ +.style { padding-top: 40px; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-113.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-113.0.scss new file mode 100644 index 0000000000..01e37d208c --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-113.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-113.htm */ + +p { text-indent: 100px } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-114.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-114.0.scss new file mode 100644 index 0000000000..ec19eb2816 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-114.0.scss @@ -0,0 +1,4 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-114.htm */ + +p { text-indent: 0px } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-115.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-115.0.scss new file mode 100644 index 0000000000..569f033276 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-115.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-115.htm */ + +p { text-indent: 100px } +span { background: yellow } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.0.scss new file mode 100644 index 0000000000..6ed93593e9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.0.scss @@ -0,0 +1,17 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-001.htm */ + + +body { font-size: 12px; width: 1px; } + +body > div, body > pre { + float: left; clear: left; margin: 1px; height: 2em; + border: medium solid; +} + +span { + display: inline-block; + height: 1em; + width: 1em; +} + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.1.scss new file mode 100644 index 0000000000..c71814945e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-001.htm */ +.style { text-indent: 3em; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.11.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.11.scss new file mode 100644 index 0000000000..d43af6804b --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.11.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-001.htm */ +.style { width: 6em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.4.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.4.scss new file mode 100644 index 0000000000..aecf9b104d --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-001.htm */ +.style { text-indent: 3em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.5.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.5.scss new file mode 100644 index 0000000000..4d3f04cdf4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-001.htm */ +.style { width: 1em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.8.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.8.scss new file mode 100644 index 0000000000..11f2a1b4c7 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-001.8.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-001.htm */ +.style { width: 2em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.0.scss new file mode 100644 index 0000000000..7dcafd1001 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.0.scss @@ -0,0 +1,17 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-002.htm */ + + +body { font-size: 12px; } + +body > div, body > pre { + float: left; clear: left; margin: 1px; height: 2em; + border: medium solid; +} + +span { + display: inline-block; + height: 1em; + width: 1em; +} + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.1.scss new file mode 100644 index 0000000000..fb9ad27680 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-002.htm */ +.style { text-indent: 3em; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.11.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.11.scss new file mode 100644 index 0000000000..9783ca14ac --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.11.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-002.htm */ +.style { width: 6em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.4.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.4.scss new file mode 100644 index 0000000000..dc20dd4b85 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-002.htm */ +.style { text-indent: 3em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.5.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.5.scss new file mode 100644 index 0000000000..41cee98d11 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-002.htm */ +.style { width: 1em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.8.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.8.scss new file mode 100644 index 0000000000..49161e2910 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-002.8.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-002.htm */ +.style { width: 2em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.0.scss new file mode 100644 index 0000000000..98f79df5fd --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.0.scss @@ -0,0 +1,17 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-003.htm */ + + +body { font-size: 12px; } + +body > div, body > pre { + float: left; clear: left; margin: 1px; height: 2em; + border: medium solid; +} + +span { + display: inline-block; + height: 1em; + width: 1em; +} + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.1.scss new file mode 100644 index 0000000000..ef4f538864 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-003.htm */ +.style { width: 1px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.11.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.11.scss new file mode 100644 index 0000000000..29d824d66e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.11.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-003.htm */ +.style { width: 3em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.17.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.17.scss new file mode 100644 index 0000000000..ce29a677f1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.17.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-003.htm */ +.style { width: 4em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.2.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.2.scss new file mode 100644 index 0000000000..d9169cf13e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-003.htm */ +.style { text-indent: -3em; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.25.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.25.scss new file mode 100644 index 0000000000..575d7393f2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.25.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-003.htm */ +.style { text-indent: -3em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.3.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.3.scss new file mode 100644 index 0000000000..44021e266f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.3.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-003.htm */ +.style { width: 1em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.5.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.5.scss new file mode 100644 index 0000000000..0b02a652f9 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-003.5.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-003.htm */ +.style { width: 5em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.0.scss new file mode 100644 index 0000000000..4fcfac5be6 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.0.scss @@ -0,0 +1,17 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-004.htm */ + + +body { font-size: 12px; } + +body > div, body > pre { + float: left; clear: left; margin: 1px; height: 2em; + border: medium solid; +} + +span { + display: inline-block; + height: 1em; + width: 1em; +} + + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.1.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.1.scss new file mode 100644 index 0000000000..a8cd2367c3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-004.htm */ +.style { text-indent: -3em; } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.10.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.10.scss new file mode 100644 index 0000000000..549eca8142 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.10.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-004.htm */ +.style { width: 3em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.16.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.16.scss new file mode 100644 index 0000000000..d97bdc5805 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.16.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-004.htm */ +.style { width: 4em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.2.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.2.scss new file mode 100644 index 0000000000..645265fcee --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.2.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-004.htm */ +.style { width: 1em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.24.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.24.scss new file mode 100644 index 0000000000..a43261231e --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.24.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-004.htm */ +.style { text-indent: -3em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.4.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.4.scss new file mode 100644 index 0000000000..60d30f9cdb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-intrinsic-004.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-intrinsic-004.htm */ +.style { width: 5em } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-percent-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-percent-001.0.scss new file mode 100644 index 0000000000..2204bedfe4 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-percent-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-percent-001.htm */ + +div { width: 500px; } +p { width: 300px; text-indent: 10%; } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-indent-wrap-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-indent-wrap-001.0.scss new file mode 100644 index 0000000000..fc5dab0d52 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-indent-wrap-001.0.scss @@ -0,0 +1,5 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-indent-wrap-001.htm */ + +p { text-indent: 100px } +span { background: yellow } + diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-001.0.scss new file mode 100644 index 0000000000..515fa762c3 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-capitalize-001.htm */ +.style { letter-spacing:2px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-001.1.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-001.1.scss new file mode 100644 index 0000000000..69ff275066 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-001.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-capitalize-001.htm */ +.style { text-transform:capitalize } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-002.0.scss new file mode 100644 index 0000000000..4d744e17b1 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-002.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-capitalize-002.htm */ +.style { letter-spacing:2px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-002.1.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-002.1.scss new file mode 100644 index 0000000000..c6bb7e4bef --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-002.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-capitalize-002.htm */ +.style { text-transform:capitalize } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.0.scss new file mode 100644 index 0000000000..0ba48a86c0 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-capitalize-003.htm */ +.style { letter-spacing:2px } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.1.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.1.scss new file mode 100644 index 0000000000..e1cb8d6745 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.1.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-capitalize-003.htm */ +.style { text-transform:capitalize } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.4.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.4.scss new file mode 100644 index 0000000000..a0d1d9a606 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.4.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-capitalize-003.htm */ +.style { text-transform:none } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.7.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.7.scss new file mode 100644 index 0000000000..438a1e4be2 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-capitalize-003.7.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-capitalize-003.htm */ +.style { white-space:nowrap } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-lowercase-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-lowercase-001.0.scss new file mode 100644 index 0000000000..fe6e97e39f --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-lowercase-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-lowercase-001.htm */ +.style { text-transform:lowercase } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-uppercase-001.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-uppercase-001.0.scss new file mode 100644 index 0000000000..7dc1c293cb --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-uppercase-001.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-uppercase-001.htm */ +.style { text-transform:uppercase } diff --git a/theme-compiler/tests/resources/w3ctests/scss/text-transform-uppercase-002.0.scss b/theme-compiler/tests/resources/w3ctests/scss/text-transform-uppercase-002.0.scss new file mode 100644 index 0000000000..c18eff8824 --- /dev/null +++ b/theme-compiler/tests/resources/w3ctests/scss/text-transform-uppercase-002.0.scss @@ -0,0 +1,2 @@ +/* Source: http://test.csswg.org/suites/css2.1/20110323/html4/text-transform-uppercase-002.htm */ +.style { text-transform:uppercase } diff --git a/theme-compiler/tests/src/com/vaadin/sass/AbstractTestBase.java b/theme-compiler/tests/src/com/vaadin/sass/AbstractTestBase.java index d867e6ccd0..01187b4502 100644 --- a/theme-compiler/tests/src/com/vaadin/sass/AbstractTestBase.java +++ b/theme-compiler/tests/src/com/vaadin/sass/AbstractTestBase.java @@ -30,6 +30,8 @@ import com.vaadin.sass.internal.ScssStylesheet; public abstract class AbstractTestBase { + public static final String CR = "\r"; + protected ScssStylesheet stylesheet; protected String originalScss; protected String parsedScss; @@ -69,17 +71,21 @@ public abstract class AbstractTestBase { public void testParser(String file) throws CSSException, IOException, URISyntaxException { originalScss = getFileContent(file); + originalScss = originalScss.replaceAll(CR, ""); ScssStylesheet sheet = getStyleSheet(file); parsedScss = sheet.toString(); + parsedScss = parsedScss.replace(CR, ""); Assert.assertEquals("Original CSS and parsed CSS do not match", originalScss, parsedScss); } public void testCompiler(String scss, String css) throws Exception { comparisonCss = getFileContent(css); + comparisonCss = comparisonCss.replaceAll(CR, ""); ScssStylesheet sheet = getStyleSheet(scss); sheet.compile(); parsedScss = sheet.toString(); + parsedScss = parsedScss.replaceAll(CR, ""); Assert.assertEquals("Original CSS and parsed CSS do not match", comparisonCss, parsedScss); } diff --git a/theme-compiler/tests/src/com/vaadin/sass/resolvers/VaadinResolverTest.java b/theme-compiler/tests/src/com/vaadin/sass/resolvers/VaadinResolverTest.java index 59b49888c2..0183142747 100644 --- a/theme-compiler/tests/src/com/vaadin/sass/resolvers/VaadinResolverTest.java +++ b/theme-compiler/tests/src/com/vaadin/sass/resolvers/VaadinResolverTest.java @@ -40,16 +40,26 @@ import java.lang.reflect.Method; import org.junit.Assert; import org.junit.Test; -import com.vaadin.sass.internal.resolver.VaadinResolver; +import com.vaadin.sass.internal.resolver.AbstractResolver; +import com.vaadin.sass.internal.resolver.ClassloaderResolver; +import com.vaadin.sass.internal.resolver.FilesystemResolver; public class VaadinResolverTest { @Test - public void testPathNormalization() throws Exception { + public void testFilesystemResolverPathNormalization() throws Exception { + testPathNormalization(new FilesystemResolver()); + } + + @Test + public void testClassloaderResolverPathNormalization() throws Exception { + testPathNormalization(new ClassloaderResolver()); + } - VaadinResolver resolver = new VaadinResolver(); + public void testPathNormalization(AbstractResolver resolver) + throws Exception { - Method normalizeMethod = VaadinResolver.class.getDeclaredMethod( + Method normalizeMethod = AbstractResolver.class.getDeclaredMethod( "normalize", String.class); normalizeMethod.setAccessible(true); diff --git a/theme-compiler/tests/src/com/vaadin/sass/testcases/css/Media.java b/theme-compiler/tests/src/com/vaadin/sass/testcases/css/Media.java index 1c84bf8c49..b7ca325aa7 100644 --- a/theme-compiler/tests/src/com/vaadin/sass/testcases/css/Media.java +++ b/theme-compiler/tests/src/com/vaadin/sass/testcases/css/Media.java @@ -33,4 +33,5 @@ public class Media extends AbstractTestBase { IOException { testParser(css); } + } diff --git a/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/AbstractDirectoryScanningSassTests.java b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/AbstractDirectoryScanningSassTests.java index 21edde0c17..6a5f8db73d 100644 --- a/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/AbstractDirectoryScanningSassTests.java +++ b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/AbstractDirectoryScanningSassTests.java @@ -28,8 +28,13 @@ import java.util.List; import org.apache.commons.io.IOUtils; import org.junit.Assert; +import org.w3c.css.sac.CSSException; +import org.w3c.css.sac.CSSParseException; import com.vaadin.sass.internal.ScssStylesheet; +import com.vaadin.sass.internal.handler.SCSSDocumentHandler; +import com.vaadin.sass.internal.handler.SCSSDocumentHandlerImpl; +import com.vaadin.sass.internal.handler.SCSSErrorHandler; import com.vaadin.sass.testcases.scss.SassTestRunner.FactoryTest; public abstract class AbstractDirectoryScanningSassTests { @@ -78,19 +83,38 @@ public abstract class AbstractDirectoryScanningSassTests { @FactoryTest public void compareScssWithCss(String scssResourceName) throws Exception { - String referenceCss; File scssFile = getSassLangResourceFile(scssResourceName); - File cssFile = getCssFile(scssFile); - referenceCss = IOUtils.toString(new FileInputStream(cssFile)); - ScssStylesheet scssStylesheet = ScssStylesheet.get(scssFile - .getCanonicalPath()); + + SCSSDocumentHandler documentHandler = new SCSSDocumentHandlerImpl(); + SCSSErrorHandler errorHandler = new SCSSErrorHandler() { + @Override + public void error(CSSParseException arg0) throws CSSException { + super.error(arg0); + Assert.fail(arg0.getMessage()); + } + + @Override + public void fatalError(CSSParseException arg0) throws CSSException { + super.error(arg0); + Assert.fail(arg0.getMessage()); + } + }; + + ScssStylesheet scssStylesheet = ScssStylesheet.get( + scssFile.getCanonicalPath(), null, documentHandler, + errorHandler); scssStylesheet.compile(); String parsedCss = scssStylesheet.toString(); - String normalizedReference = normalize(referenceCss); - String normalizedParsed = normalize(parsedCss); - Assert.assertEquals("Original CSS and parsed CSS do not match for " - + scssResourceName, normalizedReference, normalizedParsed); + if (getCssFile(scssFile) != null) { + String referenceCss = IOUtils.toString(new FileInputStream( + getCssFile(scssFile))); + String normalizedReference = normalize(referenceCss); + String normalizedParsed = normalize(parsedCss); + + Assert.assertEquals("Original CSS and parsed CSS do not match for " + + scssResourceName, normalizedReference, normalizedParsed); + } } private String normalize(String css) { @@ -120,7 +144,7 @@ public abstract class AbstractDirectoryScanningSassTests { return new File(res.toURI()); } - private File getCssFile(File scssFile) throws IOException { + protected File getCssFile(File scssFile) throws IOException { return new File(scssFile.getCanonicalPath().replace("scss", "css")); } } diff --git a/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/CompassImports.java b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/CompassImports.java new file mode 100644 index 0000000000..4e87eb2197 --- /dev/null +++ b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/CompassImports.java @@ -0,0 +1,82 @@ +/* + * Copyright 2000-2013 Vaadin Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ + +package com.vaadin.sass.testcases.scss; + +import java.io.File; +import java.io.IOException; + +import junit.framework.Assert; + +import org.junit.Test; +import org.w3c.css.sac.CSSException; + +import com.vaadin.sass.AbstractTestBase; +import com.vaadin.sass.internal.ScssStylesheet; +import com.vaadin.sass.internal.handler.SCSSDocumentHandler; +import com.vaadin.sass.internal.handler.SCSSDocumentHandlerImpl; +import com.vaadin.sass.internal.parser.Parser; +import com.vaadin.sass.internal.resolver.FilesystemResolver; +import com.vaadin.sass.internal.tree.ImportNode; + +public class CompassImports extends AbstractTestBase { + + String scssOtherDirectory = "/scss/compass-test/compass-import.scss"; + String scssSameDirectory = "/scss/compass-test2/compass-import2.scss"; + String css = "/css/compass-import.css"; + + String compassPath = "/scss/compass-test2"; + + @Test + public void testParser() throws CSSException, IOException { + Parser parser = new Parser(); + SCSSDocumentHandler handler = new SCSSDocumentHandlerImpl(); + parser.setDocumentHandler(handler); + parser.parseStyleSheet(getClass().getResource(scssOtherDirectory) + .getPath()); + ScssStylesheet root = handler.getStyleSheet(); + ImportNode importVariableNode = (ImportNode) root.getChildren().get(0); + Assert.assertEquals("compass", importVariableNode.getUri()); + Assert.assertFalse(importVariableNode.isPureCssImport()); + } + + @Test + public void testCompiler() throws Exception { + testCompiler(scssSameDirectory, css, null); + } + + @Test + public void testCompilerWithCustomPath() throws Exception { + File rootPath = new File(getClass().getResource(compassPath).toURI()); + + testCompiler(scssOtherDirectory, css, rootPath.getPath()); + } + + public void testCompiler(String scss, String css, String additionalPath) + throws Exception { + comparisonCss = getFileContent(css); + comparisonCss = comparisonCss.replaceAll(CR, ""); + ScssStylesheet sheet = getStyleSheet(scss); + Assert.assertNotNull(sheet); + sheet.addResolver(new FilesystemResolver(additionalPath)); + + sheet.compile(); + parsedScss = sheet.toString(); + parsedScss = parsedScss.replaceAll(CR, ""); + Assert.assertEquals("Original CSS and parsed CSS do not match", + comparisonCss, parsedScss); + } +} diff --git a/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/W3ConformanceTests.java b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/W3ConformanceTests.java new file mode 100644 index 0000000000..8dbc6345d6 --- /dev/null +++ b/theme-compiler/tests/src/com/vaadin/sass/testcases/scss/W3ConformanceTests.java @@ -0,0 +1,236 @@ +/* + * Copyright 2000-2013 Vaadin Ltd. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ +package com.vaadin.sass.testcases.scss; + +import java.io.File; +import java.io.IOException; +import java.io.PrintStream; +import java.net.URI; +import java.net.URISyntaxException; +import java.net.URL; +import java.util.ArrayList; +import java.util.Collection; +import java.util.LinkedHashSet; +import java.util.List; + +import org.apache.commons.io.FilenameUtils; +import org.apache.commons.io.IOUtils; +import org.jsoup.Jsoup; +import org.jsoup.nodes.Document; +import org.jsoup.nodes.Element; +import org.jsoup.select.Elements; +import org.junit.runner.RunWith; + +import com.vaadin.sass.testcases.scss.SassTestRunner.TestFactory; + +@RunWith(SassTestRunner.class) +public class W3ConformanceTests extends AbstractDirectoryScanningSassTests { + + @Override + protected URL getResourceURL(String path) { + return getResourceURLInternal(path); + } + + private static URL getResourceURLInternal(String path) { + return AutomaticSassTests.class.getResource("/w3ctests" + path); + } + + @TestFactory + public static Collection<String> getScssResourceNames() + throws URISyntaxException, IOException { + return getScssResourceNames(getResourceURLInternal("")); + } + + @Override + protected File getCssFile(File scssFile) throws IOException { + /* + * We should really compare the result of unparse(parse(css)) to css, + * but the comparator routine is currently too primitive. + */ + // return scssFile; + + // no comparison step, just parse, in this test + return null; + } + + /* + * Download W3C conformance tests for CSS 2.1 and CSS 3 (selectors), + * extracts all CSS (style tags, inline styles, and linked stylesheets), + * then tries to parse them. Since each CSS is valid SCSS, the parser should + * accept them. As these are browser tests, some are intentionally + * malformed, and must be excluded from the test suite. + */ + + public static void main(String[] args) throws Exception { + if (args.length < 1) { + System.err.println("Target directory not provided"); + return; + } + File targetDir = new File(args[0]); + for (URI url : CSS21()) { + extractCSS(url, targetDir); + } + for (URI url : CSS3Selectors()) { + extractCSS(url, targetDir); + } + + } + + public static Collection<URI> CSS21() throws Exception { + /* + * Tests explicitly excluded are listed below---case by case motivation + * required! + */ + final String[] excludelist = new String[] { + // Unsupported character encoding UTF-16 + "http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-utf16-be-002.htm", + "http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-utf16-be-003.htm", + "http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-utf16-le-002.htm", + "http://test.csswg.org/suites/css2.1/20110323/html4/at-charset-utf16-le-003.htm", + + // Font family name contains (Asian?) cryptoglyphs + "http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-010.htm", + "http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-011.htm", + "http://test.csswg.org/suites/css2.1/20110323/html4/font-family-name-015.htm", + + // Contains syntactically illegal CSS + "http://test.csswg.org/suites/css2.1/20110323/html4/uri-013.htm", + + // Missing semicolon on line 29 + "http://test.csswg.org/suites/css2.1/20110323/html4/z-index-020.htm", }; + + // Note: W3C test reference files also not included! + return scrapeIndexForTests( + "http://test.csswg.org/suites/css2.1/20110323/html4/reftest-toc.html", + ".*[0-9][0-9][0-9][a-z]?\\.htm", Integer.MAX_VALUE, + new LinkedHashSet<URI>() { + { + for (String s : excludelist) { + add(new URI(s)); + } + } + }); + } + + public static Collection<URI> CSS3Selectors() throws Exception { + /* + * Tests explicitly excluded are listed below---case by case motivation + * required! + */ + final String[] excludelist = new String[] { + + // Probable bug/limitation (filed as #12834) + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-73.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-73b.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-74.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-74b.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-75.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-75b.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-76.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-76b.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-83.html", + + // Invalid CSS, although sass-lang compiler accepts (see #12835) + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-154.html", + + // Invalid CSS? sass-lang compiler fails + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-157.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-158.html", + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/css3-modsel-183.html", }; + + return scrapeIndexForTests( + "http://www.w3.org/Style/CSS/Test/CSS3/Selectors/current/html/tests/", + "css3-.*\\.html", Integer.MAX_VALUE, new LinkedHashSet<URI>() { + { + for (String s : excludelist) { + add(new URI(s)); + } + } + }); + } + + /* + * Loads up to maxTest tests, excluding any URL in excludeUrls. + */ + protected static Collection<URI> scrapeIndexForTests(String url, + String regexp, int maxTests, Collection<URI> excludeUrls) + throws Exception { + + URI baseUrl = new URI(url); + Document doc = Jsoup.connect(url).timeout(10000).get(); + Elements elems = doc.select(String.format("a[href~=%s]", regexp)); + LinkedHashSet<URI> tests = new LinkedHashSet<URI>(); + for (Element e : elems) { + URI testUrl = new URI(e.attr("href")); + if (!testUrl.isAbsolute()) { + testUrl = baseUrl.resolve(testUrl); + } + if (tests.size() < maxTests) { + if (!excludeUrls.contains(testUrl)) { + tests.add(testUrl); + } + } else { + break; + } + } + + return tests; + } + + public static void extractCSS(final URI url, File targetdir) + throws Exception { + /* + * For each test URL: 1) extract <style> tag contents 2) extract from + * <link rel="stylesheet"> files 3) extract inline style attributes from + * all elements and wrap the result in .style {} + */ + + Document doc = Jsoup.connect(url.toString()).timeout(20000).get(); + + List<String> tests = new ArrayList<String>(); + + for (Element e : doc.select("style[type=text/css]")) { + tests.add(e.data()); + } + + for (Element e : doc + .select("link[rel=stylesheet][href][type=text/css]")) { + URI cssUri = new URI(e.attr("href")); + if (!cssUri.isAbsolute()) { + cssUri = url.resolve(cssUri); + } + String encoding = doc.outputSettings().charset().name(); + tests.add(IOUtils.toString(cssUri, encoding)); + } + + for (Element e : doc.select("*[style]")) { + tests.add(String.format(".style { %s }", e.attr("style"))); + } + + for (final String test : tests) { + targetdir.mkdirs(); + String logfile = String.format("%s.%d.scss", + FilenameUtils.getBaseName(url.toString()), + tests.indexOf(test)); + PrintStream dataLogger = new PrintStream(new File(targetdir, + logfile)); + + dataLogger.println("/* Source: " + url + " */"); + dataLogger.println(test); + + } + } +} |