RSpec: คาดว่าจะมีการเปลี่ยนแปลงหลายรายการ
ฉันต้องการตรวจสอบการเปลี่ยนแปลงหลายอย่างในโมเดลเมื่อส่งแบบฟอร์มในคุณสมบัติจำเพาะ ตัวอย่างเช่นฉันต้องการตรวจสอบให้แน่ใจว่าชื่อผู้ใช้เปลี่ยนจาก X เป็น Y และรหัสผ่านที่เข้ารหัสถูกเปลี่ยนด้วยค่าใด ๆ ฉันรู้ว่ามีคำถามบางอย่างเกี่ยวกับเรื่องนี้แล้ว แต่ฉันไม่พบคำตอบที่เหมาะสมสำหรับฉัน คำตอบที่ถูกต้องที่สุดดูเหมือนผู้ChangeMultipleจับคู่โดย Michael Johnston ที่นี่: เป็นไปได้หรือไม่ที่ RSpec จะคาดหวังการเปลี่ยนแปลงในสองตาราง? . ข้อเสียคือตรวจสอบการเปลี่ยนแปลงอย่างชัดเจนจากค่าที่ทราบเป็นค่าที่ทราบเท่านั้น ฉันสร้างรหัสหลอกว่าฉันคิดว่าตัวจับคู่ที่ดีกว่าจะมีลักษณะอย่างไร: expect { click_button 'Save' }.to change_multiple { @user.reload }.with_expectations( name: {from: 'donald', to: 'gustav'}, updated_at: {by: 4}, great_field: {by_at_leaset: 23}, encrypted_password: true, # Must change created_at: false, # Must not change …