Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package sk.upjs.ics.agilnaRuka;
- import static org.junit.jupiter.api.Assertions.*;
- import java.util.ArrayList;
- import java.util.List;
- import org.junit.jupiter.api.BeforeAll;
- import org.junit.jupiter.api.Test;
- class LineCounterTest {
- static List<String> trimmedFileLines;
- static List<String> fileLines;
- static LineCounter lc = new LineCounter();
- @BeforeAll
- static void setUpBeforeClass() throws Exception {
- fileLines = lc.readFile("App.java");
- trimmedFileLines = lc.trimEachLine(fileLines);
- }
- @Test
- void readFileTest1() {
- List<String> lines = new ArrayList<>();
- lines.add("// normalny riadok kodu");
- lines.add("package sk.upjs.javaLineCounter;");
- lines.add("//10 medzier");
- lines.add("");
- lines.add("//3 tabulatory");
- lines.add("");
- lines.add("//3 krat medzera a tab");
- lines.add("");
- lines.add("// podomnou je celoriadkovy komentar ");
- lines.add("//ja som komentar");
- lines.add("//podomnou je multiline komentar ");
- lines.add("/*");
- lines.add(" sdffs");
- lines.add(" */");
- lines.add("");
- lines.add("public class App { //komentar");
- lines.add(" public static void main(String[] args) {");
- lines.add(" // komentar v strede prikazu");
- lines.add(" System./* kusok komentu */out.println(\"normalny string\");");
- lines.add(" ");
- lines.add(" // snaha o komentar v stringu");
- lines.add(" System.out.println(\"/*nie som komentar, ale string*/\");");
- lines.add(" ");
- lines.add(" // snaha o komentar v stringu");
- lines.add(" System.out.println(\"// \"");
- lines.add(" + ");
- lines.add(" \"/*nie som komentar, ale \"");
- lines.add(" + \"string*/\");");
- lines.add(" String string = \" \\\" \";");
- lines.add(" }");
- lines.add(" /* ");
- lines.add(" ");
- lines.add(" */");
- lines.add("}");
- assertEquals(lines, lc.readFile("App.java"));
- }
- @Test
- void trimEachLineTest1() {
- List<String> lines = new ArrayList<>();
- lines.add("string =2;");
- lines.add(" string =2; ");
- lines.add(" //komentar ");
- lines.add(" /*kom en*/tar ");
- lines.add(" ");
- List<String> linestrimmed = new ArrayList<>();
- linestrimmed.add("string =2;");
- linestrimmed.add("string =2;");
- linestrimmed.add("//komentar");
- linestrimmed.add("/*kom en*/tar");
- linestrimmed.add("");
- assertEquals(linestrimmed, lc.trimEachLine(lines));
- }
- @Test
- void removeWholeLineCommentsTest1() {
- List<String> lines = new ArrayList<>();
- lines.add("// string");
- lines.add(" // ");
- List<String> linestrimmed = new ArrayList<>();
- linestrimmed.add("");
- linestrimmed.add(" // ");
- assertEquals(linestrimmed, lc.removeWholeLineComments(lines));
- }
- @Test
- void isWholeLineCommentTest1() {
- assertEquals(true, lc.isWholeLineComment("//string/**//*/"));
- }
- @Test
- void isWholeLineCommentTest2() {
- assertEquals(false, lc.isWholeLineComment(" //string/**//*/"));
- }
- @Test
- void countLinesOfCodeTest1() {
- assertEquals(12, lc.countLinesOfCode("App.java"));
- }
- @Test
- void isPartOfCommentTest1() {
- boolean isComment = false;
- String line = "pred komentarom /* v komentari";
- int indexOfSlash = line.indexOf('/');
- assertTrue(lc.isPartOfComment(isComment, line, indexOfSlash));
- }
- @Test
- void isPartOfCommentTest2() {
- boolean isComment = true;
- String line = "pred komentarom /* v komentari";
- int indexOfSlash = line.indexOf('p');
- assertTrue(lc.isPartOfComment(isComment, line, indexOfSlash));
- }
- @Test
- void isPartOfCommentTest3() {
- boolean isComment = false;
- String line = "pred komentarom /* v komentari";
- int indexOfSlash = line.indexOf('p');
- assertFalse(lc.isPartOfComment(isComment, line, indexOfSlash));
- }
- @Test
- void isNextStillCommentTest1() {
- boolean isComment = false;
- String line = "pred komentarom /* v komentari";
- for (int i = 0; i < line.length(); i++) {
- if (i < 16) {
- assertFalse(lc.isPartOfComment(isComment, line, i));
- } else {
- assertTrue(lc.isPartOfComment(isComment, line, i));
- isComment = true;
- }
- }
- }
- @Test
- void removePartialLineCommentsTest1() {
- List<String> listWithComments = new ArrayList<>();
- listWithComments.add("ahoj");
- listWithComments.add(" /*blablabla");
- listWithComments.add("vnutri \" ahoj \" ");
- listWithComments.add("koniec */");
- List<String> trimmedLines = lc.trimEachLine(listWithComments);
- List<String> listWithoutComments = new ArrayList<>();
- listWithoutComments.add("ahoj");
- listWithoutComments.add("");
- listWithoutComments.add("");
- listWithoutComments.add("");
- assertEquals(listWithoutComments, lc.removePartialLineComments(trimmedLines));
- }
- @Test
- void isPartStringTest1() {
- boolean isInString = false;
- String string = "pred \"v stringu ";
- int startOfString = 5;
- for (int i = 0; i < string.length(); i++) {
- if (i < startOfString) {
- assertFalse(lc.isPartOfString(isInString, string, i));
- } else {
- assertTrue(lc.isPartOfString(isInString, string, i));
- isInString = true;
- }
- }
- }
- @Test
- void isPartStringTest2() {
- boolean isInString = false;
- String string = "pred \"v stringu \\\" stale v stringu ";
- int startOfString = 5;
- for (int i = 0; i < string.length(); i++) {
- if (i < startOfString) {
- assertFalse(lc.isPartOfString(isInString, string, i));
- } else {
- assertTrue(lc.isPartOfString(isInString, string, i));
- isInString = true;
- }
- }
- }
- @Test
- void isPartStringTest3() {
- boolean isInString = true;
- String string = "v stringu \\\" stale v stringu \" za stringom ";
- int EndOfString = 29;
- for (int i = 0; i < string.length(); i++) {
- System.out.println(string.charAt(i) + " " + i);
- if (i < EndOfString) {
- assertTrue(lc.isPartOfString(isInString, string, i));
- } else {
- assertFalse(lc.isPartOfString(isInString, string, i));
- isInString = false;
- }
- }
- }
- }
Add Comment
Please, Sign In to add comment