From 14fa6828713f379c31a06fcfb89fd714fa0e1207 Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Sun, 22 Jan 2017 10:29:20 -0500 Subject: [PATCH 01/21] made debouncing class --- src/lib/DebouncingBoolean.java | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 src/lib/DebouncingBoolean.java diff --git a/src/lib/DebouncingBoolean.java b/src/lib/DebouncingBoolean.java new file mode 100644 index 0000000..90973fb --- /dev/null +++ b/src/lib/DebouncingBoolean.java @@ -0,0 +1,5 @@ +package lib; +import java.util.LinkedList; +public class DebouncingBoolean { + +} From 5820a4fbc982713f4bbb4a63717da70196bbd079 Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Sun, 22 Jan 2017 10:32:21 -0500 Subject: [PATCH 02/21] finished Deboucning Boolean --- src/lib/DebouncingBoolean.java | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/src/lib/DebouncingBoolean.java b/src/lib/DebouncingBoolean.java index 90973fb..31f2f63 100644 --- a/src/lib/DebouncingBoolean.java +++ b/src/lib/DebouncingBoolean.java @@ -1,5 +1,34 @@ package lib; import java.util.LinkedList; public class DebouncingBoolean { - + private static LinkedList queue; + private static int windowSize; + private boolean state; + + public DebouncingBoolean(int windowSize){ + this.windowSize = windowSize; + queue = new LinkedList(); + } + public void init(int start ){ + while(queue.size() < windowSize){ + if (start > 0){ + queue.add(true); + } + else{ + queue.add(false); + } + } + } + public void feed(int val){ + if (queue.size() == windowSize){ + if (val > 0){ + queue.removeFirst(); + queue.addLast(true); + } + else{ + queue.removeFirst(); + queue.addLast(false); + } + } + } } From 1830149d22304e29bea4d39b3019c44b02afee69 Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Sun, 22 Jan 2017 13:42:53 -0500 Subject: [PATCH 03/21] initlizer moved into the constructor --- src/lib/DebouncingBoolean.java | 9 ++++++--- test/com/nutrons/nu17/DebouncingTest.java | 0 2 files changed, 6 insertions(+), 3 deletions(-) create mode 100644 test/com/nutrons/nu17/DebouncingTest.java diff --git a/src/lib/DebouncingBoolean.java b/src/lib/DebouncingBoolean.java index 31f2f63..f18a2f6 100644 --- a/src/lib/DebouncingBoolean.java +++ b/src/lib/DebouncingBoolean.java @@ -5,11 +5,9 @@ public class DebouncingBoolean { private static int windowSize; private boolean state; - public DebouncingBoolean(int windowSize){ + public DebouncingBoolean(int windowSize, int start){ this.windowSize = windowSize; queue = new LinkedList(); - } - public void init(int start ){ while(queue.size() < windowSize){ if (start > 0){ queue.add(true); @@ -19,6 +17,7 @@ public void init(int start ){ } } } + public void feed(int val){ if (queue.size() == windowSize){ if (val > 0){ @@ -31,4 +30,8 @@ public void feed(int val){ } } } + + public void getQueue(){ + queue.listIterator(); + } } diff --git a/test/com/nutrons/nu17/DebouncingTest.java b/test/com/nutrons/nu17/DebouncingTest.java new file mode 100644 index 0000000..e69de29 From fb6ddd7204cbffa20c28139532b19b1139146118 Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Mon, 23 Jan 2017 19:29:42 -0500 Subject: [PATCH 04/21] fixed DebouncingBoolean and created testcases --- src/lib/DebouncedBoolean.java | 6 ++ src/lib/DebouncingBoolean.java | 51 ++++++++------ test/com/nutrons/nu17/BooleanTest.java | 83 +++++++++++++++++++++++ test/com/nutrons/nu17/DebouncingTest.java | 0 4 files changed, 121 insertions(+), 19 deletions(-) create mode 100644 src/lib/DebouncedBoolean.java create mode 100644 test/com/nutrons/nu17/BooleanTest.java delete mode 100644 test/com/nutrons/nu17/DebouncingTest.java diff --git a/src/lib/DebouncedBoolean.java b/src/lib/DebouncedBoolean.java new file mode 100644 index 0000000..44ff235 --- /dev/null +++ b/src/lib/DebouncedBoolean.java @@ -0,0 +1,6 @@ +package lib; + +public interface DebouncedBoolean { + void add(boolean b); + boolean get(); +} \ No newline at end of file diff --git a/src/lib/DebouncingBoolean.java b/src/lib/DebouncingBoolean.java index f18a2f6..e66e81c 100644 --- a/src/lib/DebouncingBoolean.java +++ b/src/lib/DebouncingBoolean.java @@ -1,37 +1,50 @@ package lib; import java.util.LinkedList; -public class DebouncingBoolean { +public class DebouncingBoolean implements DebouncedBoolean{ private static LinkedList queue; private static int windowSize; - private boolean state; + private boolean count; - public DebouncingBoolean(int windowSize, int start){ + /** + * + * @param windowSize sets size for the queue + * @param x boolean passed to initialize the queue + */ + public DebouncingBoolean(int windowSize, boolean x){ this.windowSize = windowSize; queue = new LinkedList(); while(queue.size() < windowSize){ - if (start > 0){ - queue.add(true); + if (x){ + queue.add(x); + count = true; } else{ - queue.add(false); + queue.add(x); + count = false; } } } - public void feed(int val){ - if (queue.size() == windowSize){ - if (val > 0){ - queue.removeFirst(); - queue.addLast(true); - } - else{ - queue.removeFirst(); - queue.addLast(false); - } + /** + * @param b boolean passed to be added into the queue + */ + public void add(boolean b){ + if (b){ + queue.removeFirst(); + queue.addLast(b); + count = true; + } + else{ + queue.removeFirst(); + queue.addLast(b); + count = false; } } - - public void getQueue(){ - queue.listIterator(); + /** + * @return count boolean that determines if the queue is true or false + */ + public boolean get(){ + return count; + } } diff --git a/test/com/nutrons/nu17/BooleanTest.java b/test/com/nutrons/nu17/BooleanTest.java new file mode 100644 index 0000000..a9cba5c --- /dev/null +++ b/test/com/nutrons/nu17/BooleanTest.java @@ -0,0 +1,83 @@ +package com.nutrons.nu17; +import static org.junit.Assert.*; +import com.nutrons.nu17.*; + +import org.junit.Test; + +import lib.DebouncedBoolean; +import lib.DebouncingBoolean; + +public class BooleanTest { + + @Test + public void falseTest() { + DebouncedBoolean x = new DebouncingBoolean(3,false); + assertEquals(false, x.get()); + } + + + @Test + public void trueTest(){ + DebouncedBoolean x = new DebouncingBoolean(3, true); + assertEquals(true, x.get()); + } + + @Test + public void passing(){ + DebouncedBoolean x = new DebouncingBoolean(3,false); + x.add(true); + assertEquals(true,x.get()); + System.out.println(" "); + x.add(true); + assertEquals(true, x.get()); + System.out.println(" "); + x.add(true); + assertEquals(true, x.get()); + System.out.println(" "); + } + + @Test + public void passingFalse(){ + DebouncedBoolean x = new DebouncingBoolean(3, true); + x.add(false); + assertEquals(false, x.get()); + x.add(false); + assertEquals(false, x.get()); + x.add(false); + assertEquals(false,x.get()); + } + + @Test + public void changingTrue(){ + DebouncedBoolean x = new DebouncingBoolean(3,false); + x.add(false); + assertEquals(false, x.get()); + x.add(false); + assertEquals(false, x.get()); + x.add(false); + assertEquals(false, x.get()); + x.add(true); + assertEquals(true, x.get()); + x.add(true); + assertEquals(true, x.get()); + x.add(true); + assertEquals(true, x.get()); + } + + @Test + public void changingFalse(){ + DebouncedBoolean x = new DebouncingBoolean(3,true); + x.add(false); + assertEquals(false, x.get()); + x.add(false); + assertEquals(false, x.get()); + x.add(false); + assertEquals(false, x.get()); + x.add(true); + assertEquals(true, x.get()); + x.add(true); + assertEquals(true, x.get()); + x.add(true); + assertEquals(true, x.get()); + } +} diff --git a/test/com/nutrons/nu17/DebouncingTest.java b/test/com/nutrons/nu17/DebouncingTest.java deleted file mode 100644 index e69de29..0000000 From 0e52cc97a51ad7435d0385b9a89ea1d7997284f7 Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Mon, 23 Jan 2017 20:14:32 -0500 Subject: [PATCH 05/21] changed class name --- src/lib/DebouncedBoolean.java | 53 +++++++++++++++++++++++--- src/lib/DebouncedBooleanInterface.java | 6 +++ src/lib/DebouncingBoolean.java | 50 ------------------------ 3 files changed, 54 insertions(+), 55 deletions(-) create mode 100644 src/lib/DebouncedBooleanInterface.java delete mode 100644 src/lib/DebouncingBoolean.java diff --git a/src/lib/DebouncedBoolean.java b/src/lib/DebouncedBoolean.java index 44ff235..e2dff74 100644 --- a/src/lib/DebouncedBoolean.java +++ b/src/lib/DebouncedBoolean.java @@ -1,6 +1,49 @@ package lib; - -public interface DebouncedBoolean { - void add(boolean b); - boolean get(); -} \ No newline at end of file +import java.util.LinkedList; +public class DebouncedBoolean implements DebouncedBooleanInterface{ + private static LinkedList queue; + private static int windowSize; + private boolean count; + + /** + * + * @param windowSize sets size for the queue + * @param x boolean passed to initialize the queue + */ + public DebouncedBoolean(int windowSize, boolean x){ + this.windowSize = windowSize; + queue = new LinkedList(); + if (x){ + queue.add(x); + count = true; + } + else{ + queue.add(x); + count = false; + } + } + } + + /** + * @param b boolean passed to be added into the queue + */ + public void add(boolean b){ + if (b){ + queue.removeFirst(); + queue.addLast(b); + count = true; + } + else{ + queue.removeFirst(); + queue.addLast(b); + count = false; + } + } + /** + * @return count boolean that determines if the queue is true or false + */ + public boolean get(){ + return count > 0; + + } +} diff --git a/src/lib/DebouncedBooleanInterface.java b/src/lib/DebouncedBooleanInterface.java new file mode 100644 index 0000000..f63fba7 --- /dev/null +++ b/src/lib/DebouncedBooleanInterface.java @@ -0,0 +1,6 @@ +package lib; + +public interface DebouncedBooleanInterface { + void add(boolean b); + boolean get(); +} \ No newline at end of file diff --git a/src/lib/DebouncingBoolean.java b/src/lib/DebouncingBoolean.java deleted file mode 100644 index e66e81c..0000000 --- a/src/lib/DebouncingBoolean.java +++ /dev/null @@ -1,50 +0,0 @@ -package lib; -import java.util.LinkedList; -public class DebouncingBoolean implements DebouncedBoolean{ - private static LinkedList queue; - private static int windowSize; - private boolean count; - - /** - * - * @param windowSize sets size for the queue - * @param x boolean passed to initialize the queue - */ - public DebouncingBoolean(int windowSize, boolean x){ - this.windowSize = windowSize; - queue = new LinkedList(); - while(queue.size() < windowSize){ - if (x){ - queue.add(x); - count = true; - } - else{ - queue.add(x); - count = false; - } - } - } - - /** - * @param b boolean passed to be added into the queue - */ - public void add(boolean b){ - if (b){ - queue.removeFirst(); - queue.addLast(b); - count = true; - } - else{ - queue.removeFirst(); - queue.addLast(b); - count = false; - } - } - /** - * @return count boolean that determines if the queue is true or false - */ - public boolean get(){ - return count; - - } -} From 3caaec68a8fffcbe8d3472b94e7cb03255527161 Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Mon, 23 Jan 2017 20:25:10 -0500 Subject: [PATCH 06/21] fixed DebouncedBoolean class --- src/lib/DebouncedBoolean.java | 30 +++++++++++------------------- 1 file changed, 11 insertions(+), 19 deletions(-) diff --git a/src/lib/DebouncedBoolean.java b/src/lib/DebouncedBoolean.java index e2dff74..d98d1cc 100644 --- a/src/lib/DebouncedBoolean.java +++ b/src/lib/DebouncedBoolean.java @@ -3,41 +3,33 @@ public class DebouncedBoolean implements DebouncedBooleanInterface{ private static LinkedList queue; private static int windowSize; - private boolean count; + private int count; /** * * @param windowSize sets size for the queue * @param x boolean passed to initialize the queue */ - public DebouncedBoolean(int windowSize, boolean x){ - this.windowSize = windowSize; - queue = new LinkedList(); - if (x){ - queue.add(x); - count = true; - } - else{ - queue.add(x); - count = false; - } + public DebouncedBoolean(int windowSize, boolean initial){ + if(initial){ + this.windowSize = windowSize; } + this.windowSize = -windowSize; + queue = new LinkedList(); + } /** * @param b boolean passed to be added into the queue */ public void add(boolean b){ - if (b){ - queue.removeFirst(); - queue.addLast(b); - count = true; - } - else{ queue.removeFirst(); queue.addLast(b); - count = false; + count++; + if(b){ + count++; } + count--; } /** * @return count boolean that determines if the queue is true or false From 470aa1a11fa594db6c0212ac0bd443f5240735f3 Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Tue, 24 Jan 2017 18:57:53 -0500 Subject: [PATCH 07/21] fixed debounced boolean and did tests again --- src/lib/DebouncedBoolean.java | 17 +++++-- test/com/nutrons/nu17/BooleanTest.java | 70 ++++++++++---------------- 2 files changed, 39 insertions(+), 48 deletions(-) diff --git a/src/lib/DebouncedBoolean.java b/src/lib/DebouncedBoolean.java index d98d1cc..b7e26fa 100644 --- a/src/lib/DebouncedBoolean.java +++ b/src/lib/DebouncedBoolean.java @@ -12,9 +12,12 @@ public class DebouncedBoolean implements DebouncedBooleanInterface{ */ public DebouncedBoolean(int windowSize, boolean initial){ if(initial){ - this.windowSize = windowSize; + count = windowSize; } - this.windowSize = -windowSize; + else{ + count = -windowSize; + } + this.windowSize= windowSize; queue = new LinkedList(); } @@ -23,19 +26,25 @@ public DebouncedBoolean(int windowSize, boolean initial){ * @param b boolean passed to be added into the queue */ public void add(boolean b){ + if(queue.size() == windowSize){ queue.removeFirst(); queue.addLast(b); - count++; + } + else{ + queue.addLast(b); + } if(b){ count++; } + else{ count--; + } } /** * @return count boolean that determines if the queue is true or false */ public boolean get(){ - return count > 0; + return count >= 0; } } diff --git a/test/com/nutrons/nu17/BooleanTest.java b/test/com/nutrons/nu17/BooleanTest.java index a9cba5c..5ccc31b 100644 --- a/test/com/nutrons/nu17/BooleanTest.java +++ b/test/com/nutrons/nu17/BooleanTest.java @@ -5,68 +5,48 @@ import org.junit.Test; import lib.DebouncedBoolean; -import lib.DebouncingBoolean; +import lib.DebouncedBooleanInterface; public class BooleanTest { - @Test - public void falseTest() { - DebouncedBoolean x = new DebouncingBoolean(3,false); - assertEquals(false, x.get()); - } - - @Test - public void trueTest(){ - DebouncedBoolean x = new DebouncingBoolean(3, true); - assertEquals(true, x.get()); - } - - @Test - public void passing(){ - DebouncedBoolean x = new DebouncingBoolean(3,false); - x.add(true); - assertEquals(true,x.get()); - System.out.println(" "); - x.add(true); + @Test + public void allFalse(){ + DebouncedBooleanInterface x = new DebouncedBoolean(3,true); + x.add(false); assertEquals(true, x.get()); - System.out.println(" "); - x.add(true); + x.add(false); assertEquals(true, x.get()); - System.out.println(" "); - } - - @Test - public void passingFalse(){ - DebouncedBoolean x = new DebouncingBoolean(3, true); x.add(false); - assertEquals(false, x.get()); + assertEquals(true, x.get()); x.add(false); assertEquals(false, x.get()); - x.add(false); - assertEquals(false,x.get()); } @Test - public void changingTrue(){ - DebouncedBoolean x = new DebouncingBoolean(3,false); - x.add(false); - assertEquals(false, x.get()); - x.add(false); - assertEquals(false, x.get()); - x.add(false); + public void allTrue(){ + DebouncedBooleanInterface x = new DebouncedBoolean(3,false); + x.add(true); assertEquals(false, x.get()); x.add(true); - assertEquals(true, x.get()); + assertEquals(false, x.get()); x.add(true); assertEquals(true, x.get()); x.add(true); assertEquals(true, x.get()); } - @Test - public void changingFalse(){ - DebouncedBoolean x = new DebouncingBoolean(3,true); + @Test + public void changingValues(){ + DebouncedBooleanInterface x = new DebouncedBoolean (3, true); + x.add(false); + assertEquals(true, x.get()); + x.add(false); + assertEquals(true, x.get()); + x.add(false); + assertEquals(true, x.get()); + x.add(false); + assertEquals(false, x.get()); x.add(false); assertEquals(false, x.get()); x.add(false); @@ -74,9 +54,11 @@ public void changingFalse(){ x.add(false); assertEquals(false, x.get()); x.add(true); - assertEquals(true, x.get()); + assertEquals(false, x.get()); x.add(true); - assertEquals(true, x.get()); + assertEquals(false, x.get()); + x.add(true); + assertEquals(false, x.get()); x.add(true); assertEquals(true, x.get()); } From 4f5035ee35d5e17d207f56f30cb3780b203eef79 Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Tue, 24 Jan 2017 19:19:57 -0500 Subject: [PATCH 08/21] fixed style --- src/lib/DebouncedBoolean.java | 94 +++++++++++----------- src/lib/DebouncedBooleanInterface.java | 7 +- test/com/nutrons/nu17/BooleanTest.java | 107 +++++++++++++------------ 3 files changed, 105 insertions(+), 103 deletions(-) diff --git a/src/lib/DebouncedBoolean.java b/src/lib/DebouncedBoolean.java index b7e26fa..830b33b 100644 --- a/src/lib/DebouncedBoolean.java +++ b/src/lib/DebouncedBoolean.java @@ -1,50 +1,50 @@ package lib; + import java.util.LinkedList; -public class DebouncedBoolean implements DebouncedBooleanInterface{ - private static LinkedList queue; - private static int windowSize; - private int count; - - /** - * - * @param windowSize sets size for the queue - * @param x boolean passed to initialize the queue - */ - public DebouncedBoolean(int windowSize, boolean initial){ - if(initial){ - count = windowSize; - } - else{ - count = -windowSize; - } - this.windowSize= windowSize; - queue = new LinkedList(); - - } - - /** - * @param b boolean passed to be added into the queue - */ - public void add(boolean b){ - if(queue.size() == windowSize){ - queue.removeFirst(); - queue.addLast(b); - } - else{ - queue.addLast(b); - } - if(b){ - count++; - } - else{ - count--; - } - } - /** - * @return count boolean that determines if the queue is true or false - */ - public boolean get(){ - return count >= 0; - - } + +public class DebouncedBoolean implements DebouncedBooleanInterface { + private static LinkedList queue; + private static int windowSize; + private int count; + + /** + * + * @param windowSize sets size for the queue + * @param x boolean passed to initialize the queue + */ + public DebouncedBoolean(int windowSize, boolean initial) { + if (initial) { + count = windowSize; + } else { + count = -windowSize; + } + this.windowSize = windowSize; + queue = new LinkedList(); + + } + + /** + * @param b boolean passed to be added into the queue + */ + public void add(boolean b) { + if (queue.size() == windowSize) { + queue.removeFirst(); + queue.addLast(b); + } else { + queue.addLast(b); + } + if (b) { + count++; + } else { + count--; + } + } + + /** + * @return count boolean that determines if the queue is true or false + */ + public boolean get() { + return count >= 0; + + } } diff --git a/src/lib/DebouncedBooleanInterface.java b/src/lib/DebouncedBooleanInterface.java index f63fba7..0d61f17 100644 --- a/src/lib/DebouncedBooleanInterface.java +++ b/src/lib/DebouncedBooleanInterface.java @@ -1,6 +1,7 @@ package lib; public interface DebouncedBooleanInterface { - void add(boolean b); - boolean get(); -} \ No newline at end of file + void add(boolean b); + + boolean get(); +} diff --git a/test/com/nutrons/nu17/BooleanTest.java b/test/com/nutrons/nu17/BooleanTest.java index 5ccc31b..ace8dd8 100644 --- a/test/com/nutrons/nu17/BooleanTest.java +++ b/test/com/nutrons/nu17/BooleanTest.java @@ -1,4 +1,5 @@ package com.nutrons.nu17; + import static org.junit.Assert.*; import com.nutrons.nu17.*; @@ -9,57 +10,57 @@ public class BooleanTest { - - @Test - public void allFalse(){ - DebouncedBooleanInterface x = new DebouncedBoolean(3,true); - x.add(false); - assertEquals(true, x.get()); - x.add(false); - assertEquals(true, x.get()); - x.add(false); - assertEquals(true, x.get()); - x.add(false); - assertEquals(false, x.get()); - } - - @Test - public void allTrue(){ - DebouncedBooleanInterface x = new DebouncedBoolean(3,false); - x.add(true); - assertEquals(false, x.get()); - x.add(true); - assertEquals(false, x.get()); - x.add(true); - assertEquals(true, x.get()); - x.add(true); - assertEquals(true, x.get()); - } - - @Test - public void changingValues(){ - DebouncedBooleanInterface x = new DebouncedBoolean (3, true); - x.add(false); - assertEquals(true, x.get()); - x.add(false); - assertEquals(true, x.get()); - x.add(false); - assertEquals(true, x.get()); - x.add(false); - assertEquals(false, x.get()); - x.add(false); - assertEquals(false, x.get()); - x.add(false); - assertEquals(false, x.get()); - x.add(false); - assertEquals(false, x.get()); - x.add(true); - assertEquals(false, x.get()); - x.add(true); - assertEquals(false, x.get()); - x.add(true); - assertEquals(false, x.get()); - x.add(true); - assertEquals(true, x.get()); - } + + @Test + public void allFalse() { + DebouncedBooleanInterface x = new DebouncedBoolean(3, true); + x.add(false); + assertEquals(true, x.get()); + x.add(false); + assertEquals(true, x.get()); + x.add(false); + assertEquals(true, x.get()); + x.add(false); + assertEquals(false, x.get()); + } + + @Test + public void allTrue() { + DebouncedBooleanInterface x = new DebouncedBoolean(3, false); + x.add(true); + assertEquals(false, x.get()); + x.add(true); + assertEquals(false, x.get()); + x.add(true); + assertEquals(true, x.get()); + x.add(true); + assertEquals(true, x.get()); + } + + @Test + public void changingValues() { + DebouncedBooleanInterface x = new DebouncedBoolean(3, true); + x.add(false); + assertEquals(true, x.get()); + x.add(false); + assertEquals(true, x.get()); + x.add(false); + assertEquals(true, x.get()); + x.add(false); + assertEquals(false, x.get()); + x.add(false); + assertEquals(false, x.get()); + x.add(false); + assertEquals(false, x.get()); + x.add(false); + assertEquals(false, x.get()); + x.add(true); + assertEquals(false, x.get()); + x.add(true); + assertEquals(false, x.get()); + x.add(true); + assertEquals(false, x.get()); + x.add(true); + assertEquals(true, x.get()); + } } From 0a8539f80e9df1caa80a51468df4310d01772d91 Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Tue, 24 Jan 2017 19:27:54 -0500 Subject: [PATCH 09/21] fixed more style issues --- src/lib/DebouncedBoolean.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/lib/DebouncedBoolean.java b/src/lib/DebouncedBoolean.java index 830b33b..8fd1b63 100644 --- a/src/lib/DebouncedBoolean.java +++ b/src/lib/DebouncedBoolean.java @@ -9,8 +9,8 @@ public class DebouncedBoolean implements DebouncedBooleanInterface { /** * - * @param windowSize sets size for the queue - * @param x boolean passed to initialize the queue + * @param windowSize Sets size for the queue. + * @param initial Boolean passed to initialize the queue. */ public DebouncedBoolean(int windowSize, boolean initial) { if (initial) { @@ -24,16 +24,16 @@ public DebouncedBoolean(int windowSize, boolean initial) { } /** - * @param b boolean passed to be added into the queue + * @param value Boolean passed to be added into the queue. */ - public void add(boolean b) { + public void add(boolean value) { if (queue.size() == windowSize) { queue.removeFirst(); - queue.addLast(b); + queue.addLast(value); } else { - queue.addLast(b); + queue.addLast(value); } - if (b) { + if (value) { count++; } else { count--; @@ -41,7 +41,7 @@ public void add(boolean b) { } /** - * @return count boolean that determines if the queue is true or false + * @return Boolean that determines if the queue is true or false. */ public boolean get() { return count >= 0; From fb8b5bc909ad82ab18cc85c94454dc68ba625426 Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Tue, 24 Jan 2017 19:31:09 -0500 Subject: [PATCH 10/21] fixed parameter in interface --- src/lib/DebouncedBooleanInterface.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/DebouncedBooleanInterface.java b/src/lib/DebouncedBooleanInterface.java index 0d61f17..ef2d0e5 100644 --- a/src/lib/DebouncedBooleanInterface.java +++ b/src/lib/DebouncedBooleanInterface.java @@ -1,7 +1,7 @@ package lib; public interface DebouncedBooleanInterface { - void add(boolean b); + void add(boolean value); boolean get(); } From cba8b717fb528f22c63ce9642bb1682c6a061d83 Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Thu, 26 Jan 2017 19:31:50 -0500 Subject: [PATCH 11/21] added exception on windowSize --- src/lib/DebouncedBoolean.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/lib/DebouncedBoolean.java b/src/lib/DebouncedBoolean.java index 8fd1b63..43fbe79 100644 --- a/src/lib/DebouncedBoolean.java +++ b/src/lib/DebouncedBoolean.java @@ -13,6 +13,9 @@ public class DebouncedBoolean implements DebouncedBooleanInterface { * @param initial Boolean passed to initialize the queue. */ public DebouncedBoolean(int windowSize, boolean initial) { + if (windowSize <= 0) { + throw new IllegalArgumentException(windowSize + " is not a valid window size"); + } if (initial) { count = windowSize; } else { From 292f85a8144af496a7e54b6e27fc8796a94786fd Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Thu, 26 Jan 2017 19:38:06 -0500 Subject: [PATCH 12/21] added exception test --- src/lib/DebouncedBoolean.java | 4 ++-- test/com/nutrons/nu17/BooleanTest.java | 10 ++++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/lib/DebouncedBoolean.java b/src/lib/DebouncedBoolean.java index 43fbe79..1da98e0 100644 --- a/src/lib/DebouncedBoolean.java +++ b/src/lib/DebouncedBoolean.java @@ -9,7 +9,7 @@ public class DebouncedBoolean implements DebouncedBooleanInterface { /** * - * @param windowSize Sets size for the queue. + * @param windowSize Sets window for the queue. * @param initial Boolean passed to initialize the queue. */ public DebouncedBoolean(int windowSize, boolean initial) { @@ -27,7 +27,7 @@ public DebouncedBoolean(int windowSize, boolean initial) { } /** - * @param value Boolean passed to be added into the queue. + * @param value Boolean passed to into the queue. */ public void add(boolean value) { if (queue.size() == windowSize) { diff --git a/test/com/nutrons/nu17/BooleanTest.java b/test/com/nutrons/nu17/BooleanTest.java index ace8dd8..64b887a 100644 --- a/test/com/nutrons/nu17/BooleanTest.java +++ b/test/com/nutrons/nu17/BooleanTest.java @@ -63,4 +63,14 @@ public void changingValues() { x.add(true); assertEquals(true, x.get()); } + + @Test(expected = IllegalArgumentException.class) + public void negativeExceptionTest() { + DebouncedBooleanInterface avg = new DebouncedBoolean(-1, true); + } + + @Test(expected = IllegalArgumentException.class) + public void zeroExceptionTest() { + DebouncedBooleanInterface zero = new DebouncedBoolean(0, true); + } } From 619c09464f47751119b999d601ead2355572a60c Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Thu, 26 Jan 2017 19:51:49 -0500 Subject: [PATCH 13/21] added java doc --- src/lib/DebouncedBoolean.java | 10 +++++----- src/lib/DebouncedBooleanInterface.java | 12 +++++++++++- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/src/lib/DebouncedBoolean.java b/src/lib/DebouncedBoolean.java index 1da98e0..4389115 100644 --- a/src/lib/DebouncedBoolean.java +++ b/src/lib/DebouncedBoolean.java @@ -8,7 +8,7 @@ public class DebouncedBoolean implements DebouncedBooleanInterface { private int count; /** - * + * Creates the average. * @param windowSize Sets window for the queue. * @param initial Boolean passed to initialize the queue. */ @@ -26,8 +26,8 @@ public DebouncedBoolean(int windowSize, boolean initial) { } - /** - * @param value Boolean passed to into the queue. + /* + * @see lib.DebouncedBooleanInterface#add() */ public void add(boolean value) { if (queue.size() == windowSize) { @@ -43,8 +43,8 @@ public void add(boolean value) { } } - /** - * @return Boolean that determines if the queue is true or false. + /* + * @see lib.DebouncedBooleanInterface#get() */ public boolean get() { return count >= 0; diff --git a/src/lib/DebouncedBooleanInterface.java b/src/lib/DebouncedBooleanInterface.java index ef2d0e5..f120854 100644 --- a/src/lib/DebouncedBooleanInterface.java +++ b/src/lib/DebouncedBooleanInterface.java @@ -1,7 +1,17 @@ package lib; +/** + * A Debounced Boolean is used to keep track of a windowed size amount of booleans being added the window. + */ public interface DebouncedBooleanInterface { + /** + * Adds the new boolean to the average and removes the least recent boolean if there would be more + * than the windowSize value. + * @param value Boolean being passed into the queue. + */ void add(boolean value); - + /** + * @return Boolean that determines if the queue is true or false. + */ boolean get(); } From 15d5f9ad04708864f9f189fe7d5cc6f14f0f570a Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Thu, 26 Jan 2017 19:53:20 -0500 Subject: [PATCH 14/21] style changes --- src/lib/DebouncedBooleanInterface.java | 5 ++++- src/lib/MovingAverage.java | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/lib/DebouncedBooleanInterface.java b/src/lib/DebouncedBooleanInterface.java index f120854..3b03835 100644 --- a/src/lib/DebouncedBooleanInterface.java +++ b/src/lib/DebouncedBooleanInterface.java @@ -1,15 +1,18 @@ package lib; /** - * A Debounced Boolean is used to keep track of a windowed size amount of booleans being added the window. + * A Debounced Boolean is used to keep track of a windowed size amount of booleans being added the + * window. */ public interface DebouncedBooleanInterface { /** * Adds the new boolean to the average and removes the least recent boolean if there would be more * than the windowSize value. + * * @param value Boolean being passed into the queue. */ void add(boolean value); + /** * @return Boolean that determines if the queue is true or false. */ diff --git a/src/lib/MovingAverage.java b/src/lib/MovingAverage.java index 26358e7..3b4f070 100644 --- a/src/lib/MovingAverage.java +++ b/src/lib/MovingAverage.java @@ -33,7 +33,7 @@ public void update(double val) { queue.addLast(val); } - /* + /* * @see lib.MovingAverageInterface#getAverage() */ @Override From 7f93de6a26b1ff0e447e82d49a3d55e83a22bdfb Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Thu, 26 Jan 2017 20:02:50 -0500 Subject: [PATCH 15/21] fixed style error on travis --- src/lib/DebouncedBoolean.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/lib/DebouncedBoolean.java b/src/lib/DebouncedBoolean.java index 4389115..799be0a 100644 --- a/src/lib/DebouncedBoolean.java +++ b/src/lib/DebouncedBoolean.java @@ -8,7 +8,8 @@ public class DebouncedBoolean implements DebouncedBooleanInterface { private int count; /** - * Creates the average. + * Creates the average. + * * @param windowSize Sets window for the queue. * @param initial Boolean passed to initialize the queue. */ @@ -26,8 +27,8 @@ public DebouncedBoolean(int windowSize, boolean initial) { } - /* - * @see lib.DebouncedBooleanInterface#add() + /* + * @see lib.DebouncedBooleanInterface#add(boolean) */ public void add(boolean value) { if (queue.size() == windowSize) { @@ -42,8 +43,7 @@ public void add(boolean value) { count--; } } - - /* + /* * @see lib.DebouncedBooleanInterface#get() */ public boolean get() { From 50f4d2433bf8128877f6b3f60c97a88e9638ff21 Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Thu, 26 Jan 2017 20:05:55 -0500 Subject: [PATCH 16/21] style fix 2.0 --- src/lib/DebouncedBoolean.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/lib/DebouncedBoolean.java b/src/lib/DebouncedBoolean.java index 799be0a..1a2175a 100644 --- a/src/lib/DebouncedBoolean.java +++ b/src/lib/DebouncedBoolean.java @@ -43,6 +43,7 @@ public void add(boolean value) { count--; } } + /* * @see lib.DebouncedBooleanInterface#get() */ From 6d2a06e53157271dc95206c15c3a64dd8a7bddda Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Thu, 26 Jan 2017 20:15:30 -0500 Subject: [PATCH 17/21] fixed java doc error --- src/lib/DebouncedBoolean.java | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/src/lib/DebouncedBoolean.java b/src/lib/DebouncedBoolean.java index 1a2175a..8b22ffc 100644 --- a/src/lib/DebouncedBoolean.java +++ b/src/lib/DebouncedBoolean.java @@ -7,16 +7,8 @@ public class DebouncedBoolean implements DebouncedBooleanInterface { private static int windowSize; private int count; - /** - * Creates the average. - * - * @param windowSize Sets window for the queue. - * @param initial Boolean passed to initialize the queue. - */ + public DebouncedBoolean(int windowSize, boolean initial) { - if (windowSize <= 0) { - throw new IllegalArgumentException(windowSize + " is not a valid window size"); - } if (initial) { count = windowSize; } else { @@ -30,6 +22,7 @@ public DebouncedBoolean(int windowSize, boolean initial) { /* * @see lib.DebouncedBooleanInterface#add(boolean) */ + @Override public void add(boolean value) { if (queue.size() == windowSize) { queue.removeFirst(); @@ -47,8 +40,9 @@ public void add(boolean value) { /* * @see lib.DebouncedBooleanInterface#get() */ + @Override public boolean get() { return count >= 0; - } + } From e58c9041bb2e6968e1d5aa847f48fa7f08c41a68 Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Thu, 26 Jan 2017 20:21:25 -0500 Subject: [PATCH 18/21] added comment to constructor --- src/lib/DebouncedBoolean.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/lib/DebouncedBoolean.java b/src/lib/DebouncedBoolean.java index 8b22ffc..0df1a93 100644 --- a/src/lib/DebouncedBoolean.java +++ b/src/lib/DebouncedBoolean.java @@ -7,7 +7,12 @@ public class DebouncedBoolean implements DebouncedBooleanInterface { private static int windowSize; private int count; - + /** + * Creates and initializes the queue. + * + * @param windowSize Sets the size of values being looked at + * @param initial Initializes the queue to a boolean type. + */ public DebouncedBoolean(int windowSize, boolean initial) { if (initial) { count = windowSize; From 0e4a638e16a69850a19b656a19237b985bf98697 Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Sat, 28 Jan 2017 11:41:46 -0500 Subject: [PATCH 19/21] fixed and added exception with test to go along with --- src/lib/DebouncedBoolean.java | 3 +++ test/com/nutrons/nu17/BooleanTest.java | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/lib/DebouncedBoolean.java b/src/lib/DebouncedBoolean.java index 0df1a93..c09a50c 100644 --- a/src/lib/DebouncedBoolean.java +++ b/src/lib/DebouncedBoolean.java @@ -14,6 +14,9 @@ public class DebouncedBoolean implements DebouncedBooleanInterface { * @param initial Initializes the queue to a boolean type. */ public DebouncedBoolean(int windowSize, boolean initial) { + if (windowSize <= 0) { + throw new IllegalArgumentException(windowSize + " is not a valid window size"); + } if (initial) { count = windowSize; } else { diff --git a/test/com/nutrons/nu17/BooleanTest.java b/test/com/nutrons/nu17/BooleanTest.java index 64b887a..8712d8b 100644 --- a/test/com/nutrons/nu17/BooleanTest.java +++ b/test/com/nutrons/nu17/BooleanTest.java @@ -66,11 +66,11 @@ public void changingValues() { @Test(expected = IllegalArgumentException.class) public void negativeExceptionTest() { - DebouncedBooleanInterface avg = new DebouncedBoolean(-1, true); + DebouncedBooleanInterface x = new DebouncedBoolean(-1, true); } @Test(expected = IllegalArgumentException.class) public void zeroExceptionTest() { - DebouncedBooleanInterface zero = new DebouncedBoolean(0, true); + DebouncedBooleanInterface x = new DebouncedBoolean(0, true); } } From 7530c04d8e3a4baba7e5d3568c0aba1122c9c3b4 Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Sat, 28 Jan 2017 12:19:51 -0500 Subject: [PATCH 20/21] took out static --- src/lib/DebouncedBoolean.java | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/src/lib/DebouncedBoolean.java b/src/lib/DebouncedBoolean.java index c09a50c..c87ed94 100644 --- a/src/lib/DebouncedBoolean.java +++ b/src/lib/DebouncedBoolean.java @@ -3,26 +3,25 @@ import java.util.LinkedList; public class DebouncedBoolean implements DebouncedBooleanInterface { - private static LinkedList queue; - private static int windowSize; + private LinkedList queue; + private final int windowSize; private int count; /** - * Creates and initializes the queue. - * - * @param windowSize Sets the size of values being looked at + * Creates and initializes the queue. + * @param size Sets the size of values being looked at * @param initial Initializes the queue to a boolean type. */ - public DebouncedBoolean(int windowSize, boolean initial) { - if (windowSize <= 0) { - throw new IllegalArgumentException(windowSize + " is not a valid window size"); + public DebouncedBoolean(int size, boolean initial) { + if (size <= 0) { + throw new IllegalArgumentException(size + " is not a valid window size"); } if (initial) { - count = windowSize; + count = size; } else { - count = -windowSize; + count = -size; } - this.windowSize = windowSize; + windowSize = size; queue = new LinkedList(); } @@ -52,5 +51,4 @@ public void add(boolean value) { public boolean get() { return count >= 0; } - } From 542a58a5e2a8e5ea60405312cad7e06e0e8cf83d Mon Sep 17 00:00:00 2001 From: Kevin Henriquez Date: Sat, 28 Jan 2017 12:21:55 -0500 Subject: [PATCH 21/21] removed line breaks --- test/com/nutrons/nu17/BooleanTest.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/test/com/nutrons/nu17/BooleanTest.java b/test/com/nutrons/nu17/BooleanTest.java index 8712d8b..f756d28 100644 --- a/test/com/nutrons/nu17/BooleanTest.java +++ b/test/com/nutrons/nu17/BooleanTest.java @@ -9,8 +9,6 @@ import lib.DebouncedBooleanInterface; public class BooleanTest { - - @Test public void allFalse() { DebouncedBooleanInterface x = new DebouncedBoolean(3, true); @@ -63,7 +61,7 @@ public void changingValues() { x.add(true); assertEquals(true, x.get()); } - + @Test(expected = IllegalArgumentException.class) public void negativeExceptionTest() { DebouncedBooleanInterface x = new DebouncedBoolean(-1, true);