Categories: None [Edit]

lookout

https://rubygems.org/gems/lookout
Lookout Lookout is a unit testing framework for Ruby¹ that puts your results in focus. Tests (expectations) are written as follows expect 2 do 1 + 1 end expect ArgumentError do Integer('1 + 1') end expect Array do [1, 2, 3].select{ |i| i % 2 == 0 } end expect [2, 4, 6] do [1, 2, 3].map{ |i| i * 2 } end Lookout is designed to encourage – force, even – unit testing best practices such as • Setting up only one expectation per test • Not setting expectations on non-public APIs • Test isolation This is done by • Only allowing one expectation to be set per test • Providing no (additional) way of accessing private state • Providing no setup and tear-down methods, nor a method of providing test helpers Other important points are • Putting the expected outcome of a test in focus with the steps of the calculation of the actual result only as a secondary concern • A focus on code readability by providing no mechanism for describing an expectation other than the code in the expectation itself • A unified syntax for setting up both state-based and behavior-based expectations The way Lookout works has been heavily influenced by expectations², by {Jay Fields}³. The code base was once also heavily based on expectations, based at Subversion {revision 76}⁴. A lot has happened since then and all of the work past that revision are due to {Nikolai Weibull}⁵. ¹ Ruby: http://ruby-lang.org/ ² Expectations: http://expectations.rubyforge.org/ ³ Jay Fields’s blog: http://blog.jayfields.com/ ⁴ Lookout revision 76: https://github.com/now/lookout/commit/537bedf3e5b3eb4b31c066b3266f42964ac35ebe ⁵ Nikolai Weibull’s home page: http://disu.se/ § Installation Install Lookout with % gem install lookout § Usage Lookout allows you to set expectations on an object’s state or behavior. We’ll begin by looking at state expectatio...

Total

Ranking: 34,433 of 189,816
Downloads: 37,325

Daily

Ranking: 76,438 of 189,791
Downloads: 1

Depended by

RankDownloadsName
23,67963,175inventory
35,13136,341inventory-rake
35,47735,879inventory-rake-tasks-yard
42,57828,188value
52,70421,086yard-heuristics
56,20219,325yard-value
62,21316,847lookout-rake
69,58514,336com
69,63614,322ame
72,82313,394u
101,9987,886lookout-rack
131,7604,780rbtags
132,6884,724value-yard

Depends on

RankDownloadsName
226207,954,941yard
23,67963,175inventory
35,13136,341inventory-rake
35,47735,879inventory-rake-tasks-yard
42,57828,188value
52,70421,086yard-heuristics
56,20219,325yard-value
62,21316,847lookout-rake

Owners

#GravatarHandle
1iconnow