/**
* Copyright (C) 2005 - 2015 Eric Van Dewoestine
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package org.eclim.plugin.jdt.command.doc;
import java.util.regex.Pattern;
import org.eclim.Eclim;
import org.eclim.EclimTestCase;
import org.eclim.plugin.jdt.Jdt;
import org.junit.Test;
import static org.junit.Assert.*;
/**
* Test case for CommentCommand.
*
* @author Eric Van Dewoestine
*/
public class CommentCommandTest
extends EclimTestCase
{
private static final String TEST_FILE =
"src/org/eclim/test/doc/TestComment.java";
private static final Pattern COMMENT_1 = Pattern.compile(
"\\s+/\\*\\*\n" +
"\\s+ \\* \\{@inheritDoc\\}\n" +
"\\s+ \\*\n" +
"\\s+ \\* @see Object#equals\\(Object\\)\n" +
"\\s+ \\*/");
private static final Pattern COMMENT_2 = Pattern.compile(
"\\s+/\\*\\*\n" +
"\\s+ \\*\n" +
"\\s+ \\*\n" +
"\\s+ \\* @param _id\n" +
"\\s+ \\* @param _name\n" +
"\\s+ \\* @return\n" +
"\\s+ \\*\n" +
"\\s+ \\* @throws IOException\n" +
"\\s+ \\*/");
@Test
public void method1()
{
modifies(Jdt.TEST_PROJECT, TEST_FILE);
assertTrue("Java project doesn't exist.",
Eclim.projectExists(Jdt.TEST_PROJECT));
Eclim.execute(new String[]{
"javadoc_comment", "-p", Jdt.TEST_PROJECT,
"-f", TEST_FILE, "-o", "58", "-e", "utf-8"
});
String contents = Eclim.fileToString(Jdt.TEST_PROJECT, TEST_FILE);
System.out.println("'" + COMMENT_2 + "'");
System.out.println("'" + contents.substring(56, 158) + "'");
assertTrue("Incorrect comment generated.", COMMENT_2.matcher(contents).find());
}
@Test
public void method2()
{
modifies(Jdt.TEST_PROJECT, TEST_FILE);
assertTrue("Java project doesn't exist.",
Eclim.projectExists(Jdt.TEST_PROJECT));
Eclim.execute(new String[]{
"javadoc_comment", "-p", Jdt.TEST_PROJECT,
"-f", TEST_FILE, "-o", "158", "-e", "utf-8"
});
String contents = Eclim.fileToString(Jdt.TEST_PROJECT, TEST_FILE);
assertTrue("Incorrect comment generated.", COMMENT_1.matcher(contents).find());
}
}