MCPcopy Create free account
hub / github.com/nutsdb/nutsdb / TestDataFile1

Function TestDataFile1

datafile_test.go:58–89  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

56}
57
58func TestDataFile1(t *testing.T) {
59 if runtime.GOOS == "windows" {
60 t.Skip()
61 }
62 fm := NewFileManager(MMap, 1024, 0.5, 256*MB)
63 defer func() { _ = fm.Close() }()
64 df, err := fm.GetDataFile(filePath, 1024)
65 defer func() { _ = os.Remove(filePath) }()
66 if err != nil {
67 t.Fatal(err)
68 }
69
70 n, err := df.WriteAt(entry.Encode(), 0)
71 if err != nil {
72 t.Error("err TestDataFile_All WriteAt")
73 }
74
75 payloadSize := entry.Meta.PayloadSize()
76 e, err := df.ReadEntry(n, payloadSize)
77 assert.Nil(t, e)
78 assert.Error(t, err, ErrEntryZero)
79
80 e, err = df.ReadEntry(0, payloadSize)
81 if err != nil || string(e.Key) != "key_0001" || string(e.Value) != "val_0001" || e.Meta.Timestamp != 1547707905 {
82 t.Error("err TestDataFile_All ReadAt")
83 }
84
85 e, err = df.ReadEntry(1, payloadSize)
86 if err == nil || e != nil {
87 t.Error("err TestDataFile_All ReadAt")
88 }
89}
90
91func TestDataFile2(t *testing.T) {
92 fm := NewFileManager(FileIO, 1024, 0.5, 256*MB)

Callers

nothing calls this directly

Calls 10

CloseMethod · 0.95
GetDataFileMethod · 0.95
NewFileManagerFunction · 0.85
PayloadSizeMethod · 0.80
ReadEntryMethod · 0.80
SkipMethod · 0.65
WriteAtMethod · 0.65
RemoveMethod · 0.45
EncodeMethod · 0.45
ErrorMethod · 0.45

Tested by

no test coverage detected