前天把以前同事介绍的敏捷开发的书看完了,决定开始单元测试驱动开发TDD

ios开发的单元测试简单一些

unity的没用过,今天搜索了下,发现居然有官方工具,更新到1.22版

决定使用官方的

地址是:unit test tool


用法和注意事项


两种单元测试:

A.NUnit,官网:http://www.nunit.org:

发现一篇好文章http://confach.cnblogs.com/archive/2005/06/20/177817.aspx将NUnit的

测试静态类的(未继承MONOBehavior)

跟ios开发的xctest差不多,用attritube:[Test]表明下面的方法是个测试,命名空间是Nunit.frameword

Assert.~~~~断言~~,巴拉巴拉的什么表明测试通过没有

Assert.Pass ();

ssert.Fail ();

还有什么比较之类的方法

AreEqual相等

AreNotEual不相等

Greater大于

Less小于

IsNotNull不为空

.等等等还有好多不明白干什么的断言方法,具体列表在下面的源文件里面,请自行浏览猜测用途




第二种是Integration Test

就是可以在运行时做的单元测试



具体流程是

1.打开窗口

2.建立测试

3.设置是否断言组件(Assertions组件)通过就pass(通过任意一个之后貌似就会认为是成功了,而不是timeOut或者继续其他断言判断,也就是说后面如果有失败的就不继续测了,建议关闭)

4.设置超时时间,超过之后视为通过

5.在子物体中添加测试物体添加脚本(Assertion默认有:float,bool,vector2,3,4,renderer等判断)

6.添加断言脚本或自己写测试脚本


PS:默认的几个断言类型如果觉得不够,自己写,继承泛型类ComparerBaseGeneric<T1,T2>,重写Compare方法即可,ComparerBaseGeneric<T>则是需要一个参数的版本


当自己写单元测试脚本,

通过或失败时执行IntegrationTest.Pass (gameObject);或IntegrationTest.Fail (gameObject);即可,这个脚本需要继承Monobehavior,挂载到物体上

用上了单元测试驱动开发,顿时感觉自己对代码的信心加强了不少啊





using NUnit.Framework.Constraints;
using System;
using System.Collections;
using System.ComponentModel;
namespace NUnit.Framework
{
    public class Assert
    {
        //
        // Static Properties
        //
        public static int Counter
        {
            get
            {
                int result = Assert.counter;
                Assert.counter = 0;
                return result;
            }
        }

        //
        // Constructors
        //
        protected Assert ()
        {
        }

        //
        // Static Methods
        //
        [CLSCompliant (false)]
        public static void AreEqual (uint expecteduint actual)
        {
            Assert.That (actualIs.EqualTo (expected), nullnull);
        }

        [CLSCompliant (false)]
        public static void AreEqual (uint expecteduint actualstring message)
        {
            Assert.That (actualIs.EqualTo (expected), messagenull);
        }

        [CLSCompliant (false)]
        public static void AreEqual (uint expecteduint actualstring messageparams object[] args)
        {
            Assert.That (actualIs.EqualTo (expected), messageargs);
        }

        [CLSCompliant (false)]
        public static void AreEqual (ulong expectedulong actual)
        {
            Assert.That (actualIs.EqualTo (expected), nullnull);
        }

        [CLSCompliant (false)]
        public static void AreEqual (ulong expectedulong actualstring message)
        {
            Assert.That (actualIs.EqualTo (expected), messagenull);
        }

        [CLSCompliant (false)]
        public static void AreEqual (ulong expectedulong actualstring messageparams object[] args)
        {
            Assert.That (actualIs.EqualTo (expected), messageargs);
        }

        public static void AreEqual (int expectedint actual)
        {
            Assert.That (actualIs.EqualTo (expected), nullnull);
        }

        public static void AreEqual (int expectedint actualstring message)
        {
            Assert.That (actualIs.EqualTo (expected), messagenull);
        }

        public static void AreEqual (int expectedint actualstring messageparams object[] args)
        {
            Assert.That (actualIs.EqualTo (expected), messageargs);
        }

        public static void AreEqual (long expectedlong actual)
        {
            Assert.That (actualIs.EqualTo (expected), nullnull);
        }

        public static void AreEqual (long expectedlong actualstring message)
        {
            Assert.That (actualIs.EqualTo (expected), messagenull);
        }

        public static void AreEqual (long expectedlong actualstring messageparams object[] args)
        {
            Assert.That (actualIs.EqualTo (expected), messageargs);
        }

        public static void AreEqual (double expecteddoubleactualdouble delta)
        {
            Assert.AssertDoublesAreEqual (expectedactual.get_Value (), deltanullnull);
        }

        public static void AreEqual (double expecteddoubleactualdouble deltastring message)
        {
            Assert.AssertDoublesAreEqual (expectedactual.get_Value (), deltamessagenull);
        }

        public static void AreEqual (double expecteddoubleactualdouble deltastring messageparams object[] args)
        {
            Assert.AssertDoublesAreEqual (expectedactual.get_Value (), deltamessageargs);
        }

        public static void AreEqual (object expectedobject actual)
        {
            Assert.That (actualIs.EqualTo (expected), nullnull);
        }

        public static void AreEqual (object expectedobject actualstring message)
        {
            Assert.That (actualIs.EqualTo (expected), messagenull);
        }

        public static void AreEqual (object expectedobject actualstring messageparams object[] args)
        {
            Assert.That (actualIs.EqualTo (expected), messageargs);
        }

        public static void AreEqual (decimal expecteddecimal actual)
        {
            Assert.That (actualIs.EqualTo (expected), nullnull);
        }

        public static void AreEqual (decimal expecteddecimal actualstring message)
        {
            Assert.That (actualIs.EqualTo (expected), messagenull);
        }

        public static void AreEqual (decimal expecteddecimal actualstring messageparams object[] args)
        {
            Assert.That (actualIs.EqualTo (expected), messageargs);
        }

        public static void AreEqual (double expecteddouble actualdouble delta)
        {
            Assert.AssertDoublesAreEqual (expectedactualdeltanullnull);
        }

        public static void AreEqual (double expecteddouble actualdouble deltastring message)
        {
            Assert.AssertDoublesAreEqual (expectedactualdeltamessagenull);
        }

        public static void AreEqual (double expecteddouble actualdouble deltastring messageparams object[] args)
        {
            Assert.AssertDoublesAreEqual (expectedactualdeltamessageargs);
        }

        [CLSCompliant (false)]
        public static void AreNotEqual (uint expecteduint actual)
        {
            Assert.That (actualIs.Not.EqualTo (expected), nullnull);
        }

        [CLSCompliant (false)]
        public static void AreNotEqual (uint expecteduint actualstring message)
        {
            Assert.That (actualIs.Not.EqualTo (expected), messagenull);
        }

        [CLSCompliant (false)]
        public static void AreNotEqual (ulong expectedulong actualstring message)
        {
            Assert.That (actualIs.Not.EqualTo (expected), messagenull);
        }

        [CLSCompliant (false)]
        public static void AreNotEqual (ulong expectedulong actualstring messageparams object[] args)
        {
            Assert.That (actualIs.Not.EqualTo (expected), messageargs);
        }

        public static void AreNotEqual (long expectedlong actualstring message)
        {
            Assert.That (actualIs.Not.EqualTo (expected), messagenull);
        }

        public static void AreNotEqual (long expectedlong actualstring messageparams object[] args)
        {
            Assert.That (actualIs.Not.EqualTo (expected), messageargs);
        }

        [CLSCompliant (false)]
        public static void AreNotEqual (uint expecteduint actualstring messageparams object[] args)
        {
            Assert.That (actualIs.Not.EqualTo (expected), messageargs);
        }

        public static void AreNotEqual (long expectedlong actual)
        {
            Assert.That (actualIs.Not.EqualTo (expected), nullnull);
        }

        [CLSCompliant (false)]
        public static void AreNotEqual (ulong expectedulong actual)
        {
            Assert.That (actualIs.Not.EqualTo (expected), nullnull);
        }

        public static void AreNotEqual (float expectedfloat actualstring message)
        {
            Assert.That (actualIs.Not.EqualTo (expected), messagenull);
        }

        public static void AreNotEqual (float expectedfloat actual)
        {
            Assert.That (actualIs.Not.EqualTo (expected), nullnull);
        }

        public static void AreNotEqual (decimal expecteddecimal actual)
        {
            Assert.That (actualIs.Not.EqualTo (expected), nullnull);
        }

        public static void AreNotEqual (float expectedfloat actualstring messageparams object[] args)
        {
            Assert.That (actualIs.Not.EqualTo (expected), messageargs);
        }

        public static void AreNotEqual (decimal expecteddecimal actualstring message)
        {
            Assert.That (actualIs.Not.EqualTo (expected), messagenull);
        }

        public static void AreNotEqual (decimal expecteddecimal actualstring messageparams object[] args)
        {
            Assert.That (actualIs.Not.EqualTo (expected), messageargs);
        }

        public static void AreNotEqual (double expecteddouble actualstring messageparams object[] args)
        {
            Assert.That (actualIs.Not.EqualTo (expected), messageargs);
        }

        public static void AreNotEqual (double expecteddouble actualstring message)
        {
            Assert.That (actualIs.Not.EqualTo (expected), messagenull);
        }

        public static void AreNotEqual (object expectedobject actual)
        {
            Assert.That (actualIs.Not.EqualTo (expected), nullnull);
        }

        public static void AreNotEqual (int expectedint actualstring messageparams object[] args)
        {
            Assert.That (actualIs.Not.EqualTo (expected), messageargs);
        }

        public static void AreNotEqual (int expectedint actualstring message)
        {
            Assert.That (actualIs.Not.EqualTo (expected), messagenull);
        }

        public static void AreNotEqual (object expectedobject actualstring message)
        {
            Assert.That (actualIs.Not.EqualTo (expected), messagenull);
        }

        public static void AreNotEqual (int expectedint actual)
        {
            Assert.That (actualIs.Not.EqualTo (expected), nullnull);
        }

        public static void AreNotEqual (double expecteddouble actual)
        {
            Assert.That (actualIs.Not.EqualTo (expected), nullnull);
        }

        public static void AreNotEqual (object expectedobject actualstring messageparams object[] args)
        {
            Assert.That (actualIs.Not.EqualTo (expected), messageargs);
        }

        public static void AreNotSame (object expectedobject actualstring message)
        {
            Assert.That (actualIs.Not.SameAs (expected), messagenull);
        }

        public static void AreNotSame (object expectedobject actual)
        {
            Assert.That (actualIs.Not.SameAs (expected), nullnull);
        }

        public static void AreNotSame (object expectedobject actualstring messageparams object[] args)
        {
            Assert.That (actualIs.Not.SameAs (expected), messageargs);
        }

        public static void AreSame (object expectedobject actualstring message)
        {
            Assert.That (actualIs.SameAs (expected), messagenull);
        }

        public static void AreSame (object expectedobject actual)
        {
            Assert.That (actualIs.SameAs (expected), nullnull);
        }

        public static void AreSame (object expectedobject actualstring messageparams object[] args)
        {
            Assert.That (actualIs.SameAs (expected), messageargs);
        }

        protected static void AssertDoublesAreEqual (double expecteddouble actualdouble deltastring messageobject[] args)
        {
            if (double.IsNaN (expected) || double.IsInfinity (expected))
            {
                Assert.That (actualIs.EqualTo (expected), messageargs);
                return;
            }
            Assert.That (actualIs.EqualTo (expected).Within (delta), messageargs);
        }

        public static void ByVal (object actualIResolveConstraint expressionstring messageparams object[] args)
        {
            Assert.That (actualexpressionmessageargs);
        }

        public static void ByVal (object actualIResolveConstraint expressionstring message)
        {
            Assert.That (actualexpressionmessagenull);
        }

        public static void ByVal (object actualIResolveConstraint expression)
        {
            Assert.That (actualexpressionnullnull);
        }

        public static Exception Catch (Type expectedExceptionTypeTestDelegate codestring messageparams object[] args)
        {
            return Assert.Throws (new InstanceOfTypeConstraint (expectedExceptionType), codemessageargs);
        }

        public static Exception Catch (Type expectedExceptionTypeTestDelegate codestring message)
        {
            return Assert.Throws (new InstanceOfTypeConstraint (expectedExceptionType), codemessage);
        }

        public static Exception Catch (Type expectedExceptionTypeTestDelegate code)
        {
            return Assert.Throws (new InstanceOfTypeConstraint (expectedExceptionType), code);
        }

        public static Exception Catch (TestDelegate codestring messageparams object[] args)
        {
            return Assert.Throws (new InstanceOfTypeConstraint (typeof(Exception)), codemessageargs);
        }

        public static Exception Catch (TestDelegate codestring message)
        {
            return Assert.Throws (new InstanceOfTypeConstraint (typeof(Exception)), codemessage);
        }

        public static Exception Catch (TestDelegate code)
        {
            return Assert.Throws (new InstanceOfTypeConstraint (typeof(Exception)), code);
        }

        public static T Catch<T> (TestDelegate codewhere T : Exception
        {
            return (T)((object)Assert.Throws (new InstanceOfTypeConstraint (typeof(T)), code));
        }

        public static T Catch<T> (TestDelegate codestring messagewhere T : Exception
        {
            return (T)((object)Assert.Throws (new InstanceOfTypeConstraint (typeof(T)), codemessage));
        }

        public static T Catch<T> (TestDelegate codestring messageparams object[] argswhere T : Exception
        {
            return (T)((object)Assert.Throws (new InstanceOfTypeConstraint (typeof(T)), codemessageargs));
        }

        public static void Contains (object expectedICollection actualstring messageparams object[] args)
        {
            Assert.That (actualnew CollectionContainsConstraint (expected), messageargs);
        }

        public static void Contains (object expectedICollection actualstring message)
        {
            Assert.That (actualnew CollectionContainsConstraint (expected), messagenull);
        }

        public static void Contains (object expectedICollection actual)
        {
            Assert.That (actualnew CollectionContainsConstraint (expected), nullnull);
        }

        public static void DoesNotThrow (TestDelegate codestring messageparams object[] args)
        {
            Assert.That (codenew ThrowsNothingConstraint (), messageargs);
        }

        public static void DoesNotThrow (TestDelegate codestring message)
        {
            Assert.That (codenew ThrowsNothingConstraint (), messagenull);
        }

        public static void DoesNotThrow (TestDelegate code)
        {
            Assert.That (codenew ThrowsNothingConstraint (), string.Emptynull);
        }

        [EditorBrowsable (EditorBrowsableState.Never)]
        public static bool Equals (object aobject b)
        {
            throw new AssertionException ("Assert.Equals should not be used for Assertions");
        }

        public static void Fail (string messageparams object[] args)
        {
            if (message == null)
            {
                message = string.Empty;
            }
            else
            {
                if (args != null && args.Length > 0)
                {
                    message = string.Format (messageargs);
                }
            }
            throw new AssertionException (message);
        }

        public static void Fail (string message)
        {
            Assert.Fail (messagenull);
        }

        public static void Fail ()
        {
            Assert.Fail (string.Emptynull);
        }

        public static void False (bool conditionstring messageparams object[] args)
        {
            Assert.That (conditionIs.Falsemessageargs);
        }

        public static void False (bool conditionstring message)
        {
            Assert.That (conditionIs.Falsemessagenull);
        }

        public static void False (bool condition)
        {
            Assert.That (conditionIs.Falsenullnull);
        }

        public static void Greater (double arg1double arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.GreaterThan (arg2), messageargs);
        }

        public static void Greater (double arg1double arg2string message)
        {
            Assert.That (arg1Is.GreaterThan (arg2), messagenull);
        }

        public static void Greater (double arg1double arg2)
        {
            Assert.That (arg1Is.GreaterThan (arg2), nullnull);
        }

        public static void Greater (int arg1int arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.GreaterThan (arg2), messageargs);
        }

        public static void Greater (decimal arg1decimal arg2string message)
        {
            Assert.That (arg1Is.GreaterThan (arg2), messagenull);
        }

        public static void Greater (decimal arg1decimal arg2)
        {
            Assert.That (arg1Is.GreaterThan (arg2), nullnull);
        }

        public static void Greater (IComparable arg1IComparable arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.GreaterThan (arg2), messageargs);
        }

        public static void Greater (IComparable arg1IComparable arg2string message)
        {
            Assert.That (arg1Is.GreaterThan (arg2), messagenull);
        }

        public static void Greater (IComparable arg1IComparable arg2)
        {
            Assert.That (arg1Is.GreaterThan (arg2), nullnull);
        }

        public static void Greater (float arg1float arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.GreaterThan (arg2), messageargs);
        }

        public static void Greater (float arg1float arg2string message)
        {
            Assert.That (arg1Is.GreaterThan (arg2), messagenull);
        }

        public static void Greater (float arg1float arg2)
        {
            Assert.That (arg1Is.GreaterThan (arg2), nullnull);
        }

        [CLSCompliant (false)]
        public static void Greater (ulong arg1ulong arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.GreaterThan (arg2), messageargs);
        }

        public static void Greater (long arg1long arg2)
        {
            Assert.That (arg1Is.GreaterThan (arg2), nullnull);
        }

        public static void Greater (long arg1long arg2string message)
        {
            Assert.That (arg1Is.GreaterThan (arg2), messagenull);
        }

        public static void Greater (decimal arg1decimal arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.GreaterThan (arg2), messageargs);
        }

        [CLSCompliant (false)]
        public static void Greater (ulong arg1ulong arg2)
        {
            Assert.That (arg1Is.GreaterThan (arg2), nullnull);
        }

        [CLSCompliant (false)]
        public static void Greater (ulong arg1ulong arg2string message)
        {
            Assert.That (arg1Is.GreaterThan (arg2), messagenull);
        }

        [CLSCompliant (false)]
        public static void Greater (uint arg1uint arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.GreaterThan (arg2), messageargs);
        }

        public static void Greater (int arg1int arg2)
        {
            Assert.That (arg1Is.GreaterThan (arg2), nullnull);
        }

        public static void Greater (int arg1int arg2string message)
        {
            Assert.That (arg1Is.GreaterThan (arg2), messagenull);
        }

        public static void Greater (long arg1long arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.GreaterThan (arg2), messageargs);
        }

        [CLSCompliant (false)]
        public static void Greater (uint arg1uint arg2)
        {
            Assert.That (arg1Is.GreaterThan (arg2), nullnull);
        }

        [CLSCompliant (false)]
        public static void Greater (uint arg1uint arg2string message)
        {
            Assert.That (arg1Is.GreaterThan (arg2), messagenull);
        }

        public static void GreaterOrEqual (double arg1double arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), messageargs);
        }

        public static void GreaterOrEqual (double arg1double arg2string message)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), messagenull);
        }

        public static void GreaterOrEqual (double arg1double arg2)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), nullnull);
        }

        public static void GreaterOrEqual (decimal arg1decimal arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), messageargs);
        }

        public static void GreaterOrEqual (decimal arg1decimal arg2string message)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), messagenull);
        }

        public static void GreaterOrEqual (decimal arg1decimal arg2)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), nullnull);
        }

        public static void GreaterOrEqual (IComparable arg1IComparable arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), messageargs);
        }

        public static void GreaterOrEqual (IComparable arg1IComparable arg2string message)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), messagenull);
        }

        public static void GreaterOrEqual (IComparable arg1IComparable arg2)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), nullnull);
        }

        public static void GreaterOrEqual (float arg1float arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), messageargs);
        }

        public static void GreaterOrEqual (float arg1float arg2string message)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), messagenull);
        }

        public static void GreaterOrEqual (float arg1float arg2)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), nullnull);
        }

        [CLSCompliant (false)]
        public static void GreaterOrEqual (uint arg1uint arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), messageargs);
        }

        [CLSCompliant (false)]
        public static void GreaterOrEqual (uint arg1uint arg2string message)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), messagenull);
        }

        [CLSCompliant (false)]
        public static void GreaterOrEqual (uint arg1uint arg2)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), nullnull);
        }

        public static void GreaterOrEqual (int arg1int arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), messageargs);
        }

        public static void GreaterOrEqual (int arg1int arg2string message)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), messagenull);
        }

        public static void GreaterOrEqual (int arg1int arg2)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), nullnull);
        }

        [CLSCompliant (false)]
        public static void GreaterOrEqual (ulong arg1ulong arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), messageargs);
        }

        [CLSCompliant (false)]
        public static void GreaterOrEqual (ulong arg1ulong arg2string message)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), messagenull);
        }

        [CLSCompliant (false)]
        public static void GreaterOrEqual (ulong arg1ulong arg2)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), nullnull);
        }

        public static void GreaterOrEqual (long arg1long arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), messageargs);
        }

        public static void GreaterOrEqual (long arg1long arg2string message)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), messagenull);
        }

        public static void GreaterOrEqual (long arg1long arg2)
        {
            Assert.That (arg1Is.GreaterThanOrEqualTo (arg2), nullnull);
        }

        public static void Ignore (string message)
        {
            Assert.Ignore (messagenull);
        }

        public static void Ignore ()
        {
            Assert.Ignore (string.Emptynull);
        }

        public static void Ignore (string messageparams object[] args)
        {
            if (message == null)
            {
                message = string.Empty;
            }
            else
            {
                if (args != null && args.Length > 0)
                {
                    message = string.Format (messageargs);
                }
            }
            throw new IgnoreException (message);
        }

        public static void Inconclusive (string message)
        {
            Assert.Inconclusive (messagenull);
        }

        public static void Inconclusive ()
        {
            Assert.Inconclusive (string.Emptynull);
        }

        public static void Inconclusive (string messageparams object[] args)
        {
            if (message == null)
            {
                message = string.Empty;
            }
            else
            {
                if (args != null && args.Length > 0)
                {
                    message = string.Format (messageargs);
                }
            }
            throw new InconclusiveException (message);
        }

        public static void IsAssignableFrom<T> (object actualstring messageparams object[] args)
        {
            Assert.That (actualIs.AssignableFrom (typeof(T)), messageargs);
        }

        public static void IsAssignableFrom<T> (object actualstring message)
        {
            Assert.That (actualIs.AssignableFrom (typeof(T)), messagenull);
        }

        public static void IsAssignableFrom<T> (object actual)
        {
            Assert.That (actualIs.AssignableFrom (typeof(T)), nullnull);
        }

        public static void IsAssignableFrom (Type expectedobject actualstring messageparams object[] args)
        {
            Assert.That (actualIs.AssignableFrom (expected), messageargs);
        }

        public static void IsAssignableFrom (Type expectedobject actualstring message)
        {
            Assert.That (actualIs.AssignableFrom (expected), messagenull);
        }

        public static void IsAssignableFrom (Type expectedobject actual)
        {
            Assert.That (actualIs.AssignableFrom (expected), nullnull);
        }

        public static void IsEmpty (string aString)
        {
            Assert.That (aStringnew EmptyStringConstraint (), nullnull);
        }

        public static void IsEmpty (string aStringstring message)
        {
            Assert.That (aStringnew EmptyStringConstraint (), messagenull);
        }

        public static void IsEmpty (string aStringstring messageparams object[] args)
        {
            Assert.That (aStringnew EmptyStringConstraint (), messageargs);
        }

        public static void IsEmpty (IEnumerable collection)
        {
            Assert.That (collectionnew EmptyCollectionConstraint (), nullnull);
        }

        public static void IsEmpty (IEnumerable collectionstring message)
        {
            Assert.That (collectionnew EmptyCollectionConstraint (), messagenull);
        }

        public static void IsEmpty (IEnumerable collectionstring messageparams object[] args)
        {
            Assert.That (collectionnew EmptyCollectionConstraint (), messageargs);
        }

        public static void IsFalse (bool condition)
        {
            Assert.That (conditionIs.Falsenullnull);
        }

        public static void IsFalse (bool conditionstring message)
        {
            Assert.That (conditionIs.Falsemessagenull);
        }

        public static void IsFalse (bool conditionstring messageparams object[] args)
        {
            Assert.That (conditionIs.Falsemessageargs);
        }

        public static void IsInstanceOf (Type expectedobject actualstring messageparams object[] args)
        {
            Assert.That (actualIs.InstanceOf (expected), messageargs);
        }

        public static void IsInstanceOf (Type expectedobject actualstring message)
        {
            Assert.That (actualIs.InstanceOf (expected), messagenull);
        }

        public static void IsInstanceOf<T> (object actualstring messageparams object[] args)
        {
            Assert.That (actualIs.InstanceOf (typeof(T)), messageargs);
        }

        public static void IsInstanceOf<T> (object actual)
        {
            Assert.That (actualIs.InstanceOf (typeof(T)), nullnull);
        }

        public static void IsInstanceOf<T> (object actualstring message)
        {
            Assert.That (actualIs.InstanceOf (typeof(T)), messagenull);
        }

        public static void IsInstanceOf (Type expectedobject actual)
        {
            Assert.That (actualIs.InstanceOf (expected), nullnull);
        }

        [Obsolete]
        public static void IsInstanceOfType (Type expectedobject actualstring message)
        {
            Assert.That (actualIs.InstanceOf (expected), messagenull);
        }

        [Obsolete]
        public static void IsInstanceOfType (Type expectedobject actual)
        {
            Assert.That (actualIs.InstanceOf (expected), nullnull);
        }

        [Obsolete]
        public static void IsInstanceOfType (Type expectedobject actualstring messageparams object[] args)
        {
            Assert.That (actualIs.InstanceOf (expected), messageargs);
        }

        public static void IsNaN (double aDouble)
        {
            Assert.That (aDoubleIs.NaNnullnull);
        }

        public static void IsNaN (double aDoublestring message)
        {
            Assert.That (aDoubleIs.NaNmessagenull);
        }

        public static void IsNaN (doubleaDoublestring messageparams object[] args)
        {
            Assert.That (aDoubleIs.NaNmessageargs);
        }

        public static void IsNaN (double aDoublestring messageparams object[] args)
        {
            Assert.That (aDoubleIs.NaNmessageargs);
        }

        public static void IsNaN (doubleaDouble)
        {
            Assert.That (aDoubleIs.NaNnullnull);
        }

        public static void IsNaN (doubleaDoublestring message)
        {
            Assert.That (aDoubleIs.NaNmessagenull);
        }

        public static void IsNotAssignableFrom (Type expectedobject actual)
        {
            Assert.That (actualIs.Not.AssignableFrom (expected), nullnull);
        }

        public static void IsNotAssignableFrom (Type expectedobject actualstring message)
        {
            Assert.That (actualIs.Not.AssignableFrom (expected), messagenull);
        }

        public static void IsNotAssignableFrom (Type expectedobject actualstring messageparams object[] args)
        {
            Assert.That (actualIs.Not.AssignableFrom (expected), messageargs);
        }

        public static void IsNotAssignableFrom<T> (object actualstring message)
        {
            Assert.That (actualIs.Not.AssignableFrom (typeof(T)), messagenull);
        }

        public static void IsNotAssignableFrom<T> (object actualstring messageparams object[] args)
        {
            Assert.That (actualIs.Not.AssignableFrom (typeof(T)), messageargs);
        }

        public static void IsNotAssignableFrom<T> (object actual)
        {
            Assert.That (actualIs.Not.AssignableFrom (typeof(T)), nullnull);
        }

        public static void IsNotEmpty (string aString)
        {
            Assert.That (aStringIs.Not.Emptynullnull);
        }

        public static void IsNotEmpty (IEnumerable collectionstring message)
        {
            Assert.That (collectionIs.Not.Emptymessagenull);
        }

        public static void IsNotEmpty (string aStringstring message)
        {
            Assert.That (aStringIs.Not.Emptymessagenull);
        }

        public static void IsNotEmpty (string aStringstring messageparams object[] args)
        {
            Assert.That (aStringIs.Not.Emptymessageargs);
        }

        public static void IsNotEmpty (IEnumerable collectionstring messageparams object[] args)
        {
            Assert.That (collectionIs.Not.Emptymessageargs);
        }

        public static void IsNotEmpty (IEnumerable collection)
        {
            Assert.That (collectionIs.Not.Emptynullnull);
        }

        public static void IsNotInstanceOf<T> (object actualstring message)
        {
            Assert.That (actualIs.Not.InstanceOf (typeof(T)), messagenull);
        }

        public static void IsNotInstanceOf<T> (object actual)
        {
            Assert.That (actualIs.Not.InstanceOf (typeof(T)), nullnull);
        }

        public static void IsNotInstanceOf<T> (object actualstring messageparams object[] args)
        {
            Assert.That (actualIs.Not.InstanceOf (typeof(T)), messageargs);
        }

        public static void IsNotInstanceOf (Type expectedobject actual)
        {
            Assert.That (actualIs.Not.InstanceOf (expected), nullnull);
        }

        public static void IsNotInstanceOf (Type expectedobject actualstring message)
        {
            Assert.That (actualIs.Not.InstanceOf (expected), messagenull);
        }

        public static void IsNotInstanceOf (Type expectedobject actualstring messageparams object[] args)
        {
            Assert.That (actualIs.Not.InstanceOf (expected), messageargs);
        }

        [Obsolete]
        public static void IsNotInstanceOfType (Type expectedobject actualstring messageparams object[] args)
        {
            Assert.That (actualIs.Not.InstanceOf (expected), messageargs);
        }

        [Obsolete]
        public static void IsNotInstanceOfType (Type expectedobject actualstring message)
        {
            Assert.That (actualIs.Not.InstanceOf (expected), messagenull);
        }

        [Obsolete]
        public static void IsNotInstanceOfType (Type expectedobject actual)
        {
            Assert.That (actualIs.Not.InstanceOf (expected), nullnull);
        }

        public static void IsNotNull (object anObjectstring messageparams object[] args)
        {
            Assert.That (anObjectIs.Not.Nullmessageargs);
        }

        public static void IsNotNull (object anObjectstring message)
        {
            Assert.That (anObjectIs.Not.Nullmessagenull);
        }

        public static void IsNotNull (object anObject)
        {
            Assert.That (anObjectIs.Not.Nullnullnull);
        }

        public static void IsNotNullOrEmpty (string aStringstring message)
        {
            Assert.That (aStringnew NotConstraint (new NullOrEmptyStringConstraint ()), messagenull);
        }

        public static void IsNotNullOrEmpty (string aString)
        {
            Assert.That (aStringnew NotConstraint (new NullOrEmptyStringConstraint ()), nullnull);
        }

        public static void IsNotNullOrEmpty (string aStringstring messageparams object[] args)
        {
            Assert.That (aStringnew NotConstraint (new NullOrEmptyStringConstraint ()), messageargs);
        }

        public static void IsNull (object anObjectstring messageparams object[] args)
        {
            Assert.That (anObjectIs.Nullmessageargs);
        }

        public static void IsNull (object anObject)
        {
            Assert.That (anObjectIs.Nullnullnull);
        }

        public static void IsNull (object anObjectstring message)
        {
            Assert.That (anObjectIs.Nullmessagenull);
        }

        public static void IsNullOrEmpty (string aStringstring message)
        {
            Assert.That (aStringnew NullOrEmptyStringConstraint (), messagenull);
        }

        public static void IsNullOrEmpty (string aString)
        {
            Assert.That (aStringnew NullOrEmptyStringConstraint (), nullnull);
        }

        public static void IsNullOrEmpty (string aStringstring messageparams object[] args)
        {
            Assert.That (aStringnew NullOrEmptyStringConstraint (), messageargs);
        }

        public static void IsTrue (bool conditionstring messageparams object[] args)
        {
            Assert.That (conditionIs.Truemessageargs);
        }

        public static void IsTrue (bool conditionstring message)
        {
            Assert.That (conditionIs.Truemessagenull);
        }

        public static void IsTrue (bool condition)
        {
            Assert.That (conditionIs.Truenullnull);
        }

        public static void Less (decimal arg1decimal arg2string message)
        {
            Assert.That (arg1Is.LessThan (arg2), messagenull);
        }

        public static void Less (decimal arg1decimal arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.LessThan (arg2), messageargs);
        }

        public static void Less (double arg1double arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.LessThan (arg2), messageargs);
        }

        public static void Less (decimal arg1decimal arg2)
        {
            Assert.That (arg1Is.LessThan (arg2), nullnull);
        }

        [CLSCompliant (false)]
        public static void Less (ulong arg1ulong arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.LessThan (arg2), messageargs);
        }

        public static void Less (long arg1long arg2)
        {
            Assert.That (arg1Is.LessThan (arg2), nullnull);
        }

        [CLSCompliant (false)]
        public static void Less (ulong arg1ulong arg2)
        {
            Assert.That (arg1Is.LessThan (arg2), nullnull);
        }

        [CLSCompliant (false)]
        public static void Less (ulong arg1ulong arg2string message)
        {
            Assert.That (arg1Is.LessThan (arg2), messagenull);
        }

        public static void Less (IComparable arg1IComparable arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.LessThan (arg2), messageargs);
        }

        public static void Less (float arg1float arg2)
        {
            Assert.That (arg1Is.LessThan (arg2), nullnull);
        }

        public static void Less (IComparable arg1IComparable arg2)
        {
            Assert.That (arg1Is.LessThan (arg2), nullnull);
        }

        public static void Less (IComparable arg1IComparable arg2string message)
        {
            Assert.That (arg1Is.LessThan (arg2), messagenull);
        }

        public static void Less (double arg1double arg2)
        {
            Assert.That (arg1Is.LessThan (arg2), nullnull);
        }

        public static void Less (double arg1double arg2string message)
        {
            Assert.That (arg1Is.LessThan (arg2), messagenull);
        }

        public static void Less (float arg1float arg2string message)
        {
            Assert.That (arg1Is.LessThan (arg2), messagenull);
        }

        public static void Less (float arg1float arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.LessThan (arg2), messageargs);
        }

        public static void Less (int arg1int arg2)
        {
            Assert.That (arg1Is.LessThan (arg2), nullnull);
        }

        [CLSCompliant (false)]
        public static void Less (uint arg1uint arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.LessThan (arg2), messageargs);
        }

        public static void Less (int arg1int arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.LessThan (arg2), messageargs);
        }

        public static void Less (int arg1int arg2string message)
        {
            Assert.That (arg1Is.LessThan (arg2), messagenull);
        }

        public static void Less (long arg1long arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.LessThan (arg2), messageargs);
        }

        public static void Less (long arg1long arg2string message)
        {
            Assert.That (arg1Is.LessThan (arg2), messagenull);
        }

        [CLSCompliant (false)]
        public static void Less (uint arg1uint arg2string message)
        {
            Assert.That (arg1Is.LessThan (arg2), messagenull);
        }

        [CLSCompliant (false)]
        public static void Less (uint arg1uint arg2)
        {
            Assert.That (arg1Is.LessThan (arg2), nullnull);
        }

        public static void LessOrEqual (long arg1long arg2)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), nullnull);
        }

        [CLSCompliant (false)]
        public static void LessOrEqual (ulong arg1ulong arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), messageargs);
        }

        [CLSCompliant (false)]
        public static void LessOrEqual (ulong arg1ulong arg2string message)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), messagenull);
        }

        public static void LessOrEqual (int arg1int arg2)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), nullnull);
        }

        public static void LessOrEqual (long arg1long arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), messageargs);
        }

        public static void LessOrEqual (long arg1long arg2string message)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), messagenull);
        }

        public static void LessOrEqual (decimal arg1decimal arg2)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), nullnull);
        }

        public static void LessOrEqual (int arg1int arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), messageargs);
        }

        public static void LessOrEqual (int arg1int arg2string message)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), messagenull);
        }

        [CLSCompliant (false)]
        public static void LessOrEqual (ulong arg1ulong arg2)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), nullnull);
        }

        public static void LessOrEqual (decimal arg1decimal arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), messageargs);
        }

        public static void LessOrEqual (decimal arg1decimal arg2string message)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), messagenull);
        }

        public static void LessOrEqual (double arg1double arg2string message)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), messagenull);
        }

        [CLSCompliant (false)]
        public static void LessOrEqual (uint arg1uint arg2)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), nullnull);
        }

        public static void LessOrEqual (IComparable arg1IComparable arg2string message)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), messagenull);
        }

        public static void LessOrEqual (IComparable arg1IComparable arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), messageargs);
        }

        [CLSCompliant (false)]
        public static void LessOrEqual (uint arg1uint arg2string message)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), messagenull);
        }

        public static void LessOrEqual (float arg1float arg2string message)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), messagenull);
        }

        public static void LessOrEqual (float arg1float arg2)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), nullnull);
        }

        public static void LessOrEqual (double arg1double arg2)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), nullnull);
        }

        public static void LessOrEqual (float arg1float arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), messageargs);
        }

        public static void LessOrEqual (double arg1double arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), messageargs);
        }

        [CLSCompliant (false)]
        public static void LessOrEqual (uint arg1uint arg2string messageparams object[] args)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), messageargs);
        }

        public static void LessOrEqual (IComparable arg1IComparable arg2)
        {
            Assert.That (arg1Is.LessThanOrEqualTo (arg2), nullnull);
        }

        public static void NotNull (object anObject)
        {
            Assert.That (anObjectIs.Not.Nullnullnull);
        }

        public static void NotNull (object anObjectstring message)
        {
            Assert.That (anObjectIs.Not.Nullmessagenull);
        }

        public static void NotNull (object anObjectstring messageparams object[] args)
        {
            Assert.That (anObjectIs.Not.Nullmessageargs);
        }

        public static void Null (object anObject)
        {
            Assert.That (anObjectIs.Nullnullnull);
        }

        public static void Null (object anObjectstring message)
        {
            Assert.That (anObjectIs.Nullmessagenull);
        }

        public static void Null (object anObjectstring messageparams object[] args)
        {
            Assert.That (anObjectIs.Nullmessageargs);
        }

        public static void Pass (string messageparams object[] args)
        {
            if (message == null)
            {
                message = string.Empty;
            }
            else
            {
                if (args != null && args.Length > 0)
                {
                    message = string.Format (messageargs);
                }
            }
            throw new SuccessException (message);
        }

        public static void Pass (string message)
        {
            Assert.Pass (messagenull);
        }

        public static void Pass ()
        {
            Assert.Pass (string.Emptynull);
        }

        public static void ReferenceEquals (object aobject b)
        {
            throw new AssertionException ("Assert.ReferenceEquals should not be used for Assertions");
        }

        public static void That (ActualValueDelegate delIResolveConstraint exprstring messageparams object[] args)
        {
            Constraint constraint = expr.Resolve ();
            Assert.IncrementAssertCount ();
            if (!constraint.Matches (del))
            {
                MessageWriter messageWriter = new TextMessageWriter (messageargs);
                constraint.WriteMessageTo (messageWriter);
                throw new AssertionException (messageWriter.ToString ());
            }
        }

        public static void That (ActualValueDelegate delIResolveConstraint exprstring message)
        {
            Assert.That (delexpr.Resolve (), messagenull);
        }

        public static void That (ActualValueDelegate delIResolveConstraint expr)
        {
            Assert.That (delexpr.Resolve (), nullnull);
        }

        public static void That<T> (ref T actualIResolveConstraint expressionstring messageparams object[] args)
        {
            Constraint constraint = expression.Resolve ();
            Assert.IncrementAssertCount ();
            if (!constraint.Matches<T> (ref actual))
            {
                MessageWriter messageWriter = new TextMessageWriter (messageargs);
                constraint.WriteMessageTo (messageWriter);
                throw new AssertionException (messageWriter.ToString ());
            }
        }

        public static void That<T> (ref T actualIResolveConstraint expressionstring message)
        {
            Assert.That<T> (ref actualexpression.Resolve (), messagenull);
        }

        public static void That<T> (ref T actualIResolveConstraint expression)
        {
            Assert.That<T> (ref actualexpression.Resolve (), nullnull);
        }

        public static void That (object actualIResolveConstraint expressionstring messageparams object[] args)
        {
            Constraint constraint = expression.Resolve ();
            Assert.IncrementAssertCount ();
            if (!constraint.Matches (actual))
            {
                MessageWriter messageWriter = new TextMessageWriter (messageargs);
                constraint.WriteMessageTo (messageWriter);
                throw new AssertionException (messageWriter.ToString ());
            }
        }

        public static void That (bool conditionstring message)
        {
            Assert.That (conditionIs.Truemessagenull);
        }

        public static void That (bool condition)
        {
            Assert.That (conditionIs.Truenullnull);
        }

        public static void That (TestDelegate codeIResolveConstraint constraint)
        {
            Assert.That (codeconstraint);
        }

        public static void That (object actualIResolveConstraint expressionstring message)
        {
            Assert.That (actualexpressionmessagenull);
        }

        public static void That (object actualIResolveConstraint expression)
        {
            Assert.That (actualexpressionnullnull);
        }

        public static void That (bool conditionstring messageparams object[] args)
        {
            Assert.That (conditionIs.Truemessageargs);
        }

        public static T Throws<T> (TestDelegate codestring messageparams object[] argswhere T : Exception
        {
            return (T)((object)Assert.Throws (typeof(T), codemessageargs));
        }

        public static Exception Throws (Type expectedExceptionTypeTestDelegate code)
        {
            return Assert.Throws (new ExceptionTypeConstraint (expectedExceptionType), codestring.Emptynull);
        }

        public static T Throws<T> (TestDelegate codewhere T : Exception
        {
            return Assert.Throws<T> (codestring.Emptynull);
        }

        public static T Throws<T> (TestDelegate codestring messagewhere T : Exception
        {
            return Assert.Throws<T> (codemessagenull);
        }

        public static Exception Throws (Type expectedExceptionTypeTestDelegate codestring message)
        {
            return Assert.Throws (new ExceptionTypeConstraint (expectedExceptionType), codemessagenull);
        }

        public static Exception Throws (IResolveConstraint expressionTestDelegate codestring message)
        {
            return Assert.Throws (expressioncodemessagenull);
        }

        public static Exception Throws (IResolveConstraint expressionTestDelegate codestring messageparams object[] args)
        {
            Exception ex = null;
            try
            {
                code ();
            }
            catch (Exception ex2)
            {
                ex = ex2;
            }
            Assert.That (exexpressionmessageargs);
            return ex;
        }

        public static Exception Throws (Type expectedExceptionTypeTestDelegate codestring messageparams object[] args)
        {
            return Assert.Throws (new ExceptionTypeConstraint (expectedExceptionType), codemessageargs);
        }

        public static Exception Throws (IResolveConstraint expressionTestDelegate code)
        {
            return Assert.Throws (expressioncodestring.Emptynull);
        }

        public static void True (bool condition)
        {
            Assert.That (conditionIs.Truenullnull);
        }

        public static void True (bool conditionstring message)
        {
            Assert.That (conditionIs.Truemessagenull);
        }

        public static void True (bool conditionstring messageparams object[] args)
        {
            Assert.That (conditionIs.Truemessageargs);
        }
    }
}














评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值