Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk menguji Bendera Baris Perintah Tersuai dalam Go?
Unit Menguji Bendera Baris Perintah dalam Go
Menguatkuasakan bahawa bendera baris perintah mematuhi parameter yang ditentukan adalah penting untuk mengekalkan integriti aplikasi. Dalam Go, pakej bendera menawarkan ciri teguh untuk mentakrif dan menghuraikan bendera, termasuk keupayaan untuk menguji unit kesahihannya.
Ujian Bendera Tersuai dengan bendera.Var
Mencipta jenis bendera tersuai membenarkan kriteria pengesahan tertentu. Fungsi flag.Var memudahkan ini dengan menerima jenis antara muka Nilai yang mentakrifkan cara data bendera diwakili dan disahkan. Antara muka ini mewajibkan kaedah String() dan Set().
Menguatkuasakan Nilai Enum
Dalam contoh yang disediakan, ujian yang diingini memastikan bahawa bendera -format menerima hanya pratakrif nilai enumerasi. Untuk mencapai matlamat ini, jenis formatType boleh ditakrifkan dan dilaksanakan melalui antara muka Nilai.
Pelaksanaan Nilai
Kaedah String() menukar nilai bendera kepada rentetan, manakala kaedah Set() mengesahkan dan memberikan nilai input kepada bendera.
Penggunaan dalam Contoh
Dalam kod yang disediakan, jenis formatType dimulakan dengan lalai nilai "teks." Fungsi flag.Var kemudiannya digunakan untuk mendaftarkan jenis tersuai ini dengan pakej bendera, yang mengendalikan penghuraian dan pengesahan.
Unit Menguji Bendera Tersuai
Pakej bendera menyediakan contoh komprehensif tentang cara menguji unit pembolehubah bendera tersuai dalam fail flag_test.gonya. Bahagian ini menunjukkan cara untuk mengejek kaedah Set dan menegaskan ketepatan bendera.
Kesimpulan
Dengan memanfaatkan fungsi flag.Var dan melaksanakan antara muka Nilai, adalah mungkin untuk menentukan jenis bendera tersuai yang menguatkuasakan kriteria pengesahan khusus, memastikan integriti input baris arahan. Ujian unit boleh mengesahkan gelagat ini dengan berkesan, mengekalkan kebolehpercayaan aplikasi Go.
Atas ialah kandungan terperinci Bagaimana untuk menguji Bendera Baris Perintah Tersuai dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!