FEATURE: increasing name length in automation (#28945)

Updates from 30 to 100 the maximum length of the name of an automation.

Adds tests for validating the maximum length of the name of an automation.
This commit is contained in:
Gabriel Grubba 2024-09-17 13:16:44 -03:00 committed by GitHub
parent 140d9aadfe
commit e926a07c83
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 16 additions and 1 deletions

View File

@ -31,7 +31,7 @@ module DiscourseAutomation
end end
MIN_NAME_LENGTH = 5 MIN_NAME_LENGTH = 5
MAX_NAME_LENGTH = 30 MAX_NAME_LENGTH = 100
validates :name, length: { in: MIN_NAME_LENGTH..MAX_NAME_LENGTH } validates :name, length: { in: MIN_NAME_LENGTH..MAX_NAME_LENGTH }
def add_id_to_custom_field(target, custom_field_key) def add_id_to_custom_field(target, custom_field_key)

View File

@ -180,4 +180,19 @@ describe DiscourseAutomation::Automation do
expect(user.custom_fields).to eq({ automation2.new_user_custom_field_name => "1" }) expect(user.custom_fields).to eq({ automation2.new_user_custom_field_name => "1" })
end end
end end
context "when creating a new automation" do
it "validates the name length" do
automation = Fabricate.build(:automation, name: "a" * 101)
expect(automation).not_to be_valid
expect(automation.errors[:name]).to eq(["is too long (maximum is 100 characters)"])
automation = Fabricate.build(:automation, name: "b" * 4)
expect(automation).not_to be_valid
expect(automation.errors[:name]).to eq(["is too short (minimum is 5 characters)"])
automation = Fabricate.build(:automation, name: "c" * 50)
expect(automation).to be_valid
end
end
end end