Bagaimana cara mengatur konfigurasi global untuk RSpec di Ubuntu.
Khususnya, --color dan --format specdoc tetap dihidupkan, di semua proyek saya (yaitu setiap kali saya menjalankan rspec di mana saja).
Bagaimana cara mengatur konfigurasi global untuk RSpec di Ubuntu.
Khususnya, --color dan --format specdoc tetap dihidupkan, di semua proyek saya (yaitu setiap kali saya menjalankan rspec di mana saja).
Jawaban:
Seperti yang dapat Anda lihat di dokumen di sini , penggunaan yang dimaksud adalah membuat ~/.rspec
dan di dalamnya menempatkan opsi Anda, seperti --color
.
Untuk membuat ~/.rspec
file dengan cepat dengan --color
opsi, jalankan:
echo '--color' >> ~/.rspec
.rspec
atau spec_helper.rb
? @shamaoke @christoph
~/.rspec
solusi ini adalah portabilitas. Misalnya server CI kami tidak menangani keluaran warna dengan sangat baik. Dengan file konfigurasi dir pengguna, kami dapat dengan mudah mengadopsi lingkungan yang berbeda.
Satu juga dapat menggunakan spec_helper.rb
file di semua proyek. File tersebut harus mencakup yang berikut:
RSpec.configure do |config|
# Use color in STDOUT
config.color = true
# Use color not only in STDOUT but also in pagers and files
config.tty = true
# Use the specified formatter
config.formatter = :documentation # :progress, :html,
# :json, CustomFormatterClass
end
File contoh apa pun harus mengharuskan penolong untuk dapat menggunakan opsi itu.
.rspec
file.
color_enabled
sekarangcolor
Dalam spec_helper.rb
file Anda , sertakan opsi berikut:
RSpec.configure do |config|
config.color_enabled = true
end
Anda kemudian harus meminta di setiap *_spec.rb
file yang harus menggunakan opsi itu.
Jika Anda menggunakan rake untuk menjalankan tes rspec maka Anda dapat mengedit spec / spec.opts
Atau cukup tambahkan alias spec=spec --color --format specdoc
ke file ~ / .bashrc Anda seperti saya.
.rspec
, seperti ketika diperiksa dengan proyek, siapa pun yang mendapatkannya akan mendapatkan pengaturan yang sama.
.rspec
file di direktori home pengguna (seperti yang saya sebutkan dalam jawaban saya) berfungsi secara global untuk semua permintaan pengguna rspec. Itu sebenarnya lebih solid daripada menggunakan alias, karena beberapa permata / alias / alat lain yang mungkin digunakan pengguna tidak harus menggunakan alias
Satu hal yang harus diperhatikan adalah dampak dari berbagai cara menjalankan RSpec.
Saya mencoba mengaktifkan opsi dengan kode berikut di spec / spec_helper.rb -
Rspec.configure do |config|
config.tty = $stdout.tty?
end
Pada akhirnya saya menggunakan opsi ~ / .rspec, dengan hanya --tty sebagai isinya. Bekerja dengan baik untuk saya dan menjaga output server CI kami bersih.
--tty
juga diperlukan jika Anda ingin warna bahkan ketika menggunakan pager.