shithub: hugo

Download patch

ref: ab70e6f52f644aae8abfbdf21561ad597c0038a7
parent: dd85c290911e57eafd9f41e66005b54225e72eb0
author: Bjørn Erik Pedersen <[email protected]>
date: Thu Jan 14 10:14:21 EST 2016

Add menu test for external URL

See #1774

--- a/hugolib/menu_test.go
+++ b/hugolib/menu_test.go
@@ -40,6 +40,10 @@
 [[menu.main]]
     name = "Blog"
     url = "/posts"
+[[menu.main]]
+    name = "ext"
+    url = "http://gohugo.io"
+	identifier = "ext"
 [[menu.grandparent]]
 	name = "grandparent"
 	url = "/grandparent"
@@ -306,18 +310,32 @@
 
 }
 
-// issue #888
-func TestMenuWithHashInURL(t *testing.T) {
+func TestMenuURL(t *testing.T) {
 	viper.Reset()
 	defer viper.Reset()
-
 	s := setupMenuTests(t, MENU_PAGE_SOURCES)
 
-	me := findTestMenuEntryByID(s, "hash", "hash")
+	for i, this := range []struct {
+		me          *MenuEntry
+		expectedURL string
+	}{
+		// issue #888
+		{findTestMenuEntryByID(s, "hash", "hash"), "/Zoo/resource#anchor"},
+		// issue #1774
+		{findTestMenuEntryByID(s, "main", "ext"), "http://gohugo.io"},
+	} {
 
-	assert.NotNil(t, me)
+		if this.me == nil {
+			t.Errorf("[%d] MenuEntry not found", i)
+			continue
+		}
 
-	assert.Equal(t, "/Zoo/resource#anchor", me.URL)
+		if this.me.URL != this.expectedURL {
+			t.Errorf("[%d] Got URL %s expected %s", i, this.me.URL, this.expectedURL)
+		}
+
+	}
+
 }
 
 // issue #719