Commit Graph

433 Commits

Author SHA1 Message Date
Michael Miller 9970e2b125 This scenario has the Crystal compiler generate bad code
Depending on various tweaks, either a stack overflow or segfault occurs.

It seems to be caused by the compiler inferring types for methods combined with generic types and/or polymorphism.
2019-01-29 14:15:28 -07:00
Michael Miller 46a6a4e51e Remove reference to short-hand for non-block macro 2019-01-28 16:58:36 -07:00
Michael Miller 2863ae7dfe Add spec for block expectation and partial 2019-01-28 16:03:33 -07:00
Michael Miller 61200765c0 Add block expectation and partial 2019-01-28 15:56:04 -07:00
Michael Miller 69ffaa3796 Update doc 2019-01-28 15:47:01 -07:00
Michael Miller 61a3e6b113 Remove unecessary type restrictions 2019-01-28 10:04:17 -07:00
Michael Miller 592d13d0d4 Move #to and #to_not to base type
Remove some explicit type restrictions.
2019-01-28 01:09:22 -07:00
Michael Miller 14db544441 Split question matchers into other types 2019-01-26 17:12:21 -07:00
Michael Miller 651127f2d4 Add spec for empty matcher
Mark question matchers as done (for now).
More may be added later if they're common.
2019-01-26 17:09:24 -07:00
Michael Miller 5231f0fd39 Copy/paste fail 2019-01-26 17:07:21 -07:00
Michael Miller 30582f9a89 Add empty matcher to DSL 2019-01-26 17:04:46 -07:00
Michael Miller ed3f524f8d Add empty matcher 2019-01-26 17:02:42 -07:00
Michael Miller aa94ec0e33 Sub-types should be not match 2019-01-26 16:44:46 -07:00
Michael Miller 028065ad26 Add #be_nil to DSL 2019-01-26 16:42:58 -07:00
Michael Miller 3bfaa07d4f Add spec for nil matcher 2019-01-26 16:41:21 -07:00
Michael Miller 5c68e7eb52 Create parameter-less initializer 2019-01-26 16:40:51 -07:00
Michael Miller c3d7aef7a9 Add a couple of type tests 2019-01-26 16:34:58 -07:00
Michael Miller 840da3a8b7 Derive type matcher from condition matcher 2019-01-26 16:26:26 -07:00
Michael Miller 69d0856256 Add nil matcher 2019-01-26 16:24:17 -07:00
Michael Miller 90de8c312d Create abstract conditional matcher 2019-01-26 16:23:16 -07:00
Michael Miller a88c6545d9 Mark comparison matchers as complete 2019-01-25 13:53:14 -07:00
Michael Miller 12864492b7 Add spec for range modifier methods 2019-01-25 13:52:41 -07:00
Michael Miller 90c5364946 Can't use "new" by itself like in Ruby 2019-01-25 13:25:40 -07:00
Michael Miller abc321130a Add DSL for range matching 2019-01-25 13:20:38 -07:00
Michael Miller 3be2302df9 Add range modifier methods 2019-01-25 13:20:17 -07:00
Michael Miller ac08806010 Add spec for RangeMatcher 2019-01-25 13:12:34 -07:00
Michael Miller bc45a3bf41 Add basic range matcher 2019-01-25 13:00:19 -07:00
Michael Miller 154832e5c4 Add `be_an` variation of `be_a` 2019-01-25 11:21:41 -07:00
Michael Miller 6a91b3e399 Formatting 2019-01-25 11:09:11 -07:00
Michael Miller e33ce5c182 Implement remaining pending tests 2019-01-25 11:08:57 -07:00
Michael Miller 6665e4d396 Implement some pending tests 2019-01-24 22:36:05 -07:00
Michael Miller cbb4c18668 Formatting 2019-01-23 23:16:18 -07:00
Michael Miller a869d4f23f More pending tests to implement 2019-01-23 23:14:34 -07:00
Michael Miller f0a972ed06 Start on some condition tests 2019-01-23 23:01:16 -07:00
Michael Miller c31557e8ff Move everything in BeComparison to TruthyMatcher
This is to match RSpec's ability to use "be" by itself.
For instance: `expect(foo).to be`
2019-01-23 22:10:03 -07:00
Michael Miller 28c13cd175 Add `xit` to DSL 2019-01-23 21:57:16 -07:00
Michael Miller e746ede287 Add `specify` to DSL 2019-01-23 21:56:02 -07:00
Michael Miller 0c284b6713 Add other comparison matchers to DSL 2019-01-23 21:45:16 -07:00
Michael Miller 2758ba7643 Add spec for BeComparison 2019-01-23 21:36:52 -07:00
Michael Miller f09aaf59e6 Formatting 2019-01-23 21:11:01 -07:00
Michael Miller 06ee53a7b6 Add spec for GreaterThanEqualMatcher 2019-01-23 21:10:17 -07:00
Michael Miller e3d9b55ae7 Add spec for GreaterThanMatcher 2019-01-23 21:08:52 -07:00
Michael Miller 99991de2da Add spec for LessThanEqualMatcher 2019-01-23 21:05:50 -07:00
Michael Miller 06bb969061 Add spec for LessThanMatcher 2019-01-23 21:03:44 -07:00
Michael Miller d86b9dad11 Add spec for InequalityMatcher 2019-01-23 21:02:44 -07:00
Michael Miller 73c4334246 Use macros to create methods for all watched operators 2019-01-23 21:02:32 -07:00
Michael Miller d02e5d33b4 Add inequality matcher 2019-01-23 20:39:52 -07:00
Michael Miller 93801553b6 Implement equality method for BeComparison 2019-01-23 20:38:23 -07:00
Michael Miller 9ccba7570e Add greater-than-equal-to matcher 2019-01-23 20:37:33 -07:00
Michael Miller ea6d7eac2a Add greater-than matcher 2019-01-23 20:34:53 -07:00