using System; using System.Collections.Generic; using System.Text; using UnitTestSharp; using Sunweaver.Commands.Abstracts; using Sunweaver.Commands.BinaryLogic; using Sunweaver.DataPrototypes; namespace Sunweaver.UnitTests.Commands.BinaryLogic { public class swabTests : TestFixture { BasePair bp = new swab(); VirtualMachine VM; Codule codule; public override void TestSetup() { VM = new VirtualMachine(); codule = new Codule(); codule.BasePairs.Add(bp); } public void Correct() { VM.BoolStack.Push(true); VM.BoolStack.Push(false); bp.Implementation(VM); CheckTrue( VM.BoolStack.Pop()); CheckFalse( VM.BoolStack.Pop()); } public void Compiled() { VM.BoolStack.Push(true); VM.BoolStack.Push(false); codule.Compile(); codule.Execute(VM); CheckTrue(VM.BoolStack.Pop()); CheckFalse(VM.BoolStack.Pop()); } public void Fizzles() { VM.BoolStack.Push(true); bp.Implementation(VM); CheckEqual((long)1, VM.BoolStack.Count()); CheckTrue( VM.BoolStack.Pop()); } public void CompiledFizzles() { VM.BoolStack.Push(true); codule.Compile(); codule.Execute(VM); CheckEqual((long)1, VM.BoolStack.Count()); CheckTrue(VM.BoolStack.Pop()); } public void NameTest() { CheckEqual("swab", bp.ToString()); } } }