shithub: hugo

Download patch

ref: d74452cfe8f69a85ec83e05481e16bebf199a5cb
parent: 978951cf52b697f60f3ecfacf3322b460ff3abf9
author: Bjørn Erik Pedersen <[email protected]>
date: Wed May 31 06:35:02 EDT 2017

Add benchSite.sh

And change site benchmark separator to comma to make it Bash and regexp friendly, example:

./benchSite.sh "frontmatter=YAML,num_root_sections=1,num_pages=.*,tags_per_page=20,shortcodes=false,render=false"

--- /dev/null
+++ b/benchSite.sh
@@ -1,0 +1,9 @@
+#!/bin/bash
+
+# Send in a regexp mathing the benchmarks you want to run, i.e. './benchSite.sh "frontmatter=YAML"'. 
+# Note the quotes, which will be needed for more complex expressions.
+# The above will run all variations, but only for front matter YAML.
+
+echo "Running with BenchmarkSiteBuilding/${1}"
+
+go test -run="NONE" -bench="BenchmarkSiteBuilding/${1}" -test.benchmem=true ./hugolib
\ No newline at end of file
--- a/hugolib/site_benchmark_test.go
+++ b/hugolib/site_benchmark_test.go
@@ -33,7 +33,8 @@
 }
 
 func (s siteBuildingBenchmarkConfig) String() string {
-	return fmt.Sprintf("frontmatter=%s|num_root_sections=%d|num_pages=%d|tags_per_page=%d|shortcodes=%t|render=%t", s.Frontmatter, s.RootSections, s.NumPages, s.TagsPerPage, s.Shortcodes, s.Render)
+	// Make it comma separated with no spaces, so it is both Bash and regexp friendly.
+	return fmt.Sprintf("frontmatter=%s,num_root_sections=%d,num_pages=%d,tags_per_page=%d,shortcodes=%t,render=%t", s.Frontmatter, s.RootSections, s.NumPages, s.TagsPerPage, s.Shortcodes, s.Render)
 }
 
 func BenchmarkSiteBuilding(b *testing.B) {