From 430436ce8d5378913280c79e097faf12b3624305 Mon Sep 17 00:00:00 2001 From: rick Date: Mon, 13 Sep 2010 15:48:54 -0700 Subject: [PATCH] handle non strings passed to Page.cname --- lib/gollum/page.rb | 4 +++- test/test_page.rb | 5 +++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/gollum/page.rb b/lib/gollum/page.rb index 3f1ce55f..4ef8d1bc 100644 --- a/lib/gollum/page.rb +++ b/lib/gollum/page.rb @@ -202,7 +202,9 @@ module Gollum # # Returns the String canonical name. def self.cname(name) - name.gsub(%r{[ /<>]}, '-') + name.respond_to?(:gsub) ? + name.gsub(%r{[ /<>]}, '-') : + '' end # Convert a format Symbol into an extension String. diff --git a/test/test_page.rb b/test/test_page.rb index 0df52ecf..1316c713 100644 --- a/test/test_page.rb +++ b/test/test_page.rb @@ -110,4 +110,9 @@ context "Page" do footer = @wiki.page("_Footer") assert_nil footer.footer end + + test "cannot convert non string to human readable page title" do + assert_equal '', Gollum::Page.cname(nil) + assert_equal '', Gollum::Page.cname(3) + end end