Author: rwhitcomb Date: Sun Feb 25 08:15:16 2018 New Revision: 1825291 URL: http://svn.apache.org/viewvc?rev=1825291&view=rev Log: PIVOT-1031: Finish off the Gauge listener tests, and in the process fix the warning/critical level listener that wasn't being called.
Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/Gauge.java pivot/trunk/wtk/test/org/apache/pivot/wtk/test/GaugeTest.java Modified: pivot/trunk/wtk/src/org/apache/pivot/wtk/Gauge.java URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/src/org/apache/pivot/wtk/Gauge.java?rev=1825291&r1=1825290&r2=1825291&view=diff ============================================================================== --- pivot/trunk/wtk/src/org/apache/pivot/wtk/Gauge.java (original) +++ pivot/trunk/wtk/src/org/apache/pivot/wtk/Gauge.java Sun Feb 25 08:15:16 2018 @@ -251,7 +251,12 @@ public class Gauge<T extends Number> ext setOrCheckClass(warningLevel); } - this.warningLevel = warningLevel; + T previousWarningLevel = this.warningLevel; + + if (previousWarningLevel != warningLevel) { + this.warningLevel = warningLevel; + gaugeListeners.warningCriticalLevelChanged(this, previousWarningLevel, this.criticalLevel); + } } /** @@ -285,7 +290,12 @@ public class Gauge<T extends Number> ext setOrCheckClass(criticalLevel); } - this.criticalLevel = criticalLevel; + T previousCriticalLevel = this.criticalLevel; + + if (previousCriticalLevel != criticalLevel) { + this.criticalLevel = criticalLevel; + gaugeListeners.warningCriticalLevelChanged(this, this.warningLevel, previousCriticalLevel); + } } /** @@ -312,7 +322,7 @@ public class Gauge<T extends Number> ext if ((previousText == null && text != null) || (previousText != null && text == null) || - (!previousText.equals(text))) { + (previousText != null && !previousText.equals(text))) { this.text = text; gaugeListeners.textChanged(this, previousText); } Modified: pivot/trunk/wtk/test/org/apache/pivot/wtk/test/GaugeTest.java URL: http://svn.apache.org/viewvc/pivot/trunk/wtk/test/org/apache/pivot/wtk/test/GaugeTest.java?rev=1825291&r1=1825290&r2=1825291&view=diff ============================================================================== --- pivot/trunk/wtk/test/org/apache/pivot/wtk/test/GaugeTest.java (original) +++ pivot/trunk/wtk/test/org/apache/pivot/wtk/test/GaugeTest.java Sun Feb 25 08:15:16 2018 @@ -32,6 +32,7 @@ public class GaugeTest implements GaugeL private int valueChangeCount = 0; private int textChangeCount = 0; private int minMaxChangeCount = 0; + private int warningCriticalChangeCount = 0; @Override public void originChanged(Gauge<Integer> gauge, Origin previousOrigin) { @@ -57,6 +58,12 @@ public class GaugeTest implements GaugeL minMaxChangeCount++; } + @Override + public void warningCriticalLevelChanged(Gauge<Integer> gauge, Integer previousWarningLevel, Integer previousCriticalLevel) { + System.out.println("Warning or Critical level changed: warning=" + gauge.getWarningLevel() + ", critical=" + gauge.getCriticalLevel()); + warningCriticalChangeCount++; + } + @Test public void testListeners() { Gauge<Integer> gauge = new Gauge<>(); @@ -75,6 +82,22 @@ public class GaugeTest implements GaugeL gauge.setMinValue(0); gauge.setMaxValue(100); + gauge.setWarningLevel(10); + gauge.setWarningLevel(80); + gauge.setWarningLevel(80); + gauge.setCriticalLevel(10); + gauge.setCriticalLevel(10); + gauge.setCriticalLevel(90); + + gauge.setText(null); + gauge.setText(""); + gauge.setText(""); + gauge.setText("20%"); + gauge.setText("20%"); + gauge.setText("100%"); + gauge.setText(null); + gauge.setText("100%"); + gauge.setValue(0); gauge.setValue(2); gauge.setValue(10); @@ -83,6 +106,8 @@ public class GaugeTest implements GaugeL // Now check for proper listener event counts assertEquals(originChangeCount, 4); assertEquals(minMaxChangeCount, 2); + assertEquals(warningCriticalChangeCount, 4); + assertEquals(textChangeCount, 5); assertEquals(valueChangeCount, 4); } }