Spiegel von
https://github.com/paviliondev/discourse-custom-wizard.git
synchronisiert 2024-11-22 09:20:29 +01:00
Ensure each wizard has the right user
Dieser Commit ist enthalten in:
Ursprung
5eca78f172
Commit
ef1a8d1457
2 geänderte Dateien mit 13 neuen und 12 gelöschten Zeilen
|
@ -134,8 +134,9 @@ class CustomWizard::Submission
|
||||||
submission_user = list_user || User.find_by(id: record.key.to_i)
|
submission_user = list_user || User.find_by(id: record.key.to_i)
|
||||||
|
|
||||||
submission_data.each do |data|
|
submission_data.each do |data|
|
||||||
wizard.user = submission_user if submission_user.present?
|
_wizard = wizard.clone
|
||||||
result.submissions.push(new(wizard, data))
|
_wizard.user = submission_user if submission_user.present?
|
||||||
|
result.submissions.push(new(_wizard, data))
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -14,11 +14,12 @@ describe CustomWizard::SubmissionSerializer do
|
||||||
|
|
||||||
before do
|
before do
|
||||||
CustomWizard::Template.save(template_json, skip_jobs: true)
|
CustomWizard::Template.save(template_json, skip_jobs: true)
|
||||||
|
|
||||||
wizard = CustomWizard::Wizard.create(template_json["id"], user1)
|
wizard = CustomWizard::Wizard.create(template_json["id"], user1)
|
||||||
CustomWizard::Submission.new(wizard,
|
CustomWizard::Submission.new(wizard, step_1_field_1: "I am user1 submission", submitted_at: Time.now.iso8601).save
|
||||||
step_1_field_1: "I am user submission",
|
|
||||||
submitted_at: Time.now.iso8601
|
wizard = CustomWizard::Wizard.create(template_json["id"], user2)
|
||||||
).save
|
CustomWizard::Submission.new(wizard, step_1_field_1: "I am user2 submission", submitted_at: Time.now.iso8601).save
|
||||||
end
|
end
|
||||||
|
|
||||||
it 'should return submission attributes' do
|
it 'should return submission attributes' do
|
||||||
|
@ -30,12 +31,11 @@ describe CustomWizard::SubmissionSerializer do
|
||||||
each_serializer: described_class
|
each_serializer: described_class
|
||||||
).as_json
|
).as_json
|
||||||
|
|
||||||
expect(json_array.length).to eq(1)
|
expect(json_array.length).to eq(2)
|
||||||
expect(json_array[0][:id].present?).to eq(true)
|
expect(json_array[0][:id].present?).to eq(true)
|
||||||
expect(json_array[0][:user]).to eq(
|
|
||||||
BasicUserSerializer.new(user1, root: false).as_json
|
|
||||||
)
|
|
||||||
expect(json_array[0][:submitted_at].present?).to eq(true)
|
expect(json_array[0][:submitted_at].present?).to eq(true)
|
||||||
|
expect(json_array[0][:user]).to eq(BasicUserSerializer.new(user2, root: false).as_json)
|
||||||
|
expect(json_array[1][:user]).to eq(BasicUserSerializer.new(user1, root: false).as_json)
|
||||||
end
|
end
|
||||||
|
|
||||||
it "should return field values, types and labels" do
|
it "should return field values, types and labels" do
|
||||||
|
@ -47,10 +47,10 @@ describe CustomWizard::SubmissionSerializer do
|
||||||
each_serializer: described_class
|
each_serializer: described_class
|
||||||
).as_json
|
).as_json
|
||||||
|
|
||||||
expect(json_array.length).to eq(1)
|
expect(json_array.length).to eq(2)
|
||||||
expect(json_array[0][:fields].as_json).to eq({
|
expect(json_array[0][:fields].as_json).to eq({
|
||||||
"step_1_field_1": {
|
"step_1_field_1": {
|
||||||
"value": "I am user submission",
|
"value": "I am user2 submission",
|
||||||
"type": "text",
|
"type": "text",
|
||||||
"label": "Text"
|
"label": "Text"
|
||||||
}
|
}
|
||||||
|
|
Laden …
In neuem Issue referenzieren