/**
* Copyright (c) 2005-2013 by Appcelerator, Inc. All Rights Reserved.
* Licensed under the terms of the Eclipse Public License (EPL).
* Please see the license.txt included with this distribution for details.
* Any modifications to this file must keep this entire header intact.
*/
/*
* Created on 16/07/2005
*/
package org.python.pydev.parser.visitors;
import org.python.pydev.core.docutils.SyntaxErrorException;
import org.python.pydev.core.docutils.ParsingUtils;
import org.python.pydev.shared_core.string.FastStringBuffer;
import junit.framework.TestCase;
public class ParsingUtilsTest extends TestCase {
public static void main(String[] args) {
junit.textui.TestRunner.run(ParsingUtilsTest.class);
}
@Override
protected void setUp() throws Exception {
super.setUp();
}
@Override
protected void tearDown() throws Exception {
super.tearDown();
}
public void testRemoveCommentsAndWhitespaces() {
String s = "a , b = 0,#ignore\n*args, **kwargs";
FastStringBuffer buf = new FastStringBuffer(s, 0);
ParsingUtils.removeCommentsAndWhitespaces(buf);
assertEquals("a,b=0,*args,**kwargs", buf.toString());
}
public void testRemoveCommentsWhitespacesAndLiterals() throws SyntaxErrorException {
String s = "a , b = 0,#ignore\n" +
"*args, **kwargs\n" +
"'''";
FastStringBuffer buf = new FastStringBuffer(s, 0);
ParsingUtils.removeCommentsWhitespacesAndLiterals(buf, false);
assertEquals("a,b=0,*args,**kwargs", buf.toString());
s = "a , b = 0,#ignore\n" +
"*args, **kwargs\n" +
"'''remove'\"";
buf = new FastStringBuffer(s, 0);
ParsingUtils.removeCommentsWhitespacesAndLiterals(buf, false);
assertEquals("a,b=0,*args,**kwargs", buf.toString());
s = "a , b = 0,#ignore\n" +
"*args, **kwargs\n" +
"'''remove'''keep";
buf = new FastStringBuffer(s, 0);
ParsingUtils.removeCommentsWhitespacesAndLiterals(buf, true);
assertEquals("a,b=0,*args,**kwargskeep", buf.toString());
}
}