Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
package nl.tudelft.cse1110.andy.codechecker.checks;

import org.eclipse.jdt.core.dom.ConditionalExpression;

public class ConditionalExpressionUsed extends Check {
private boolean conditionalExpressionFound = false;

@Override
public boolean visit(ConditionalExpression node) {
conditionalExpressionFound = true;
return super.visit(node);
}

@Override
public boolean result() {
return conditionalExpressionFound;
}

public String toString() {
return "Conditional/ternary expression is used";
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package unit.codechecker.checks;

import nl.tudelft.cse1110.andy.codechecker.checks.Check;
import nl.tudelft.cse1110.andy.codechecker.checks.ConditionalExpressionUsed;
import org.junit.jupiter.api.Test;

import static org.assertj.core.api.Assertions.assertThat;

public class ConditionalExpressionUsedTest extends ChecksBaseTest {
@Test
void conditionalExpressionUsed() {
Check check = new ConditionalExpressionUsed();
run("ConditionalExpressionUsed.java", check);
assertThat(check.result()).isTrue();
}

@Test
void conditionalExpressionNotUsed() {
Check check = new ConditionalExpressionUsed();
run("NoTests.java", check);
assertThat(check.result()).isFalse();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
package delft;

import java.util.*;
import java.util.stream.*;

import org.junit.jupiter.api.*;
import org.junit.jupiter.params.*;
import org.junit.jupiter.params.provider.*;

import net.jqwik.api.*;
import net.jqwik.api.Tuple.*;
import net.jqwik.api.arbitraries.*;
import net.jqwik.api.constraints.*;

import static org.assertj.core.api.Assertions.*;
import static org.junit.jupiter.api.Assertions.*;

class ConditionalExpressionUsed {
private final List<Integer> primesUnder30 = List.of(2, 3, 5, 7, 11, 13, 17, 19, 23, 29);

public boolean primeFactorsCorrect(List<Integer> factors, int k) {
boolean foundWrongOne = false;
int total = 1;
for (int v : factors) {
foundWrongOne = (!primesUnder30.contains(v)) ? true : foundWrongOne;
total *= v;
}
return (!foundWrongOne && total == k);
}
}
Loading