public void ConstructorPassesErrorCodeCorrectly(ErrorCode errorCode)
        {
            var exception = new AssemblyToolKernelException(errorCode);

            Assert.AreEqual(1, exception.Code.Length);
            Assert.AreEqual(errorCode, exception.Code[0]);
            Assert.AreEqual(errorCode.GetMessage(), exception.Message);
            Assert.IsNull(exception.InnerException);
        }
        public void ConstructorPassesErrorCodeAndInnerExceptionCorrectly()
        {
            var errorCode      = ErrorCode.InvalidProbabilityDistributionFactor;
            var innerException = new AssemblyToolKernelException(ErrorCode.ValueBelowOne);
            var exception      = new AssemblyToolKernelException(errorCode, innerException);

            Assert.AreEqual(1, exception.Code.Length);
            Assert.AreEqual(errorCode, exception.Code[0]);
            Assert.AreEqual(errorCode.GetMessage(), exception.Message);
            Assert.AreEqual(innerException, exception.InnerException);
        }