From 8571d9002a1d2a57c8bb35a04a2cf66b75efe16e Mon Sep 17 00:00:00 2001 From: Roman Ivanov Date: Sun, 12 Jul 2015 22:42:17 -0700 Subject: [PATCH] 100% UTs for FullIdent. #1294 --- pom.xml | 1 - .../tools/checkstyle/api/FullIdentTest.java | 64 +++++++++++++++++++ 2 files changed, 64 insertions(+), 1 deletion(-) create mode 100644 src/test/java/com/puppycrawl/tools/checkstyle/api/FullIdentTest.java diff --git a/pom.xml b/pom.xml index 919412a16..5c2aced35 100644 --- a/pom.xml +++ b/pom.xml @@ -1090,7 +1090,6 @@ .*.api.DetailAST9598 .*.api.FileContents9693 .*.api.FileText5059 - .*.api.FullIdent8396 .*.api.JavadocTagInfo2577 .*.api.JavadocTagInfo\$.*08 .*.api.LocalizedMessage\$.*4166 diff --git a/src/test/java/com/puppycrawl/tools/checkstyle/api/FullIdentTest.java b/src/test/java/com/puppycrawl/tools/checkstyle/api/FullIdentTest.java new file mode 100644 index 000000000..df0070721 --- /dev/null +++ b/src/test/java/com/puppycrawl/tools/checkstyle/api/FullIdentTest.java @@ -0,0 +1,64 @@ +//////////////////////////////////////////////////////////////////////////////// +// checkstyle: Checks Java source code for adherence to a set of rules. +// Copyright (C) 2001-2015 the original author or authors. +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// This library 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 +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +//////////////////////////////////////////////////////////////////////////////// + +package com.puppycrawl.tools.checkstyle.api; + +import org.junit.Assert; +import org.junit.Test; + +public class FullIdentTest { + + public void testToString() { + DetailAST ast = new DetailAST(); + ast.setType(TokenTypes.LITERAL_NEW); + ast.setColumnNo(14); + ast.setLineNo(15); + ast.setText("MyTest"); + + final FullIdent indent = FullIdent.createFullIdent(ast); + Assert.assertEquals("MyTest[15x14]", indent.toString()); + } + + @Test + public void testNonValidCoordinates() { + DetailAST ast = new DetailAST(); + ast.setType(TokenTypes.DOT); + ast.setColumnNo(1); + ast.setLineNo(2); + ast.setText("Root"); + + DetailAST ast2 = new DetailAST(); + ast2.setType(TokenTypes.LE); + ast2.setColumnNo(-14); + ast2.setLineNo(-15); + ast2.setText("MyTestik"); + + DetailAST ast1 = new DetailAST(); + ast1.setType(TokenTypes.LITERAL_NEW); + ast1.setColumnNo(14); + ast1.setLineNo(15); + ast1.setText("MyTest"); + + ast.addChild(ast1); + ast.addChild(ast2); + + final FullIdent indent = FullIdent.createFullIdent(ast); + Assert.assertEquals("MyTest.MyTestik[15x14]", indent.toString()); + } +}