Π― ΠΏΠΎΠ»ΠΎΠΆΠΈΠ» ΡΠ²ΠΎΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π² ΠΏΠ°ΠΏΠΊΡ spec/
.
ΠΠΎΠ³Π΄Π° Ρ Π·Π°ΠΏΡΡΠΊΠ°Ρ rspec spec/*
Π²ΡΠ΅ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ.
ΠΠ΄Π½Π°ΠΊΠΎ, ΠΊΠΎΠ³Π΄Π° Ρ Π·Π°ΠΏΡΡΠΊΠ°Ρ rspec spec/
(Π±Π΅Π· Π·Π²Π΅Π·Π΄ΠΎΡΠΊΠΈ), ΠΎΠ½ ΠΏΡΠΎΠΏΡΡΠΊΠ°Π΅Ρ ΠΎΠ΄ΠΈΠ½ ΡΠ°ΠΉΠ» ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ? ΠΠ°ΠΊΠΎΠ²Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΠΈΠΌΠ΅Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²? ΠΠΎΠΆΠ΅ΡΠ΅ Π»ΠΈ Π²Ρ ΡΠΎΠ±ΡΠ°ΡΡ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ?
Ρ ΠΎΡΠΎΡΠΎ, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ ΡΡΠΎ ΡΠ΅ΠΏΠΎ: https://github.com/phuongnd08/rspec-error-reports
Π ΡΡΠΎΠΌ ΡΠ΅ΠΏΠΎ ΠΏΠΎΡΠ»Π΅ ΠΏΠ°ΠΊΠ΅ΡΠ°, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΠ΅ rspec spec/*
Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΡΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ edge case
spec. ΠΡΠ»ΠΈ Π²Ρ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ rspec spec
ΠΎΠ½ Π½Π΅ Π·Π°ΠΏΡΡΡΠΈΡΡΡ.
ΠΡΡΠ°ΡΠΈ, Ρ Π½Π° Mac.
Π£Π΄Π°Π»ΠΎΡΡ Π»ΠΈ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ?
RSpec ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ ΠΎΠΆΠΈΠ΄Π°Π»ΠΎΡΡ, ΠΈ ΡΡΠΎ Π·Π°Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΎ Π² Π²Π°ΡΠ΅ΠΌ ΡΠ΅ΠΏΠΎ. RSpec ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ°Π±Π»ΠΎΠ½ Π³Π»ΠΎΠ±ΡΡΠ° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΠ°ΠΉΠ»ΠΎΠ² ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΎΠ½ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ Π² spec/**/*_spec.rb
(Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, _spec.rb
files ΠΏΠΎΠ΄ spec
). ΠΠ°Ρ ΡΠ°ΠΉΠ» matching_engine_handle_edge_cases.rb
Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΡΠΎΠΌΡ ΡΠ°Π±Π»ΠΎΠ½Ρ ΠΈ ΠΏΠΎΡΡΠΎΠΌΡ Π½Π΅ Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΡΠ°ΠΉΠ», ΡΡΠΎΠ±Ρ ΠΎΠ½ ΠΈΠΌΠ΅Π» ΡΡΡΡΠΈΠΊΡ _spec.rb
, ΠΈΠ»ΠΈ Π½Π°ΡΡΡΠΎΠΈΡΡ RSpec Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΡΠ°Π±Π»ΠΎΠ½Π°, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½Π΅ Π½ΡΠ°Π²ΠΈΡΡΡ ΡΠ°Π±Π»ΠΎΠ½ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ, ΠΏΠ»ΠΎΡ ΠΎ :)
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
RSpec ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ ΠΎΠΆΠΈΠ΄Π°Π»ΠΎΡΡ, ΠΈ ΡΡΠΎ Π·Π°Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½ΠΎ Π² Π²Π°ΡΠ΅ΠΌ ΡΠ΅ΠΏΠΎ. RSpec ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ°Π±Π»ΠΎΠ½ Π³Π»ΠΎΠ±ΡΡΠ° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΠ°ΠΉΠ»ΠΎΠ² ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΎΠ½ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ Π²
spec/**/*_spec.rb
(Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,_spec.rb
files ΠΏΠΎΠ΄spec
). ΠΠ°Ρ ΡΠ°ΠΉΠ»matching_engine_handle_edge_cases.rb
Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΡΠΎΠΌΡ ΡΠ°Π±Π»ΠΎΠ½Ρ ΠΈ ΠΏΠΎΡΡΠΎΠΌΡ Π½Π΅ Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΡΠ°ΠΉΠ», ΡΡΠΎΠ±Ρ ΠΎΠ½ ΠΈΠΌΠ΅Π» ΡΡΡΡΠΈΠΊΡ
_spec.rb
, ΠΈΠ»ΠΈ Π½Π°ΡΡΡΠΎΠΈΡΡ RSpec Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΡΠ°Π±Π»ΠΎΠ½Π°, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½Π΅ Π½ΡΠ°Π²ΠΈΡΡΡ ΡΠ°Π±Π»ΠΎΠ½ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.