// Path: src/main/java/org/grouchotools/jsrules/exception/InvalidParameterException.java
// public class InvalidParameterException extends JsRulesException {
// 
//     public InvalidParameterException() {
//     }
// 
//     public InvalidParameterException(String message) {
//         super(message);
//     }
// 
//     public InvalidParameterException(String message, Throwable cause) {
//         super(message, cause);
//     }
// 
//     public InvalidParameterException(Throwable cause) {
//         super(cause);
//     }
// 
//     public InvalidParameterException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) {
//         super(message, cause, enableSuppression, writableStackTrace);
//     }
//     
// }


import org.grouchotools.jsrules.exception.InvalidParameterException;
import org.junit.*;
import org.junit.rules.ExpectedException;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
    
    @AfterClass
    public static void tearDownClass() {
    }
    
    @Before
    public void setUp() {
    }
    
    @After
    public void tearDown() {
    }

    @Test
    public void greaterThanTest() throws Exception {
        Operator operator = Operator.GT;
        Long left = 10l;
        Long right = 5l;
        assertTrue(operator.compare(left, right));
        assertFalse(operator.compare(right, left));
        
        right = left;
        assertFalse(operator.compare(left, right));
        
        Integer rightInt = 5;
        assertTrue(operator.compare(left, rightInt));
    }
    
    @Test
    public void greaterThanExceptionTest() throws Exception {
// Path: src/main/java/org/grouchotools/jsrules/exception/InvalidParameterException.java
// public class InvalidParameterException extends JsRulesException {
// 
//     public InvalidParameterException() {
//     }
// 
//     public InvalidParameterException(String message) {
//         super(message);
//     }
// 
//     public InvalidParameterException(String message, Throwable cause) {
//         super(message, cause);
//     }
// 
//     public InvalidParameterException(Throwable cause) {
//         super(cause);
//     }
// 
//     public InvalidParameterException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) {
//         super(message, cause, enableSuppression, writableStackTrace);
//     }
//     
// }


// Path: src/test/java/org/grouchotools/jsrules/OperatorTest.java
import org.grouchotools.jsrules.exception.InvalidParameterException;
import org.junit.*;
import org.junit.rules.ExpectedException;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;

    
    @AfterClass
    public static void tearDownClass() {
    }
    
    @Before
    public void setUp() {
    }
    
    @After
    public void tearDown() {
    }

    @Test
    public void greaterThanTest() throws Exception {
        Operator operator = Operator.GT;
        Long left = 10l;
        Long right = 5l;
        assertTrue(operator.compare(left, right));
        assertFalse(operator.compare(right, left));
        
        right = left;
        assertFalse(operator.compare(left, right));
        
        Integer rightInt = 5;
        assertTrue(operator.compare(left, rightInt));
    }
    
    @Test
    public void greaterThanExceptionTest() throws Exception {
        exception.expect(InvalidParameterException.class);