mirror of
https://github.com/Jguer/yay
synced 2024-10-31 04:12:51 +00:00
62 lines
1.5 KiB
Go
62 lines
1.5 KiB
Go
package pacman
|
|
|
|
import (
|
|
"os"
|
|
"testing"
|
|
|
|
"github.com/jguer/yay/config"
|
|
)
|
|
|
|
func benchmarkPrintSearch(search string, b *testing.B) {
|
|
old := os.Stdout
|
|
_, w, _ := os.Pipe()
|
|
os.Stdout = w
|
|
|
|
for n := 0; n < b.N; n++ {
|
|
res, _, _ := Search(append([]string{}, search))
|
|
res.PrintSearch()
|
|
}
|
|
os.Stdout = old
|
|
}
|
|
|
|
func BenchmarkPrintSearchSimpleTopDown(b *testing.B) {
|
|
config.YayConf.SortMode = config.TopDown
|
|
benchmarkPrintSearch("chromium", b)
|
|
}
|
|
func BenchmarkPrintSearchComplexTopDown(b *testing.B) {
|
|
config.YayConf.SortMode = config.TopDown
|
|
benchmarkPrintSearch("linux", b)
|
|
}
|
|
|
|
func BenchmarkPrintSearchSimpleBottomUp(b *testing.B) {
|
|
config.YayConf.SortMode = config.BottomUp
|
|
benchmarkPrintSearch("chromium", b)
|
|
}
|
|
func BenchmarkPrintSearchComplexBottomUp(b *testing.B) {
|
|
config.YayConf.SortMode = config.BottomUp
|
|
benchmarkPrintSearch("linux", b)
|
|
}
|
|
|
|
func benchmarkSearch(search string, b *testing.B) {
|
|
for n := 0; n < b.N; n++ {
|
|
Search(append([]string{}, search))
|
|
}
|
|
}
|
|
func BenchmarkSearchSimpleTopDown(b *testing.B) {
|
|
config.YayConf.SortMode = config.TopDown
|
|
benchmarkSearch("chromium", b)
|
|
}
|
|
|
|
func BenchmarkSearchSimpleBottomUp(b *testing.B) {
|
|
config.YayConf.SortMode = config.BottomUp
|
|
benchmarkSearch("chromium", b)
|
|
}
|
|
|
|
func BenchmarkSearchComplexTopDown(b *testing.B) {
|
|
config.YayConf.SortMode = config.TopDown
|
|
benchmarkSearch("linux", b)
|
|
}
|
|
func BenchmarkSearchComplexBottomUp(b *testing.B) {
|
|
config.YayConf.SortMode = config.BottomUp
|
|
benchmarkSearch("linux", b)
|
|
}
|