@@ -0,0 +1,2937 @@
+/*%0A * See the NOTICE file distributed with this work for additional%0A * information regarding copyright ownership.%0A *%0A * This is free software; you can redistribute it and/or modify it%0A * under the terms of the GNU Lesser General Public License as%0A * published by the Free Software Foundation; either version 2.1 of%0A * the License, or (at your option) any later version.%0A *%0A * This software is distributed in the hope that it will be useful,%0A * but WITHOUT ANY WARRANTY; without even the implied warranty of%0A * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU%0A * Lesser General Public License for more details.%0A *%0A * You should have received a copy of the GNU Lesser General Public%0A * License along with this software; if not, write to the Free%0A * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA%0A * 02110-1301 USA, or see the FSF site: http://www.fsf.org.%0A */%0Apackage org.xwiki.lesscss.internal.lessjs;%0A%0Aimport java.io.FileInputStream;%0Aimport java.io.StringWriter;%0Aimport java.nio.file.Path;%0Aimport java.nio.file.Paths;%0A%0Aimport org.apache.commons.io.IOUtils;%0Aimport org.junit.Rule;%0Aimport org.junit.Test;%0Aimport org.xwiki.test.mockito.MockitoComponentMockingRule;%0A%0Aimport static org.junit.Assert.assertEquals;%0A%0A/**%0A * Test class for %7B@link org.xwiki.lesscss.internal.lessjs.JavaScriptLESSCompiler%7D.%0A *%0A * @since 6.1M1%0A * @version $Id$%0A */%0Apublic class JavaScriptLESSCompilerTest%0A%7B%0A    @Rule%0A    public MockitoComponentMockingRule%3CJavaScriptLESSCompiler%3E mocker =%0A            new MockitoComponentMockingRule%3C%3E(JavaScriptLESSCompiler.class);%0A%0A    @Test%0A    public void compile() throws Exception%0A    %7B%0A        // Get an example%0A        StringWriter source = new StringWriter();%0A        IOUtils.copy(new FileInputStream(getClass().getResource(%22/style.less%22).getFile()), source);%0A%0A        // Compile%0A        String result = mocker.getComponentUnderTest().compile(source.toString());%0A%0A        // Get the expected result%0A        StringWriter expectedResult = new StringWriter();%0A        IOUtils.copy(new FileInputStream(getClass().getResource(%22/style.css%22).getFile()), expectedResult);%0A%0A        // Compare%0A        assertEquals(expectedResult.toString(), result);%0A    %7D%0A%0A    @Test%0A    public void compileWithImports() throws Exception%0A    %7B%0A        // Get an example%0A        StringWriter source = new StringWriter();%0A        IOUtils.copy(new FileInputStream(getClass().getResource(%22/styleWithImports.less%22).getFile()), source);%0A%0A        // Compile%0A        Path%5B%5D paths = %7BPaths.get(getClass().getResource(%22/%22).getPath())%7D;%0A        String result = mocker.getComponentUnderTest().compile(source.toString(), paths);%0A%0A        // Get the expected result%0A        StringWriter expectedResult = new StringWriter();%0A        IOUtils.copy(new FileInputStream(getClass().getResource(%22/styleWithImports.css%22).getFile()), expectedResult);%0A%0A        // Compare%0A        assertEquals(expectedResult.toString(), result);%0A    %7D%0A%7D%0A

Use LESS4J for the implementation of LESSCompiler.