PageRenderTime 43ms CodeModel.GetById 14ms RepoModel.GetById 0ms app.codeStats 0ms

/trunk/QuailProject/Quail/Logging/FluentInterfaces.cs

#
C# | 136 lines | 112 code | 24 blank | 0 comment | 0 complexity | f48ee0b6a18428fda39210eed0e9d5af MD5 | raw file
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. namespace Quail
  6. {
  7. public interface IFluentAssertion : IAssertActual, IAssertLevel, IAssertPreExpression, IAssertExpression, IAssertExpected, IAssertExecute, IUnitTestingFluentAssertions
  8. {
  9. }
  10. public interface IAssertActual : IAssertActualNonNumeric, IAssertActualNumeric, IAssertActualString
  11. {
  12. IAssertLevel This<T>(T myObj);
  13. }
  14. public interface IAssertActualNonNumeric
  15. {
  16. }
  17. public interface IAssertActualString
  18. {
  19. IAssertLevel ThisString(String myString);
  20. }
  21. public interface IAssertActualNumeric
  22. {
  23. IAssertLevel ThisInteger(Int32 myNumber);
  24. IAssertLevel ThisDecimal(Decimal myNumber);
  25. IAssertLevel ThisNumber(object myNumber);
  26. }
  27. public interface IAssertActualCollectoin
  28. {
  29. IAssertLevel ThisList<T>(List<T> list);
  30. }
  31. public interface IAssertLevel
  32. {
  33. IAssertPreExpression Must();
  34. IAssertPreExpression Should();
  35. IAssertPreExpression Might();
  36. IAssertExpression MustBe();
  37. IAssertExpression ShouldBe();
  38. IAssertExpression MightBe();
  39. }
  40. public interface IAssertPreExpression
  41. {
  42. IAssertExpression Be();
  43. IAssertExpression NotBe();
  44. }
  45. public interface IAssertExpression : IAssertExpressionNonNumeric, IAssertExpressionNumeric, IAssertExpressionString
  46. {
  47. IAssertExecute Null();
  48. IAssertExecute EqualTo<T>(T expectedObject);
  49. }
  50. public interface IAssertExpressionNonNumeric
  51. {
  52. }
  53. public interface IAssertExpressionString
  54. {
  55. IAssertExecute NullOrEmpty();
  56. IAssertExpressionString WhileIgnoringCase();
  57. IAssertExpectedString TheSameAs();
  58. IAssertExpectedString Contains();
  59. IAssertExpectedString Containing();
  60. }
  61. public interface IAssertExpressionNumeric
  62. {
  63. IAssertExpectedNumeric GreaterThan();
  64. IAssertExpectedNumeric GreaterThanOrEqualTo();
  65. IAssertExpectedNumeric LessThan();
  66. IAssertExpectedNumeric LessThanOrEqualTo();
  67. }
  68. public interface IAssertExpected : IAssertExpectedNonNumeric, IAssertExpectedNumeric, IAssertExpectedString
  69. {
  70. }
  71. public interface IAssertExpectedString
  72. {
  73. IAssertExecute ThatString(String expected);
  74. void ThatString(String expected, String assertReason);
  75. }
  76. public interface IAssertExpectedNonNumeric
  77. {
  78. IAssertExecute That<T>(T expected);
  79. IAssertExecute That(object expected);
  80. void That<T>(T expected, String assertReason);
  81. void That(object expected, String assertReason);
  82. }
  83. public interface IAssertExpectedNumeric
  84. {
  85. IAssertExecute ThatInteger(Int32 expected);
  86. IAssertExecute ThatDecimal(Decimal expected);
  87. IAssertExecute ThatNumber(object expected);
  88. void ThatInteger(Int32 expected, String assertReason);
  89. void ThatDecimal(Decimal expected, String assertReason);
  90. void ThatNumber(object expected, String assertReason);
  91. }
  92. public interface IAssertExpectedCollection
  93. {
  94. IAssertExecute ThatList<T>(List<T> expected);
  95. IAssertExecute ThatItem<T>(T item);
  96. }
  97. public interface IAssertExecute
  98. {
  99. IAssertActual Or();
  100. IAssertActual And();
  101. IAssertExecute ForTask(Task task);
  102. void Because(String assertReason);
  103. #if DEBUG
  104. #endif
  105. }
  106. public interface IUnitTestingFluentAssertions
  107. {
  108. FluentAssertion Get();
  109. Boolean GetResult();
  110. void SkipQUailLog();
  111. }
  112. }