From 36430d3bad4d33e7cdf124ecc7ec80b2da062484 Mon Sep 17 00:00:00 2001 From: Rob Harrington Date: Wed, 21 Jan 2015 14:40:28 +1100 Subject: [PATCH] Enterprise permalink generator handles blank permalink case --- app/models/enterprise.rb | 1 + spec/models/enterprise_spec.rb | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/app/models/enterprise.rb b/app/models/enterprise.rb index 81a00d4982..d126e489ae 100644 --- a/app/models/enterprise.rb +++ b/app/models/enterprise.rb @@ -298,6 +298,7 @@ class Enterprise < ActiveRecord::Base def self.find_available_permalink(test_permalink) test_permalink = test_permalink.parameterize + test_permalink = "my-enterprise" if test_permalink.blank? existing = Enterprise.select(:permalink).order(:permalink).where("permalink LIKE ?", "#{test_permalink}%").map(&:permalink) if existing.empty? test_permalink diff --git a/spec/models/enterprise_spec.rb b/spec/models/enterprise_spec.rb index f6b57b8cc5..f2fc256c16 100644 --- a/spec/models/enterprise_spec.rb +++ b/spec/models/enterprise_spec.rb @@ -824,6 +824,11 @@ describe Enterprise do expect(Enterprise.find_available_permalink("Some Unused Permalink")).to eq "some-unused-permalink" end + it "sets the permalink to 'my-enterprise' if parametized permalink is blank" do + expect(Enterprise.find_available_permalink("")).to eq "my-enterprise" + expect(Enterprise.find_available_permalink("$$%{$**}$%}")).to eq "my-enterprise" + end + it "finds and index value based on existing permalinks" do expect(Enterprise.find_available_permalink("permalink")).to eq "permalink2" end