Intro-spec-tion RubyConfAU 2016

D79fc498d7a5b2ce12180890247476f0?s=47 Jon Rowe
February 11, 2016

Intro-spec-tion RubyConfAU 2016

A whirlwind tour of the internals of RSpec.

D79fc498d7a5b2ce12180890247476f0?s=128

Jon Rowe

February 11, 2016
Tweet

Transcript

  1. Intro-spec-tion @JonRowe

  2. WHAT IS RSPEC?

  3. <test-unit>

  4. <rspec>

  5. BUT WHAT *IS* RSPEC?

  6. None
  7. CORE MOCKS EXPECTATIONS

  8. CORE MOCKS EXPECTATIONS

  9. CORE MOCKS EXPECTATIONS

  10. CORE MOCKS EXPECTATIONS

  11. CORE MOCKS EXPECTATIONS

  12. CORE

  13. CORE SHOULDA

  14. None
  15. EXPECTATIONS TestUnit

  16. None
  17. EXPECTATIONS TestUnit MOCKS

  18. ETC ETC ETC…

  19. None
  20. BUT WHAT *IS* RSPEC?

  21. ANATOMY OF A SPEC

  22. <rspec>

  23. <core only>

  24. <core only> Example Group

  25. <core only> Instance Methods

  26. <core only> Hooks

  27. <core only> Example

  28. None
  29. None
  30. RSPEC CORE

  31. THE WORLD

  32. CONFIGURATION

  33. THE REPORTER

  34. THE RUNNER

  35. WAIT… EXAMPLE GROUPS…

  36. Runner ExampleGroup Example #<ExampleGroup> before(:suite) before(:group) before(:each)

  37. <rabbit hole>

  38. Runner ExampleGroup Example #<ExampleGroup> after(:suite) after(:group) after(:each)

  39. <blue pill>

  40. <heirarchy>

  41. BUT WHY

  42. JUST RUBY

  43. <include>

  44. <include>

  45. <include>

  46. RSPEC EXPECTATIONS

  47. <core only>

  48. <rspec>

  49. <target>

  50. <matcher>

  51. <protocol>

  52. <DSL>

  53. <class>

  54. <class>

  55. RSPEC MOCKS

  56. <mocks>

  57. <mocks>

  58. <mocks>

  59. SO HOW DOES IT WORK?

  60. <protocol>

  61. RSPEC RAILS

  62. None
  63. None
  64. None
  65. after(:talk)

  66. Thanks @JonRowe