Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Why I use Guard

Why I use Guard

Lightning Talk given at Melbourne Ruby Meetup on 25 July, 2016

Keith Pitty

May 26, 2016
Tweet

More Decks by Keith Pitty

Other Decks in Programming

Transcript

  1. WHY I USE GUARD
    KEITH PITTY

    View Slide

  2. View Slide

  3. WHY?

    View Slide

  4. View Slide

  5. FAST AUTOMATIC
    FEEDBACK

    View Slide

  6. FIN!

    View Slide

  7. View Slide

  8. View Slide

  9. OH, OK …

    View Slide

  10. View Slide

  11. HOW?

    View Slide

  12. guard-rspec

    View Slide

  13. REMEMBER
    AUTOTEST?

    View Slide

  14. GuardFile

    View Slide

  15. guard :rspec, cmd: 'zeus rspec' do
    watch('spec/spec_helper.rb') { "spec" }
    watch(%r{^spec/.+_spec\.rb$})
    watch(%r{^app/(.+)\.rb$}) { |m| "spec/
    #{m[1]_spec.rb" }
    # etc.
    end

    View Slide

  16. guard :rspec, cmd: 'zeus rspec'

    View Slide

  17. View Slide

  18. View Slide

  19. View Slide

  20. < 1 SECOND

    View Slide

  21. View Slide

  22. GuardFile

    View Slide

  23. CURATION

    View Slide

  24. watch('app/views/feeds/facebook/_encoded_content.erb') {
    "spec/controllers/feeds/facebook_controller_spec.rb" }

    View Slide

  25. WHEN A FILE
    CHANGES …

    View Slide

  26. AFFECTED TESTS
    RUN AUTOMATICALLY

    View Slide

  27. View Slide

  28. FOCUS

    View Slide

  29. SPECIFIC TEST

    View Slide

  30. it "does what it should" do, focus: true
    # expect something
    end

    View Slide

  31. View Slide

  32. FIRST 10 FAILED
    SPECS

    View Slide

  33. guard :rspec, cmd: 'zeus rspec', failed_mode: :focus do
    # etc.
    end

    View Slide

  34. guard-rspec

    View Slide

  35. FAST AUTOMATIC
    FEEDBACK

    View Slide

  36. View Slide

  37. ALSO …

    View Slide

  38. guard-teaspoon

    View Slide

  39. guard-livereload

    View Slide

  40. guard-bundler

    View Slide

  41. guard-ctags-bundler

    View Slide

  42. AUTOMATION

    View Slide

  43. View Slide

  44. NEXT?

    View Slide

  45. View Slide

  46. guard-rubocop

    View Slide

  47. WHY DO I USE
    GUARD?

    View Slide

  48. FAST AUTOMATIC
    FEEDBACK

    View Slide

  49. UNDERSTAND
    NOW?

    View Slide

  50. View Slide

  51. View Slide

  52. THANK YOU!

    View Slide

  53. @keithpitty

    View Slide