Changed file destinations
This commit is contained in:
123
saving_test.go
Normal file
123
saving_test.go
Normal file
@@ -0,0 +1,123 @@
|
||||
// saving_test.go
|
||||
package main
|
||||
|
||||
import (
|
||||
"io/ioutil"
|
||||
"math/rand"
|
||||
"os"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func GenerateRandStatsForTime(N int) []StatForTime {
|
||||
data := make([]StatForTime, 0)
|
||||
keyMap := GetKeymap()
|
||||
rnd := rand.New(rand.NewSource(42))
|
||||
for i := 0; i < N; i++ {
|
||||
var curStat StatForTime
|
||||
curStat.Init()
|
||||
for keyNum := range keyMap {
|
||||
if rnd.Float32() > 0.7 {
|
||||
curStat.keys[keyNum] = rnd.Intn(5000)
|
||||
}
|
||||
}
|
||||
data = append(data, curStat)
|
||||
}
|
||||
|
||||
return data
|
||||
}
|
||||
|
||||
func BenchmarkCsvSavingOnlySum(b *testing.B) {
|
||||
data := GenerateRandStatsForTime(b.N)
|
||||
keyMap := GetKeymap()
|
||||
|
||||
tmpFile, err := ioutil.TempFile(os.TempDir(), "benchmark")
|
||||
if err != nil {
|
||||
b.Fatal(err)
|
||||
}
|
||||
|
||||
defer os.Remove(tmpFile.Name())
|
||||
|
||||
b.ResetTimer()
|
||||
|
||||
SaveToCsvWriter(data, keyMap, tmpFile, false)
|
||||
}
|
||||
|
||||
func BenchmarkCsvSaving(b *testing.B) {
|
||||
data := GenerateRandStatsForTime(b.N)
|
||||
keyMap := GetKeymap()
|
||||
|
||||
tmpFile, err := ioutil.TempFile(os.TempDir(), "benchmark")
|
||||
if err != nil {
|
||||
b.Fatal(err)
|
||||
}
|
||||
|
||||
defer os.Remove(tmpFile.Name())
|
||||
|
||||
b.ResetTimer()
|
||||
|
||||
SaveToCsvWriter(data, keyMap, tmpFile, true)
|
||||
}
|
||||
|
||||
func BenchmarkJSONSavingOnlySum(b *testing.B) {
|
||||
data := GenerateRandStatsForTime(b.N)
|
||||
keyMap := GetKeymap()
|
||||
|
||||
tmpFile, err := ioutil.TempFile(os.TempDir(), "benchmark")
|
||||
if err != nil {
|
||||
b.Fatal(err)
|
||||
}
|
||||
|
||||
defer os.Remove(tmpFile.Name())
|
||||
|
||||
b.ResetTimer()
|
||||
|
||||
SaveToJSONWriter(data, keyMap, tmpFile, false)
|
||||
}
|
||||
|
||||
func BenchmarkJSONSaving(b *testing.B) {
|
||||
data := GenerateRandStatsForTime(b.N)
|
||||
keyMap := GetKeymap()
|
||||
|
||||
tmpFile, err := ioutil.TempFile(os.TempDir(), "benchmark")
|
||||
if err != nil {
|
||||
b.Fatal(err)
|
||||
}
|
||||
|
||||
defer os.Remove(tmpFile.Name())
|
||||
|
||||
b.ResetTimer()
|
||||
|
||||
SaveToJSONWriter(data, keyMap, tmpFile, true)
|
||||
}
|
||||
|
||||
func BenchmarkCsvGzSaving(b *testing.B) {
|
||||
data := GenerateRandStatsForTime(b.N)
|
||||
keyMap := GetKeymap()
|
||||
|
||||
tmpFile, err := ioutil.TempFile(os.TempDir(), "benchmark")
|
||||
if err != nil {
|
||||
b.Fatal(err)
|
||||
}
|
||||
|
||||
defer os.Remove(tmpFile.Name())
|
||||
|
||||
b.ResetTimer()
|
||||
|
||||
SaveToCsvGzWriter(data, keyMap, tmpFile, true)
|
||||
}
|
||||
|
||||
func BenchmarkJSONGzSaving(b *testing.B) {
|
||||
data := GenerateRandStatsForTime(b.N)
|
||||
keyMap := GetKeymap()
|
||||
|
||||
tmpFile, err := ioutil.TempFile(os.TempDir(), "benchmark")
|
||||
if err != nil {
|
||||
b.Fatal(err)
|
||||
}
|
||||
|
||||
defer os.Remove(tmpFile.Name())
|
||||
|
||||
b.ResetTimer()
|
||||
|
||||
SaveToJSONGzWriter(data, keyMap, tmpFile, true)
|
||||
}
|
||||
Reference in New Issue
Block a user