diff --git a/.checkstyle b/.checkstyle
new file mode 100644
index 00000000..1ded3f7c
--- /dev/null
+++ b/.checkstyle
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/.classpath b/.classpath
new file mode 100644
index 00000000..8ba48b91
--- /dev/null
+++ b/.classpath
@@ -0,0 +1,44 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/.project b/.project
new file mode 100644
index 00000000..ff04143c
--- /dev/null
+++ b/.project
@@ -0,0 +1,30 @@
+
+
+ vaadin-sass-compiler
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ net.sf.eclipsecs.core.CheckstyleBuilder
+
+
+
+
+ org.eclipse.m2e.core.maven2Builder
+
+
+
+
+
+ org.eclipse.pde.PluginNature
+ net.sf.eclipsecs.core.CheckstyleNature
+ org.eclipse.jdt.core.javanature
+ org.eclipse.m2e.core.maven2Nature
+
+
diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000..04cfa2c1
--- /dev/null
+++ b/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,6 @@
+eclipse.preferences.version=1
+encoding//src/main/java=UTF-8
+encoding//src/main/resources=UTF-8
+encoding//src/test/java=UTF-8
+encoding//src/test/resources=UTF-8
+encoding/=UTF-8
diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000..e4fa8628
--- /dev/null
+++ b/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,98 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
+org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
+org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
+org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=
+org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
+org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
+org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
+org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
+org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
+org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
+org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.deadCode=warning
+org.eclipse.jdt.core.compiler.problem.deprecation=warning
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=error
+org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=ignore
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
+org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
+org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=error
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=error
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=ignore
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
+org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
+org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
+org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
+org.eclipse.jdt.core.compiler.problem.nullReference=error
+org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
+org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=error
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
+org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
+org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=error
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=error
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore
+org.eclipse.jdt.core.compiler.problem.unusedImport=warning
+org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
+org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=error
+org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
+org.eclipse.jdt.core.compiler.source=1.6
diff --git a/.settings/org.eclipse.m2e.core.prefs b/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 00000000..14b697b7
--- /dev/null
+++ b/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/.settings/org.eclipse.pde.core.prefs b/.settings/org.eclipse.pde.core.prefs
new file mode 100644
index 00000000..394603ce
--- /dev/null
+++ b/.settings/org.eclipse.pde.core.prefs
@@ -0,0 +1,2 @@
+BUNDLE_ROOT_PATH=target/classes
+eclipse.preferences.version=1
diff --git a/src/main/java/com/vaadin/sass/ArgumentParser.java b/src/main/java/com/vaadin/sass/ArgumentParser.java
index 9c01d43c..01c28fa6 100644
--- a/src/main/java/com/vaadin/sass/ArgumentParser.java
+++ b/src/main/java/com/vaadin/sass/ArgumentParser.java
@@ -291,6 +291,7 @@ private void processOption(String opt) {
if (o == null) {
// Fail on invalid option. This halts the program.
invalidOption(optName);
+ return;
}
if (o == helpOption) {
diff --git a/src/main/java/com/vaadin/sass/SassCompiler.java b/src/main/java/com/vaadin/sass/SassCompiler.java
index b3cba30a..1d1d8b52 100644
--- a/src/main/java/com/vaadin/sass/SassCompiler.java
+++ b/src/main/java/com/vaadin/sass/SassCompiler.java
@@ -89,12 +89,13 @@ public static void main(String[] args) throws Exception {
errorHandler.setWarningsAreErrors(!ignoreWarnings);
try {
// Parse stylesheet
- ScssStylesheet scss = ScssStylesheet.get(input, null,
+ final ScssStylesheet scss = ScssStylesheet.get(input, null,
new SCSSDocumentHandlerImpl(), errorHandler);
if (scss == null) {
System.err.println("The scss file " + input
+ " could not be found.");
System.exit(ERROR_FILE_NOT_FOUND);
+ return;
}
// Compile scss -> css
diff --git a/src/main/java/com/vaadin/sass/internal/ScssContext.java b/src/main/java/com/vaadin/sass/internal/ScssContext.java
index d9e5f484..749991c4 100644
--- a/src/main/java/com/vaadin/sass/internal/ScssContext.java
+++ b/src/main/java/com/vaadin/sass/internal/ScssContext.java
@@ -39,7 +39,7 @@ public class ScssContext {
*/
public enum UrlMode {
ABSOLUTE, MIXED, RELATIVE
- };
+ }
private UrlMode urlMode;
diff --git a/src/main/java/com/vaadin/sass/internal/ScssStylesheet.java b/src/main/java/com/vaadin/sass/internal/ScssStylesheet.java
index f224df7d..7cfac6fd 100644
--- a/src/main/java/com/vaadin/sass/internal/ScssStylesheet.java
+++ b/src/main/java/com/vaadin/sass/internal/ScssStylesheet.java
@@ -44,7 +44,7 @@
import com.vaadin.sass.internal.tree.Node;
import com.vaadin.sass.internal.visitor.ExtendNodeHandler;
-public class ScssStylesheet extends Node {
+public final class ScssStylesheet extends Node {
private static final long serialVersionUID = 3849790204404961608L;
@@ -144,8 +144,7 @@ public static ScssStylesheet get(String identifier,
}
// FIXME Is this actually intended? /John 1.3.2013
- File file = new File(identifier);
- file = file.getCanonicalFile();
+ new File(identifier).getCanonicalFile();
ScssStylesheet stylesheet = documentHandler.getStyleSheet();
if (parentStylesheet == null) {
diff --git a/src/main/java/com/vaadin/sass/internal/handler/SCSSDocumentHandlerImpl.java b/src/main/java/com/vaadin/sass/internal/handler/SCSSDocumentHandlerImpl.java
index 3837a9a7..28ab00ff 100644
--- a/src/main/java/com/vaadin/sass/internal/handler/SCSSDocumentHandlerImpl.java
+++ b/src/main/java/com/vaadin/sass/internal/handler/SCSSDocumentHandlerImpl.java
@@ -393,14 +393,6 @@ 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/src/main/java/com/vaadin/sass/internal/parser/ArgumentList.java b/src/main/java/com/vaadin/sass/internal/parser/ArgumentList.java
index d69e84e6..1e6b992e 100644
--- a/src/main/java/com/vaadin/sass/internal/parser/ArgumentList.java
+++ b/src/main/java/com/vaadin/sass/internal/parser/ArgumentList.java
@@ -15,7 +15,6 @@
*/
package com.vaadin.sass.internal.parser;
-import java.io.Serializable;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@@ -30,7 +29,7 @@
* used in ActualArgumentList to represent the unnamed (positional) and named
* parameters of an @include or a function call.
*/
-public class ArgumentList extends SassList implements Serializable {
+public class ArgumentList extends SassList {
private List namedVariables = new ArrayList();
public ArgumentList(SassList list) {
diff --git a/src/main/java/com/vaadin/sass/internal/parser/Generic_CharStream.java b/src/main/java/com/vaadin/sass/internal/parser/Generic_CharStream.java
index a6df9c93..f61f9948 100644
--- a/src/main/java/com/vaadin/sass/internal/parser/Generic_CharStream.java
+++ b/src/main/java/com/vaadin/sass/internal/parser/Generic_CharStream.java
@@ -128,7 +128,8 @@ else if ((tokenBegin - available) < 2048)
}
}
- public final char BeginToken() throws java.io.IOException {
+ @Override
+ public final char BeginToken() throws java.io.IOException {
tokenBegin = -1;
char c = readChar();
tokenBegin = bufpos;
@@ -169,7 +170,8 @@ private final void UpdateLineColumn(char c) {
bufcolumn[bufpos] = column;
}
- public final char readChar() throws java.io.IOException {
+ @Override
+ public final char readChar() throws java.io.IOException {
if (inBuf > 0) {
--inBuf;
return (char) ((char) 0xff & buffer[(bufpos == bufsize - 1) ? (bufpos = 0)
@@ -190,7 +192,8 @@ public final char readChar() throws java.io.IOException {
* @see #getEndColumn
*/
- public final int getColumn() {
+ @Override
+ public final int getColumn() {
return bufcolumn[bufpos];
}
@@ -199,27 +202,33 @@ public final int getColumn() {
* @see #getEndLine
*/
- public final int getLine() {
+ @Override
+ public final int getLine() {
return bufline[bufpos];
}
- public final int getEndColumn() {
+ @Override
+ public final int getEndColumn() {
return bufcolumn[bufpos];
}
- public final int getEndLine() {
+ @Override
+ public final int getEndLine() {
return bufline[bufpos];
}
- public final int getBeginColumn() {
+ @Override
+ public final int getBeginColumn() {
return bufcolumn[tokenBegin];
}
- public final int getBeginLine() {
+ @Override
+ public final int getBeginLine() {
return bufline[tokenBegin];
}
- public final void backup(int amount) {
+ @Override
+ public final void backup(int amount) {
inBuf += amount;
if ((bufpos -= amount) < 0)
@@ -264,7 +273,8 @@ public void ReInit(java.io.Reader dstream, int startline, int startcolumn) {
ReInit(dstream, startline, startcolumn, 4096);
}
- public final String GetImage() {
+ @Override
+ public final String GetImage() {
if (bufpos >= tokenBegin)
return new String(buffer, tokenBegin, bufpos - tokenBegin + 1);
else
@@ -272,7 +282,8 @@ public final String GetImage() {
+ new String(buffer, 0, bufpos + 1);
}
- public final char[] GetSuffix(int len) {
+ @Override
+ public final char[] GetSuffix(int len) {
char[] ret = new char[len];
if ((bufpos + 1) >= len)
@@ -285,7 +296,8 @@ public final char[] GetSuffix(int len) {
return ret;
}
- public void Done() {
+ @Override
+ public void Done() {
buffer = null;
bufline = null;
bufcolumn = null;
diff --git a/src/main/java/com/vaadin/sass/internal/parser/LexicalUnitImpl.java b/src/main/java/com/vaadin/sass/internal/parser/LexicalUnitImpl.java
index 9849b990..9555bd0c 100644
--- a/src/main/java/com/vaadin/sass/internal/parser/LexicalUnitImpl.java
+++ b/src/main/java/com/vaadin/sass/internal/parser/LexicalUnitImpl.java
@@ -79,7 +79,7 @@
*
* @modified Sebastian Nyholm @ Vaadin Ltd
*/
-public class LexicalUnitImpl implements LexicalUnit, SCSSLexicalUnit,
+public class LexicalUnitImpl implements SCSSLexicalUnit,
SassListItem, Serializable {
private static final long serialVersionUID = -6649833716809789399L;
@@ -141,11 +141,13 @@ public class LexicalUnitImpl implements LexicalUnit, SCSSLexicalUnit,
this.params = params;
}
- public int getLineNumber() {
+ @Override
+ public int getLineNumber() {
return line;
}
- public int getColumnNumber() {
+ @Override
+ public int getColumnNumber() {
return column;
}
@@ -295,7 +297,8 @@ public String getDimensionUnitText() {
}
}
- public String getStringValue() {
+ @Override
+ public String getStringValue() {
return s == null ? null : s.toString();
}
@@ -333,7 +336,8 @@ public LexicalUnitImpl getSubValues() {
*
* @return State as a string
*/
- public String printState() {
+ @Override
+ public String printState() {
if (printState == null) {
printState = buildString(Node.PRINT_STRATEGY);
}
diff --git a/src/main/java/com/vaadin/sass/internal/parser/SassExpression.java b/src/main/java/com/vaadin/sass/internal/parser/SassExpression.java
index cc5a88c4..a53f1862 100644
--- a/src/main/java/com/vaadin/sass/internal/parser/SassExpression.java
+++ b/src/main/java/com/vaadin/sass/internal/parser/SassExpression.java
@@ -119,7 +119,8 @@ public int getColumnNumber() {
return column;
}
- public boolean containsArithmeticalOperator() {
+ @Override
+ public boolean containsArithmeticalOperator() {
for (SassListItem item : items) {
if (item.containsArithmeticalOperator()) {
return true;
diff --git a/src/main/java/com/vaadin/sass/internal/parser/SassList.java b/src/main/java/com/vaadin/sass/internal/parser/SassList.java
index a0f72721..49663b78 100644
--- a/src/main/java/com/vaadin/sass/internal/parser/SassList.java
+++ b/src/main/java/com/vaadin/sass/internal/parser/SassList.java
@@ -114,7 +114,8 @@ public LexicalUnitImpl getContainedValue() {
}
// A helper method for sass interpolation
- public String unquotedString() {
+ @Override
+ public String unquotedString() {
if (size() != 1) {
// preserve quotes if the list contains several elements
return printState();
@@ -230,7 +231,8 @@ public String buildString(BuildStringStrategy strategy) {
return result;
}
- public String printState() {
+ @Override
+ public String printState() {
return buildString(Node.PRINT_STRATEGY);
}
diff --git a/src/main/java/com/vaadin/sass/internal/parser/Variable.java b/src/main/java/com/vaadin/sass/internal/parser/Variable.java
index 6eab2c95..e365bc55 100644
--- a/src/main/java/com/vaadin/sass/internal/parser/Variable.java
+++ b/src/main/java/com/vaadin/sass/internal/parser/Variable.java
@@ -50,7 +50,8 @@ public void setExpr(SassListItem expr) {
this.expr = expr;
}
- public String getName() {
+ @Override
+ public String getName() {
return name;
}
diff --git a/src/main/java/com/vaadin/sass/internal/parser/function/AlphaFunctionGenerator.java b/src/main/java/com/vaadin/sass/internal/parser/function/AlphaFunctionGenerator.java
index d102364a..05c9d940 100644
--- a/src/main/java/com/vaadin/sass/internal/parser/function/AlphaFunctionGenerator.java
+++ b/src/main/java/com/vaadin/sass/internal/parser/function/AlphaFunctionGenerator.java
@@ -50,7 +50,7 @@ protected SassListItem computeForArgumentList(LexicalUnitImpl function,
private void checkParameters(LexicalUnitImpl function,
FormalArgumentList args) {
LexicalUnitImpl color = (LexicalUnitImpl) getParam(args, "color");
- if (!(color instanceof LexicalUnitImpl)
+ if (color == null
|| (!ColorUtil.isColor(color) && !ColorUtil.isRgba(color) && !ColorUtil
.isHsla(color))) {
throw new ParseException("The function "
diff --git a/src/main/java/com/vaadin/sass/internal/parser/function/TransparencyModificationFunctionGenerator.java b/src/main/java/com/vaadin/sass/internal/parser/function/TransparencyModificationFunctionGenerator.java
index c5c9aa6d..5675993b 100644
--- a/src/main/java/com/vaadin/sass/internal/parser/function/TransparencyModificationFunctionGenerator.java
+++ b/src/main/java/com/vaadin/sass/internal/parser/function/TransparencyModificationFunctionGenerator.java
@@ -100,18 +100,4 @@ private void checkParameters(LexicalUnitImpl function,
private float getFloat(ActualArgumentList params, int i) {
return params.get(i).getContainedValue().getFloatValue();
}
-
- private int getInteger(ActualArgumentList colorComponents, int i) {
- return colorComponents.get(i).getContainedValue().getIntegerValue();
- }
-
- private LexicalUnitImpl createNumber(LexicalUnitImpl parent, float value) {
- return LexicalUnitImpl.createNumber(parent.getLineNumber(),
- parent.getColumnNumber(), value);
- }
-
- private LexicalUnitImpl createNumber(LexicalUnitImpl parent, int value) {
- return LexicalUnitImpl.createNumber(parent.getLineNumber(),
- parent.getColumnNumber(), value);
- }
}
diff --git a/src/main/java/com/vaadin/sass/internal/resolver/AbstractResolver.java b/src/main/java/com/vaadin/sass/internal/resolver/AbstractResolver.java
index 864602f5..d65bd08c 100644
--- a/src/main/java/com/vaadin/sass/internal/resolver/AbstractResolver.java
+++ b/src/main/java/com/vaadin/sass/internal/resolver/AbstractResolver.java
@@ -136,9 +136,8 @@ protected String extractFullPath(String path, String 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);
+ private InputSource normalizeAndResolve(String identifier) {
+ return resolveNormalized(normalize(identifier));
}
/**
@@ -160,7 +159,7 @@ protected InputSource normalizeAndResolve(String identifier) {
* A relative or absolute file path
* @return The normalized path
*/
- protected String normalize(String path) {
+ private static String normalize(String path) {
// Ensure only "/" is used, also in Windows
path = path.replace(File.separatorChar, '/');
diff --git a/src/main/java/com/vaadin/sass/internal/resolver/FilesystemResolver.java b/src/main/java/com/vaadin/sass/internal/resolver/FilesystemResolver.java
index a355cfca..d9937f80 100644
--- a/src/main/java/com/vaadin/sass/internal/resolver/FilesystemResolver.java
+++ b/src/main/java/com/vaadin/sass/internal/resolver/FilesystemResolver.java
@@ -15,6 +15,7 @@
*/
package com.vaadin.sass.internal.resolver;
+import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
@@ -63,7 +64,7 @@ public InputSource resolveNormalized(String identifier) {
try {
InputStream is = new FileInputStream(fileName);
InputSource source = new InputSource();
- source.setByteStream(is);
+ source.setByteStream(new BufferedInputStream(is));
source.setURI(fileName);
return source;
diff --git a/src/main/java/com/vaadin/sass/internal/tree/BlockNode.java b/src/main/java/com/vaadin/sass/internal/tree/BlockNode.java
index 63783428..d823a5f7 100644
--- a/src/main/java/com/vaadin/sass/internal/tree/BlockNode.java
+++ b/src/main/java/com/vaadin/sass/internal/tree/BlockNode.java
@@ -20,9 +20,6 @@
import java.util.Collection;
import java.util.Collections;
import java.util.List;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
import com.vaadin.sass.internal.ScssContext;
import com.vaadin.sass.internal.handler.SCSSErrorHandler;
import com.vaadin.sass.internal.selector.Selector;
diff --git a/src/main/java/com/vaadin/sass/internal/tree/DefNode.java b/src/main/java/com/vaadin/sass/internal/tree/DefNode.java
index dce4b201..39841da6 100644
--- a/src/main/java/com/vaadin/sass/internal/tree/DefNode.java
+++ b/src/main/java/com/vaadin/sass/internal/tree/DefNode.java
@@ -33,7 +33,7 @@
*/
public abstract class DefNode extends Node implements Definition,
IVariableNode, NodeWithUrlContent {
- private String name;
+ private final String name;
private FormalArgumentList arglist;
private Scope definitionScope;
@@ -51,7 +51,8 @@ protected DefNode(DefNode nodeToCopy) {
definitionScope = nodeToCopy.definitionScope;
}
- public String getName() {
+ @Override
+ public String getName() {
return name;
}
@@ -81,7 +82,8 @@ protected void setDefinitionScope(Scope scope) {
definitionScope = scope;
}
- public DefNode updateUrl(String prefix) {
+ @Override
+ public DefNode updateUrl(String prefix) {
DefNode newInstance = (DefNode) copy();
newInstance.arglist = arglist.updateUrl(prefix);
return newInstance;
diff --git a/src/main/java/com/vaadin/sass/internal/tree/ExtendNode.java b/src/main/java/com/vaadin/sass/internal/tree/ExtendNode.java
index 68ded04a..a0b27ec1 100644
--- a/src/main/java/com/vaadin/sass/internal/tree/ExtendNode.java
+++ b/src/main/java/com/vaadin/sass/internal/tree/ExtendNode.java
@@ -20,9 +20,6 @@
import java.util.Collection;
import java.util.Collections;
import java.util.List;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
import com.vaadin.sass.internal.ScssContext;
import com.vaadin.sass.internal.handler.SCSSErrorHandler;
import com.vaadin.sass.internal.selector.Selector;
@@ -31,8 +28,8 @@
public class ExtendNode extends Node implements IVariableNode {
private static final long serialVersionUID = 3301805078983796878L;
- private List list;
- private boolean optional;
+ private final List list;
+ private final boolean optional;
public ExtendNode(List list, boolean optional) {
super();
diff --git a/src/main/java/com/vaadin/sass/internal/tree/FunctionCall.java b/src/main/java/com/vaadin/sass/internal/tree/FunctionCall.java
index 7661400d..206f7d76 100644
--- a/src/main/java/com/vaadin/sass/internal/tree/FunctionCall.java
+++ b/src/main/java/com/vaadin/sass/internal/tree/FunctionCall.java
@@ -34,7 +34,11 @@
* function. This class is used to evaluate the function call and is discarded
* after use. A FunctionCall does not have a parent in the stylesheet node tree.
*/
-public class FunctionCall {
+public final class FunctionCall {
+
+ private FunctionCall() {
+ /* util class */
+ }
public static SassListItem evaluate(ScssContext context,
FunctionDefNode def, LexicalUnitImpl invocation) {
diff --git a/src/main/java/com/vaadin/sass/internal/tree/ImportNode.java b/src/main/java/com/vaadin/sass/internal/tree/ImportNode.java
index b7289b34..34604e3e 100644
--- a/src/main/java/com/vaadin/sass/internal/tree/ImportNode.java
+++ b/src/main/java/com/vaadin/sass/internal/tree/ImportNode.java
@@ -29,8 +29,8 @@ public class ImportNode extends Node implements NodeWithUrlContent {
private static final long serialVersionUID = 5671255892282668438L;
private String uri;
- private SACMediaList ml;
- private boolean isURL;
+ private final SACMediaList ml;
+ private final boolean isURL;
// the stylesheet which contained this import node - usually empty as its
// contents have been moved to its parent, but used to access resolvers,
diff --git a/src/main/java/com/vaadin/sass/internal/tree/KeyframeSelectorNode.java b/src/main/java/com/vaadin/sass/internal/tree/KeyframeSelectorNode.java
index 168daacc..3c998e09 100644
--- a/src/main/java/com/vaadin/sass/internal/tree/KeyframeSelectorNode.java
+++ b/src/main/java/com/vaadin/sass/internal/tree/KeyframeSelectorNode.java
@@ -22,7 +22,7 @@
import com.vaadin.sass.internal.ScssContext;
public class KeyframeSelectorNode extends Node {
- private String selector;
+ private final String selector;
public KeyframeSelectorNode(String selector) {
this.selector = selector;
diff --git a/src/main/java/com/vaadin/sass/internal/tree/KeyframesNode.java b/src/main/java/com/vaadin/sass/internal/tree/KeyframesNode.java
index 264caf0f..291df695 100644
--- a/src/main/java/com/vaadin/sass/internal/tree/KeyframesNode.java
+++ b/src/main/java/com/vaadin/sass/internal/tree/KeyframesNode.java
@@ -23,7 +23,7 @@
import com.vaadin.sass.internal.parser.StringInterpolationSequence;
public class KeyframesNode extends Node implements IVariableNode {
- private String keyframeName;
+ private final String keyframeName;
private StringInterpolationSequence animationName;
public KeyframesNode(String keyframeName,
diff --git a/src/main/java/com/vaadin/sass/internal/tree/MediaNode.java b/src/main/java/com/vaadin/sass/internal/tree/MediaNode.java
index 5f84e8f9..df419204 100644
--- a/src/main/java/com/vaadin/sass/internal/tree/MediaNode.java
+++ b/src/main/java/com/vaadin/sass/internal/tree/MediaNode.java
@@ -26,7 +26,7 @@
public class MediaNode extends Node {
private static final long serialVersionUID = 2502097081457509523L;
- SACMediaList media;
+ private SACMediaList media;
public MediaNode(SACMediaList media) {
super();
diff --git a/src/main/java/com/vaadin/sass/internal/tree/MixinNode.java b/src/main/java/com/vaadin/sass/internal/tree/MixinNode.java
index 919bf8a5..dbe88bee 100644
--- a/src/main/java/com/vaadin/sass/internal/tree/MixinNode.java
+++ b/src/main/java/com/vaadin/sass/internal/tree/MixinNode.java
@@ -45,7 +45,7 @@ public class MixinNode extends Node implements IVariableNode,
// these are the actual parameter values, not whether the definition node
// uses varargs
private ActualArgumentList arglist;
- private String name;
+ private final String name;
public MixinNode(String name) {
this(name, new ArrayList(), false);
diff --git a/src/main/java/com/vaadin/sass/internal/tree/Node.java b/src/main/java/com/vaadin/sass/internal/tree/Node.java
index 284af138..418d5a1a 100644
--- a/src/main/java/com/vaadin/sass/internal/tree/Node.java
+++ b/src/main/java/com/vaadin/sass/internal/tree/Node.java
@@ -30,13 +30,13 @@
public abstract class Node implements Serializable {
- public static BuildStringStrategy PRINT_STRATEGY = new PrintStrategy();
+ public static final BuildStringStrategy PRINT_STRATEGY = new PrintStrategy();
- public static BuildStringStrategy TO_STRING_STRATEGY = new ToStringStrategy();
+ public static final BuildStringStrategy TO_STRING_STRATEGY = new ToStringStrategy();
private static final long serialVersionUID = 5914711715839294816L;
- private ArrayList children = null;
+ private ArrayList children;
private Node parentNode;
diff --git a/src/main/java/com/vaadin/sass/internal/tree/RuleNode.java b/src/main/java/com/vaadin/sass/internal/tree/RuleNode.java
index 00d466df..396f83e7 100644
--- a/src/main/java/com/vaadin/sass/internal/tree/RuleNode.java
+++ b/src/main/java/com/vaadin/sass/internal/tree/RuleNode.java
@@ -26,9 +26,9 @@
public class RuleNode extends Node implements IVariableNode, NodeWithUrlContent {
private static final long serialVersionUID = 6653493127869037022L;
- StringInterpolationSequence variable;
- SassListItem value = null;
- String comment;
+ private StringInterpolationSequence variable;
+ private SassListItem value = null;
+ private String comment;
private boolean important;
public RuleNode(StringInterpolationSequence variable, SassListItem value,
diff --git a/src/main/java/com/vaadin/sass/internal/tree/VariableNode.java b/src/main/java/com/vaadin/sass/internal/tree/VariableNode.java
index 3be8f57a..ad84e31a 100644
--- a/src/main/java/com/vaadin/sass/internal/tree/VariableNode.java
+++ b/src/main/java/com/vaadin/sass/internal/tree/VariableNode.java
@@ -44,7 +44,8 @@ public void setExpr(SassListItem expr) {
variable.setExpr(expr);
}
- public String getName() {
+ @Override
+ public String getName() {
return variable.getName();
}
diff --git a/src/main/java/com/vaadin/sass/internal/tree/controldirective/EachDefNode.java b/src/main/java/com/vaadin/sass/internal/tree/controldirective/EachDefNode.java
index 42e75d4d..9f1c34f0 100644
--- a/src/main/java/com/vaadin/sass/internal/tree/controldirective/EachDefNode.java
+++ b/src/main/java/com/vaadin/sass/internal/tree/controldirective/EachDefNode.java
@@ -30,7 +30,7 @@ public class EachDefNode extends Node implements IVariableNode,
NodeWithUrlContent {
private static final long serialVersionUID = 7943948981204906221L;
- private String var;
+ private final String var;
private SassListItem list;
public EachDefNode(String var, SassListItem list) {
diff --git a/src/main/java/com/vaadin/sass/internal/tree/controldirective/IfElseDefNode.java b/src/main/java/com/vaadin/sass/internal/tree/controldirective/IfElseDefNode.java
index 6ec7455b..5738f71e 100644
--- a/src/main/java/com/vaadin/sass/internal/tree/controldirective/IfElseDefNode.java
+++ b/src/main/java/com/vaadin/sass/internal/tree/controldirective/IfElseDefNode.java
@@ -17,9 +17,6 @@
import java.util.Collection;
import java.util.Collections;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
import com.vaadin.sass.internal.ScssContext;
import com.vaadin.sass.internal.handler.SCSSErrorHandler;
import com.vaadin.sass.internal.tree.Node;
diff --git a/src/main/java/com/vaadin/sass/internal/tree/controldirective/IfNode.java b/src/main/java/com/vaadin/sass/internal/tree/controldirective/IfNode.java
index bbefd01e..425e8c17 100644
--- a/src/main/java/com/vaadin/sass/internal/tree/controldirective/IfNode.java
+++ b/src/main/java/com/vaadin/sass/internal/tree/controldirective/IfNode.java
@@ -24,7 +24,7 @@
import com.vaadin.sass.internal.tree.Node;
public class IfNode extends Node implements IfElseNode, IVariableNode {
- private SassListItem expression;
+ private SassListItem expression;
public IfNode(SassListItem expression) {
if (expression == null) {
diff --git a/src/main/java/com/vaadin/sass/internal/tree/controldirective/TemporaryNode.java b/src/main/java/com/vaadin/sass/internal/tree/controldirective/TemporaryNode.java
index 9a9c4bee..dd249c86 100644
--- a/src/main/java/com/vaadin/sass/internal/tree/controldirective/TemporaryNode.java
+++ b/src/main/java/com/vaadin/sass/internal/tree/controldirective/TemporaryNode.java
@@ -27,7 +27,7 @@
*/
public class TemporaryNode extends Node {
- private Node parentNode;
+ private final Node parentNode;
public TemporaryNode(Node parent) {
parentNode = parent;
diff --git a/src/main/java/com/vaadin/sass/internal/tree/controldirective/WhileNode.java b/src/main/java/com/vaadin/sass/internal/tree/controldirective/WhileNode.java
index 9171cd1f..3528a713 100644
--- a/src/main/java/com/vaadin/sass/internal/tree/controldirective/WhileNode.java
+++ b/src/main/java/com/vaadin/sass/internal/tree/controldirective/WhileNode.java
@@ -25,7 +25,7 @@
public class WhileNode extends Node {
- private SassListItem condition;
+ private final SassListItem condition;
public WhileNode(SassListItem condition) {
this.condition = condition;
diff --git a/src/main/java/com/vaadin/sass/internal/util/ColorUtil.java b/src/main/java/com/vaadin/sass/internal/util/ColorUtil.java
index 7790ca82..41bfa68a 100644
--- a/src/main/java/com/vaadin/sass/internal/util/ColorUtil.java
+++ b/src/main/java/com/vaadin/sass/internal/util/ColorUtil.java
@@ -395,18 +395,6 @@ private static String rgbToHexColor(int[] rgb, int length) {
return builder.toString();
}
- private static LexicalUnitImpl hslToColor(LexicalUnitImpl hsl) {
- String colorString = rgbToColorString(hslToRgb(hsl));
- return LexicalUnitImpl.createIdent(colorString);
- }
-
- private static LexicalUnitImpl colorToHslUnit(LexicalUnitImpl color) {
- float[] hsl = colorToHsl(color);
-
- return createHslFunction(hsl[0], hsl[1], hsl[2], color.getLineNumber(),
- color.getColumnNumber());
- }
-
private static int[] hslToRgb(LexicalUnitImpl hsl) {
ActualArgumentList hslParam = hsl.getParameterList();
if (hslParam.size() != 3 && hslParam.size() != 4) {
@@ -588,14 +576,6 @@ public static LexicalUnitImpl lighten(LexicalUnitImpl color, float amount) {
return adjust(color, amount, ColorOperation.Lighten);
}
- private static float getAmountValue(ActualArgumentList params) {
- float amount = 10f;
- if (params.size() > 1) {
- amount = params.get(1).getContainedValue().getFloatValue();
- }
- return amount;
- }
-
private enum ColorOperation {
Darken, Lighten
}
diff --git a/src/main/java/com/vaadin/sass/internal/util/StringUtil.java b/src/main/java/com/vaadin/sass/internal/util/StringUtil.java
index dc000425..7139f11e 100644
--- a/src/main/java/com/vaadin/sass/internal/util/StringUtil.java
+++ b/src/main/java/com/vaadin/sass/internal/util/StringUtil.java
@@ -42,7 +42,7 @@ public static String cleanPath(String path) {
FOLDER_SEPARATOR);
String[] pathArray = delimitedListToStringArray(pathToUse,
FOLDER_SEPARATOR);
- List pathElements = new LinkedList();
+ List pathElements = new LinkedList();
int tops = 0;
for (int i = pathArray.length - 1; i >= 0; i--) {
if (CURRENT_PATH.equals(pathArray[i])) {
@@ -99,7 +99,7 @@ public static String[] delimitedListToStringArray(String str,
return new String[] { str };
}
- List result = new ArrayList();
+ List result = new ArrayList();
int pos = 0;
int delPos = 0;
while ((delPos = str.indexOf(delimiter, pos)) != -1) {
@@ -111,17 +111,17 @@ public static String[] delimitedListToStringArray(String str,
result.add(str.substring(pos));
}
- return (String[]) result.toArray(new String[result.size()]);
+ return result.toArray(new String[result.size()]);
}
- public static String collectionToDelimitedString(Collection coll,
+ public static String collectionToDelimitedString(Collection coll,
String delim, String prefix, String suffix) {
if (coll == null) {
return "";
}
StringBuffer sb = new StringBuffer();
- Iterator it = coll.iterator();
+ Iterator it = coll.iterator();
int i = 0;
while (it.hasNext()) {
if (i > 0) {
@@ -133,7 +133,7 @@ public static String collectionToDelimitedString(Collection coll,
return sb.toString();
}
- public static String collectionToDelimitedString(Collection coll,
+ public static String collectionToDelimitedString(Collection coll,
String delim) {
return collectionToDelimitedString(coll, delim, "", "");
}
diff --git a/src/main/java/com/vaadin/sass/internal/visitor/ImportNodeHandler.java b/src/main/java/com/vaadin/sass/internal/visitor/ImportNodeHandler.java
index 1edc2df2..604522f8 100644
--- a/src/main/java/com/vaadin/sass/internal/visitor/ImportNodeHandler.java
+++ b/src/main/java/com/vaadin/sass/internal/visitor/ImportNodeHandler.java
@@ -16,22 +16,15 @@
package com.vaadin.sass.internal.visitor;
-import java.io.FileNotFoundException;
-import java.io.IOException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-import org.w3c.css.sac.CSSException;
import com.vaadin.sass.internal.ScssContext;
import com.vaadin.sass.internal.ScssStylesheet;
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.tree.ImportNode;
import com.vaadin.sass.internal.tree.Node;
import com.vaadin.sass.internal.tree.NodeWithUrlContent;
diff --git a/src/main/java/com/vaadin/sass/internal/visitor/MixinNodeHandler.java b/src/main/java/com/vaadin/sass/internal/visitor/MixinNodeHandler.java
index 21e32439..83bed869 100644
--- a/src/main/java/com/vaadin/sass/internal/visitor/MixinNodeHandler.java
+++ b/src/main/java/com/vaadin/sass/internal/visitor/MixinNodeHandler.java
@@ -22,7 +22,6 @@
import com.vaadin.sass.internal.Scope;
import com.vaadin.sass.internal.ScssContext;
import com.vaadin.sass.internal.handler.SCSSErrorHandler;
-import com.vaadin.sass.internal.parser.ParseException;
import com.vaadin.sass.internal.parser.Variable;
import com.vaadin.sass.internal.tree.MixinDefNode;
import com.vaadin.sass.internal.tree.MixinNode;
diff --git a/src/test/java/com/vaadin/sass/AbstractTestBase.java b/src/test/java/com/vaadin/sass/AbstractTestBase.java
index 71abc4d8..47f47afa 100644
--- a/src/test/java/com/vaadin/sass/AbstractTestBase.java
+++ b/src/test/java/com/vaadin/sass/AbstractTestBase.java
@@ -17,62 +17,42 @@
package com.vaadin.sass;
import java.io.File;
-import java.io.FileReader;
import java.io.IOException;
+import java.io.InputStream;
import java.net.URISyntaxException;
-
-import junit.framework.Assert;
+import java.text.MessageFormat;
import org.apache.commons.io.IOUtils;
import org.w3c.css.sac.CSSException;
import com.vaadin.sass.internal.ScssStylesheet;
+import org.junit.Assert;
+
public abstract class AbstractTestBase {
public static final String CR = "\r";
- protected ScssStylesheet stylesheet;
protected String originalScss;
protected String parsedScss;
protected String comparisonCss;
- public ScssStylesheet getStyleSheet(String filename)
+ protected final ScssStylesheet getStyleSheet(String filename)
throws URISyntaxException, CSSException, IOException {
- File file = getFile(filename);
- stylesheet = ScssStylesheet.get(file.getAbsolutePath());
- return stylesheet;
- }
-
- public File getFile(String filename) throws URISyntaxException,
- CSSException, IOException {
- return new File(getClass().getResource(filename).toURI());
+ final File file = new File(getClass().getResource(filename).toURI());
+ return ScssStylesheet.get(file.getAbsolutePath());
}
- public String getFileContent(String filename) throws IOException,
+ protected final String getFileContent(String filename) throws IOException,
CSSException, URISyntaxException {
- File file = getFile(filename);
- return getFileContent(file);
- }
-
- /**
- * Read in the full content of a file into a string.
- *
- * @param file
- * the file to be read
- * @return a String with the content of the
- * @throws IOException
- * when file reading fails
- */
- public String getFileContent(File file) throws IOException {
- return IOUtils.toString(new FileReader(file));
+ return IOUtils.toString(getClass().getResourceAsStream(filename), "UTF-8");
}
- public ScssStylesheet testParser(String file) throws CSSException,
+ protected final ScssStylesheet testParser(String fileName) throws CSSException,
IOException, URISyntaxException {
- originalScss = getFileContent(file);
+ originalScss = getFileContent(fileName);
originalScss = originalScss.replaceAll(CR, "");
- ScssStylesheet sheet = getStyleSheet(file);
+ ScssStylesheet sheet = getStyleSheet(fileName);
parsedScss = sheet.printState();
parsedScss = parsedScss.replace(CR, "");
Assert.assertEquals("Original CSS and parsed CSS do not match",
@@ -80,9 +60,9 @@ public ScssStylesheet testParser(String file) throws CSSException,
return sheet;
}
- public ScssStylesheet testCompiler(String scss, String css)
+ protected final ScssStylesheet testCompiler(String scss, String cssFileName)
throws Exception {
- comparisonCss = getFileContent(css);
+ comparisonCss = getFileContent(cssFileName);
comparisonCss = comparisonCss.replaceAll(CR, "");
ScssStylesheet sheet = getStyleSheet(scss);
sheet.compile();
diff --git a/src/test/java/com/vaadin/sass/testcases/scss/AbstractDirectoryScanningSassTests.java b/src/test/java/com/vaadin/sass/testcases/scss/AbstractDirectoryScanningSassTests.java
index b86d7b4a..0d21907b 100644
--- a/src/test/java/com/vaadin/sass/testcases/scss/AbstractDirectoryScanningSassTests.java
+++ b/src/test/java/com/vaadin/sass/testcases/scss/AbstractDirectoryScanningSassTests.java
@@ -120,7 +120,7 @@ public void traverseError(String message) {
if (getCssFile(scssFile) != null) {
String referenceCss = IOUtils.toString(new FileInputStream(
- getCssFile(scssFile)));
+ getCssFile(scssFile)), "UTF-8");
String normalizedReference = normalize(referenceCss);
String normalizedParsed = normalize(parsedCss);
diff --git a/src/test/java/com/vaadin/sass/testcases/scss/Comments.java b/src/test/java/com/vaadin/sass/testcases/scss/Comments.java
index c4e5d2ab..8603039b 100644
--- a/src/test/java/com/vaadin/sass/testcases/scss/Comments.java
+++ b/src/test/java/com/vaadin/sass/testcases/scss/Comments.java
@@ -19,7 +19,7 @@
import java.io.IOException;
import java.net.URISyntaxException;
-import junit.framework.Assert;
+import org.junit.Assert;
import org.junit.Test;
import org.w3c.css.sac.CSSException;
diff --git a/src/test/java/com/vaadin/sass/testcases/scss/CompassImports.java b/src/test/java/com/vaadin/sass/testcases/scss/CompassImports.java
index 7b9b4eb0..03b24fce 100644
--- a/src/test/java/com/vaadin/sass/testcases/scss/CompassImports.java
+++ b/src/test/java/com/vaadin/sass/testcases/scss/CompassImports.java
@@ -19,7 +19,7 @@
import java.io.File;
import java.io.IOException;
-import junit.framework.Assert;
+import org.junit.Assert;
import org.junit.Test;
import org.w3c.css.sac.CSSException;
diff --git a/src/test/java/com/vaadin/sass/testcases/scss/ControlDirectives.java b/src/test/java/com/vaadin/sass/testcases/scss/ControlDirectives.java
index 13095b7b..98506f92 100644
--- a/src/test/java/com/vaadin/sass/testcases/scss/ControlDirectives.java
+++ b/src/test/java/com/vaadin/sass/testcases/scss/ControlDirectives.java
@@ -19,7 +19,7 @@
import java.io.IOException;
import java.util.List;
-import junit.framework.Assert;
+import org.junit.Assert;
import org.junit.Test;
import org.w3c.css.sac.CSSException;
diff --git a/src/test/java/com/vaadin/sass/testcases/scss/Imports.java b/src/test/java/com/vaadin/sass/testcases/scss/Imports.java
index e28630c4..fcba911f 100644
--- a/src/test/java/com/vaadin/sass/testcases/scss/Imports.java
+++ b/src/test/java/com/vaadin/sass/testcases/scss/Imports.java
@@ -18,7 +18,7 @@
import java.io.IOException;
-import junit.framework.Assert;
+import org.junit.Assert;
import org.junit.Test;
import org.w3c.css.sac.CSSException;
diff --git a/src/test/java/com/vaadin/sass/testcases/scss/NestedProperties.java b/src/test/java/com/vaadin/sass/testcases/scss/NestedProperties.java
index 400d842f..ad485fb3 100644
--- a/src/test/java/com/vaadin/sass/testcases/scss/NestedProperties.java
+++ b/src/test/java/com/vaadin/sass/testcases/scss/NestedProperties.java
@@ -18,7 +18,7 @@
import java.io.IOException;
-import junit.framework.Assert;
+import org.junit.Assert;
import org.junit.Test;
import org.w3c.css.sac.CSSException;
diff --git a/src/test/java/com/vaadin/sass/testcases/scss/Nesting.java b/src/test/java/com/vaadin/sass/testcases/scss/Nesting.java
index e43b5927..4ee4d446 100644
--- a/src/test/java/com/vaadin/sass/testcases/scss/Nesting.java
+++ b/src/test/java/com/vaadin/sass/testcases/scss/Nesting.java
@@ -18,7 +18,7 @@
import java.io.IOException;
-import junit.framework.Assert;
+import org.junit.Assert;
import org.junit.Test;
import org.w3c.css.sac.CSSException;
diff --git a/src/test/java/com/vaadin/sass/testcases/scss/ParentImports.java b/src/test/java/com/vaadin/sass/testcases/scss/ParentImports.java
index 26513ce8..1990433b 100644
--- a/src/test/java/com/vaadin/sass/testcases/scss/ParentImports.java
+++ b/src/test/java/com/vaadin/sass/testcases/scss/ParentImports.java
@@ -19,7 +19,7 @@
import java.io.IOException;
import java.util.List;
-import junit.framework.Assert;
+import org.junit.Assert;
import org.junit.Test;
import org.w3c.css.sac.CSSException;
diff --git a/src/test/java/com/vaadin/sass/testcases/scss/VariableGuarded.java b/src/test/java/com/vaadin/sass/testcases/scss/VariableGuarded.java
index a0727736..be9c6521 100644
--- a/src/test/java/com/vaadin/sass/testcases/scss/VariableGuarded.java
+++ b/src/test/java/com/vaadin/sass/testcases/scss/VariableGuarded.java
@@ -2,7 +2,7 @@
import java.io.IOException;
-import junit.framework.Assert;
+import org.junit.Assert;
import org.junit.Test;
import org.w3c.css.sac.CSSException;
diff --git a/src/test/java/com/vaadin/sass/testcases/scss/Variables.java b/src/test/java/com/vaadin/sass/testcases/scss/Variables.java
index 905d21fa..8f6cb483 100644
--- a/src/test/java/com/vaadin/sass/testcases/scss/Variables.java
+++ b/src/test/java/com/vaadin/sass/testcases/scss/Variables.java
@@ -19,7 +19,7 @@
import java.io.IOException;
import com.vaadin.sass.internal.parser.LexicalUnitImpl;
-import junit.framework.Assert;
+import org.junit.Assert;
import org.junit.Test;
import org.w3c.css.sac.CSSException;
@@ -57,7 +57,7 @@ public void testParser() throws CSSException, IOException {
VariableNode varNode2 = (VariableNode) root.getChildren().get(1);
Assert.assertEquals("margin", varNode2.getName());
Assert.assertEquals(8f, varNode2.getExpr().getContainedValue()
- .getFloatValue());
+ .getFloatValue(), 0.0);
Assert.assertEquals("px", varNode2.getExpr().getContainedValue()
.getDimensionUnitText());