$30 off During Our Annual Pro Sale. View Details »

Intro-spec-tion RubyConfAU 2016

Jon Rowe
February 11, 2016

Intro-spec-tion RubyConfAU 2016

A whirlwind tour of the internals of RSpec.

Jon Rowe

February 11, 2016
Tweet

More Decks by Jon Rowe

Other Decks in Technology

Transcript

  1. Intro-spec-tion
    @JonRowe

    View Slide

  2. WHAT IS RSPEC?

    View Slide


  3. View Slide


  4. View Slide

  5. BUT WHAT *IS* RSPEC?

    View Slide

  6. View Slide

  7. CORE
    MOCKS EXPECTATIONS

    View Slide

  8. CORE
    MOCKS EXPECTATIONS

    View Slide

  9. CORE
    MOCKS EXPECTATIONS

    View Slide

  10. CORE
    MOCKS EXPECTATIONS

    View Slide

  11. CORE
    MOCKS EXPECTATIONS

    View Slide

  12. CORE

    View Slide

  13. CORE SHOULDA

    View Slide

  14. View Slide

  15. EXPECTATIONS
    TestUnit

    View Slide

  16. View Slide

  17. EXPECTATIONS
    TestUnit
    MOCKS

    View Slide

  18. ETC ETC ETC…

    View Slide

  19. View Slide

  20. BUT WHAT *IS* RSPEC?

    View Slide

  21. ANATOMY OF A SPEC

    View Slide


  22. View Slide


  23. View Slide


  24. Example Group

    View Slide


  25. Instance Methods

    View Slide


  26. Hooks

    View Slide


  27. Example

    View Slide

  28. View Slide

  29. View Slide

  30. RSPEC CORE

    View Slide

  31. THE WORLD

    View Slide

  32. CONFIGURATION

    View Slide

  33. THE REPORTER

    View Slide

  34. THE RUNNER

    View Slide

  35. WAIT…
    EXAMPLE GROUPS…

    View Slide

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

    View Slide


  37. View Slide

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

    View Slide


  39. View Slide


  40. View Slide

  41. BUT WHY

    View Slide

  42. JUST RUBY

    View Slide


  43. View Slide


  44. View Slide


  45. View Slide

  46. RSPEC EXPECTATIONS

    View Slide


  47. View Slide


  48. View Slide


  49. View Slide


  50. View Slide


  51. View Slide


  52. View Slide


  53. View Slide


  54. View Slide

  55. RSPEC MOCKS

    View Slide


  56. View Slide


  57. View Slide


  58. View Slide

  59. SO HOW DOES IT WORK?

    View Slide


  60. View Slide

  61. RSPEC RAILS

    View Slide

  62. View Slide

  63. View Slide

  64. View Slide

  65. after(:talk)

    View Slide

  66. Thanks
    @JonRowe

    View Slide