Skip to content

Commit 7f0733b

Browse files
committed
Add algo for BooleanGateslogic and test cases
1 parent 880976b commit 7f0733b

File tree

1 file changed

+13
-18
lines changed

1 file changed

+13
-18
lines changed

src/test/java/com/thealgorithms/bitmanipulation/BooleanAlgebraGatesTest.java

Lines changed: 13 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -64,41 +64,36 @@ void testNORGate(List<Boolean> inputs, boolean expected) {
6464
// Helper methods to provide test data for each gate
6565

6666
static Stream<Object[]> provideAndGateTestCases() {
67-
return Stream.of(new Object[]{Arrays.asList(true, true, true), true},new Object[]{Arrays.asList(true, false, true), false},
68-
new Object[]{Arrays.asList(false, false, false), false},
69-
new Object[]{Collections.emptyList(), true} // AND over no inputs is true
67+
return Stream.of(new Object[]{Arrays.asList(true, true, true), true}, new Object[]{Arrays.asList(true, false, true), false}, new Object[]{Arrays.asList(false, false, false), false}, new Object[]{Collections.emptyList(), true} // AND over no inputs is true
7068
);
7169
}
7270

7371
static Stream<Object[]> provideOrGateTestCases() {
74-
return Stream.of(new Object[]{Arrays.asList(true, false, false), true},
75-
new Object[]{Arrays.asList(false, false, false), false},
76-
new Object[]{Arrays.asList(true, true, true), true},
77-
new Object[]{Collections.emptyList(), false} // OR over no inputs is false
72+
return Stream.of(new Object[]{Arrays.asList(true, false, false), true}, new Object[]{Arrays.asList(false, false, false), false}, new Object[]{Arrays.asList(true, true, true), true}, new Object[]{Collections.emptyList(), false} // OR over no inputs is false
7873
);
7974
}
8075

8176
static Stream<Object[]> provideXorGateTestCases() {
8277
return Stream.of(new Object[]{Arrays.asList(true, false, true), false}, // XOR over odd true
83-
new Object[]{Arrays.asList(true, false, false), true}, // XOR over single true
84-
new Object[]{Arrays.asList(false, false, false), false},// XOR over all false
85-
new Object[]{Arrays.asList(true, true), false} // XOR over even true
78+
new Object[]{Arrays.asList(true, false, false), true}, // XOR over single true
79+
new Object[]{Arrays.asList(false, false, false), false}, // XOR over all false
80+
new Object[]{Arrays.asList(true, true), false} // XOR over even true
8681
);
8782
}
8883

8984
static Stream<Object[]> provideNandGateTestCases() {
90-
return Stream.of(new Object[]{Arrays.asList(true, true, true), false}, // NAND of all true is false
91-
new Object[]{Arrays.asList(true, false), true}, // NAND with one false is true
92-
new Object[]{Arrays.asList(false, false), true}, // NAND of all false is true
93-
new Object[]{Collections.emptyList(), false} // NAND over no inputs is false (negation of AND)
85+
return Stream.of(new Object[]{Arrays.asList(true, true, true), false}, // NAND of all true is false
86+
new Object[]{Arrays.asList(true, false), true}, // NAND with one false is true
87+
new Object[]{Arrays.asList(false, false), true}, // NAND of all false is true
88+
new Object[]{Collections.emptyList(), false} // NAND over no inputs is false (negation of AND)
9489
);
9590
}
9691

9792
static Stream<Object[]> provideNorGateTestCases() {
98-
return Stream.of(new Object[]{Arrays.asList(false, false),true}, // NOR of all false is true
99-
new Object[]{Arrays.asList(false, true), false}, // NOR with one true is false
100-
new Object[]{Arrays.asList(true, true), false}, // NOR of all true is false
101-
new Object[]{Collections.emptyList(), true} // NOR over no inputs is true (negation of OR)
93+
return Stream.of(new Object[]{Arrays.asList(false, false),true}, // NOR of all false is true
94+
new Object[]{Arrays.asList(false, true), false}, // NOR with one true is false
95+
new Object[]{Arrays.asList(true, true), false}, // NOR of all true is false
96+
new Object[]{Collections.emptyList(), true} // NOR over no inputs is true (negation of OR)
10297
);
10398
}
10499
}

0 commit comments

Comments
 (0)