public void TestGetLogicalOperationFunctionAnd() { var logicalAnd = WaveMath.GetLogicalOperationFunction(WaveMath.LogicalOperationEnum.And); Assert.AreEqual(0, logicalAnd(0, 0)); Assert.AreEqual(0, logicalAnd(0, 1)); Assert.AreEqual(0, logicalAnd(1, 0)); Assert.AreEqual(1, logicalAnd(1, 1)); Assert.AreEqual(0, logicalAnd(0, -1)); Assert.AreEqual(0, logicalAnd(-1, 0)); Assert.AreEqual(1, logicalAnd(-1, -1)); }
public void TestGetLogicalOperationFunctionNot() { var logicalNot = WaveMath.GetLogicalOperationFunction(WaveMath.LogicalOperationEnum.Not); Assert.AreEqual(1, logicalNot(0, 0)); //The second parameter is not used... Assert.AreEqual(1, logicalNot(0, 1)); Assert.AreEqual(0, logicalNot(1, 0)); Assert.AreEqual(0, logicalNot(1, 1)); Assert.AreEqual(1, logicalNot(0, -1)); Assert.AreEqual(0, logicalNot(-1, 0)); Assert.AreEqual(0, logicalNot(-1, -1)); }
public void TestGetLogicalOperationFunctionNotXor() { var logicalNotXor = WaveMath.GetLogicalOperationFunction(WaveMath.LogicalOperationEnum.NotXor); Assert.AreEqual(1, logicalNotXor(0, 0)); Assert.AreEqual(0, logicalNotXor(0, 1)); Assert.AreEqual(0, logicalNotXor(1, 0)); Assert.AreEqual(1, logicalNotXor(1, 1)); Assert.AreEqual(0, logicalNotXor(0, -1)); Assert.AreEqual(0, logicalNotXor(-1, 0)); Assert.AreEqual(1, logicalNotXor(-1, -1)); }