aboutsummaryrefslogtreecommitdiff
path: root/integration_tests/performance_test.go
diff options
context:
space:
mode:
authorJakob Unterwurzacher2016-06-06 23:57:42 +0200
committerJakob Unterwurzacher2016-06-07 00:08:56 +0200
commitc2a5303eebc84d616072163f74eef8483c9f5386 (patch)
tree181ffdbb956eb76351d137a4fa9f52ed98b8f242 /integration_tests/performance_test.go
parent0f4d3501369e13c8ba6ee4c9fc7df02a3cc698b1 (diff)
tests: split example_filesystems into its own package
Running these tests from integration_tests' TestMain() was awkward because they were run twice with unchanged settings. integration_tests tests everything with OpenSSL and with native Go crypto, but this does not take affect for the example filesystems. To make this work, test_helpers is also split into its own package.
Diffstat (limited to 'integration_tests/performance_test.go')
-rw-r--r--integration_tests/performance_test.go129
1 files changed, 0 insertions, 129 deletions
diff --git a/integration_tests/performance_test.go b/integration_tests/performance_test.go
deleted file mode 100644
index 9a0399a..0000000
--- a/integration_tests/performance_test.go
+++ /dev/null
@@ -1,129 +0,0 @@
-package integration_tests
-
-// Benchmarks
-
-import (
- "fmt"
- "io"
- "io/ioutil"
- "os"
- "testing"
-)
-
-func BenchmarkStreamWrite(t *testing.B) {
- buf := make([]byte, 1024*1024)
- t.SetBytes(int64(len(buf)))
-
- file, err := os.Create(defaultPlainDir + "BenchmarkWrite")
- if err != nil {
- t.FailNow()
- }
-
- t.ResetTimer()
- var i int
- for i = 0; i < t.N; i++ {
- written, err := file.Write(buf)
- if err != nil {
- fmt.Printf("err=\"%s\", written=%d\n", err.Error(), written)
- t.FailNow()
- }
- }
- file.Close()
-}
-
-func BenchmarkStreamRead(t *testing.B) {
- buf := make([]byte, 1024*1024)
- t.SetBytes(int64(len(buf)))
-
- fn := defaultPlainDir + "BenchmarkWrite"
- fi, err := os.Stat(fn)
- if err != nil {
- t.Fatal(err)
- }
- mb := int(fi.Size() / 1024 / 1024)
-
- if t.N > mb {
- // Grow file so we can satisfy the test
- //fmt.Printf("Growing file to %d MB... ", t.N)
- var f2 *os.File
- f2, err = os.OpenFile(fn, os.O_WRONLY|os.O_APPEND, 0666)
- if err != nil {
- fmt.Println(err)
- t.FailNow()
- }
- for h := 0; h < t.N-mb; h++ {
- _, err = f2.Write(buf)
- if err != nil {
- fmt.Println(err)
- t.FailNow()
- }
- }
- f2.Close()
- }
-
- file, err := os.Open(fn)
- if err != nil {
- t.FailNow()
- }
- t.ResetTimer()
- var i int
- for i = 0; i < t.N; i++ {
- _, err := file.Read(buf)
- if err == io.EOF {
- fmt.Println("Test file too small")
- t.SkipNow()
- } else if err != nil {
- fmt.Println(err)
- t.FailNow()
- }
- }
- file.Close()
-}
-
-// createFiles - create "count" files of size "size" bytes each
-func createFiles(t *testing.B, count int, size int) {
- dir := fmt.Sprintf("%s/createFiles_%d_%d", defaultPlainDir, count, size)
- err := os.Mkdir(dir, 0777)
- if err != nil {
- t.Fatal(err)
- }
- buf := make([]byte, size)
- t.SetBytes(int64(len(buf)))
- t.ResetTimer()
- var i int
- for i = 0; i < count; i++ {
- file := fmt.Sprintf("%s/%d", dir, i)
- if size > 0 {
- err = ioutil.WriteFile(file, buf, 0666)
- } else {
- var fh *os.File
- fh, err = os.Create(file)
- fh.Close()
- }
- if err != nil {
- t.Fatal(err)
- }
- }
- t.StopTimer()
- os.RemoveAll(dir)
-}
-
-func BenchmarkCreate0B(t *testing.B) {
- createFiles(t, t.N, 0)
-}
-
-func BenchmarkCreate1B(t *testing.B) {
- createFiles(t, t.N, 1)
-}
-
-func BenchmarkCreate100B(t *testing.B) {
- createFiles(t, t.N, 100)
-}
-
-func BenchmarkCreate4kB(t *testing.B) {
- createFiles(t, t.N, 4*1024)
-}
-
-func BenchmarkCreate10kB(t *testing.B) {
- createFiles(t, t.N, 10*1024)
-}