Với một mô hình ActiveRecord điển hình, tôi thường có các cuộc gọi lại before_save
phân tích cú pháp đầu vào, ví dụ như lấy số time_string
từ người dùng và phân tích cú pháp vào trường time
.Rails: làm thế nào để kiểm tra before_save callbacks
Đó cài đặt có thể trông như thế này:
before_save :parse_time
attr_writer :time_string
private
def parse_time
time = Chronic.parse(time_string) if time_string
end
Tôi hiểu rằng nó được coi là thực hành tốt nhất để làm cho các phương thức callback tin. Tuy nhiên, nếu chúng là riêng tư, thì bạn không thể gọi riêng chúng để kiểm tra chúng một cách riêng biệt.
Vì vậy, đối với những người thử nghiệm Rails dày dạn kinh nghiệm, bạn xử lý thử nghiệm loại điều này như thế nào?
Bạn sử dụng biến 'time' đó ở đâu? là một thuộc tính của đối tượng của bạn? –
Ví dụ trên là loại chế tạo, nhưng có, biến thời gian là một thuộc tính đối tượng. – Andrew