<?xml version="1.0" encoding="UTF-8"?>
<test-data
    xmlns="http://pmd.sourceforge.net/rule-tests"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://pmd.sourceforge.net/rule-tests http://pmd.sourceforge.net/rule-tests_1_0_0.xsd">

    <test-code>
        <description>failure case, inequality</description>
        <expected-problems>1</expected-problems>
        <expected-linenumbers>3</expected-linenumbers>
        <code><![CDATA[
public class Foo {
   public int bar(int x) {
      if (!(x == 0))
         return x;
      return 0;
   }
}
        ]]></code>
    </test-code>

    <test-code>
        <description>failure case, comparison</description>
        <expected-problems>1</expected-problems>
        <expected-linenumbers>3</expected-linenumbers>
        <code><![CDATA[
public class Foo {
   public int bar(int x) {
      if (!(x <= 0))
         return x;
      return 0;
   }
}
        ]]></code>
    </test-code>

    <test-code>
        <description>correct inequality</description>
        <expected-problems>0</expected-problems>
        <code><![CDATA[
public class Foo {
   public int bar(int x) {
      if (x != 0)
         return x;
      return 0;
   }
}
        ]]></code>
    </test-code>

    <test-code>
        <description>correct comparison</description>
        <expected-problems>0</expected-problems>
        <code><![CDATA[
public class Foo {
   public int bar(int x) {
      if (x > 0)
         return x;
      return 0;
   }
}
        ]]></code>
    </test-code>

    <test-code>
        <description>negated negation</description>
        <expected-problems>1</expected-problems>
        <code><![CDATA[
public class Foo {
    public void bar(int a, int b) {
        if (!(a != b)) { } // violation
        if (a == b) { } // ok
    }
}
        ]]></code>
    </test-code>
</test-data>
