github.com/codingeasygo/util@v0.0.0-20231206062002-1ce2f004b7d9/xtest/fperf_test.go (about)

     1  package xtest
     2  
     3  import (
     4  	"fmt"
     5  	"os"
     6  	"testing"
     7  )
     8  
     9  func TestFPerf(t *testing.T) {
    10  	os.RemoveAll("abc")
    11  	os.Mkdir("abc", os.ModePerm)
    12  	fp := NewFPerf("./abc")
    13  	fp.Clear = true
    14  	used, err := fp.Perf4MultiRw("a", "", 100, 5, 10240, 1)
    15  	if err != nil {
    16  		t.Error(err.Error())
    17  		return
    18  	}
    19  	fmt.Println(used)
    20  	fp.Clear = false
    21  	used, err = fp.Perf4MultiRw("a", "", 100, 5, 10240, 1)
    22  	if err != nil {
    23  		t.Error(err.Error())
    24  		return
    25  	}
    26  	fmt.Println(used)
    27  	used, _, err = fp.Perf4MultiR("a", "", 0, 100, 5)
    28  	if err != nil {
    29  		t.Error(err.Error())
    30  		return
    31  	}
    32  	fmt.Println(used)
    33  	fp.Clear = true
    34  	used, err = fp.Perf4MultiW("ab", "", 100, 5, 10240, 1)
    35  	if err != nil {
    36  		t.Error(err.Error())
    37  		return
    38  	}
    39  	fmt.Println(used)
    40  	//
    41  	fp = NewFPerf("/fsfsdfs")
    42  	_, err = fp.Read("ssdd")
    43  	if err == nil {
    44  		t.Error("error")
    45  		return
    46  	}
    47  	err = fp.Write("sss", 10240, 1)
    48  	if err == nil {
    49  		t.Error("error")
    50  		return
    51  	}
    52  	err = fp.Rw("sff", 10240, 1)
    53  	if err == nil {
    54  		t.Error("error")
    55  		return
    56  	}
    57  	_, err = fp.Perf4MultiW("sfsf", "", 10, 10, 10, 1)
    58  	if err == nil {
    59  		t.Error("error")
    60  		return
    61  	}
    62  	_, err = fp.Perf4MultiRw("sfsf", "", 10, 10, 10, 1)
    63  	if err == nil {
    64  		t.Error("error")
    65  		return
    66  	}
    67  	_, _, err = fp.Perf4MultiR("xdsd", "", 0, 100, 5)
    68  	if err == nil {
    69  		t.Error("error")
    70  		return
    71  	}
    72  	os.RemoveAll("abc")
    73  }