blob: 63e726c17fa3a93829ad5e83c03ed9bb7639d55f [file] [log] [blame]
// Copyright 2016 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package fake
import (
"math/rand"
"testing"
"time"
"go.fuchsia.dev/fuchsia/src/lib/thinfs/block/blocktest"
)
const (
numBlocks = 5493
devSize = numBlocks * blockSize
)
func setUp(t *testing.T) ([]byte, *rand.Rand) {
seed := time.Now().UTC().UnixNano()
t.Log("Seed is", seed)
r := rand.New(rand.NewSource(seed))
buf := make([]byte, devSize)
r.Read(buf)
return buf, r
}
func TestReadAt(t *testing.T) {
buf, r := setUp(t)
dev := Device(make([]byte, devSize))
copy(dev, buf)
blocktest.ReadAt(t, dev, r, buf)
}
func TestWriteAt(t *testing.T) {
buf, r := setUp(t)
dev := Device(make([]byte, devSize))
copy(dev, buf)
blocktest.ReadAt(t, dev, r, buf)
}
func TestErrorPaths(t *testing.T) {
dev := Device(make([]byte, devSize))
blocktest.ErrorPaths(t, dev)
}