Documentation ¶
Overview ¶
Package test provides common Camlistore test objects.
Index ¶
- Variables
- func BrokenTest(t *testing.T)
- func DependencyErrorOrSkip(t *testing.T)
- func Diff(a, b []byte) string
- func MustRunCmd(t *testing.T, c *exec.Cmd) string
- func RunCmd(c *exec.Cmd) (output string, err error)
- func TLog(t TB) func()
- func WaitFor(condition func() bool, maxWait, checkInterval time.Duration) bool
- type Blob
- func (tb *Blob) AssertMatches(t *testing.T, sb blob.SizedRef)
- func (tb *Blob) BlobRef() blob.Ref
- func (tb *Blob) BlobRefSlice() []blob.Ref
- func (tb *Blob) MustUpload(t *testing.T, ds blobserver.BlobReceiver)
- func (tb *Blob) Reader() io.Reader
- func (tb *Blob) Size() int64
- func (tb *Blob) SizedRef() blob.SizedRef
- type FakeIndex
- func (fi *FakeIndex) AddClaim(owner, permanode blob.Ref, claimType, attr, value string)
- func (fi *FakeIndex) AddMeta(br blob.Ref, camliType string, size int64)
- func (fi *FakeIndex) AddSignerAttrValue(signer blob.Ref, attr, val string, latest blob.Ref)
- func (fi *FakeIndex) AppendClaims(dst []camtypes.Claim, permaNode blob.Ref, signerFilter blob.Ref, ...) ([]camtypes.Claim, error)
- func (fi *FakeIndex) EdgesTo(ref blob.Ref, opts *camtypes.EdgesToOpts) ([]*camtypes.Edge, error)
- func (fi *FakeIndex) EnumerateBlobMeta(ctx *context.Context, ch chan<- camtypes.BlobMeta) error
- func (fi *FakeIndex) ExistingFileSchemas(bytesRef blob.Ref) ([]blob.Ref, error)
- func (fi *FakeIndex) GetBlobMeta(br blob.Ref) (camtypes.BlobMeta, error)
- func (fi *FakeIndex) GetDirMembers(dir blob.Ref, dest chan<- blob.Ref, limit int) error
- func (fi *FakeIndex) GetFileInfo(fileRef blob.Ref) (camtypes.FileInfo, error)
- func (fi *FakeIndex) GetImageInfo(fileRef blob.Ref) (camtypes.ImageInfo, error)
- func (fi *FakeIndex) GetRecentPermanodes(dest chan<- camtypes.RecentPermanode, owner blob.Ref, limit int, ...) error
- func (fi *FakeIndex) KeyId(blob.Ref) (string, error)
- func (fi *FakeIndex) LastTime() time.Time
- func (fi *FakeIndex) PathLookup(signer, base blob.Ref, suffix string, at time.Time) (*camtypes.Path, error)
- func (fi *FakeIndex) PathsLookup(signer, base blob.Ref, suffix string) ([]*camtypes.Path, error)
- func (fi *FakeIndex) PathsOfSignerTarget(signer, target blob.Ref) ([]*camtypes.Path, error)
- func (fi *FakeIndex) PermanodeOfSignerAttrValue(signer blob.Ref, attr, val string) (blob.Ref, error)
- func (fi *FakeIndex) SearchPermanodesWithAttr(dest chan<- blob.Ref, request *camtypes.PermanodeByAttrRequest) error
- type Fetcher
- func (tf *Fetcher) AddBlob(b *Blob)
- func (tf *Fetcher) BlobContents(br blob.Ref) (contents string, ok bool)
- func (tf *Fetcher) BlobrefStrings() []string
- func (tf *Fetcher) EnumerateBlobs(ctx *context.Context, dest chan<- blob.SizedRef, after string, limit int) error
- func (tf *Fetcher) Fetch(ref blob.Ref) (file types.ReadSeekCloser, size int64, err error)
- func (tf *Fetcher) FetchStreaming(ref blob.Ref) (file io.ReadCloser, size int64, err error)
- func (tf *Fetcher) ReceiveBlob(br blob.Ref, source io.Reader) (blob.SizedRef, error)
- func (tf *Fetcher) RemoveBlobs(blobs []blob.Ref) error
- func (tf *Fetcher) StatBlobs(dest chan<- blob.SizedRef, blobs []blob.Ref) error
- type TB
- type World
Constants ¶
This section is empty.
Variables ¶
var ClockOrigin = time.Unix(1322443956, 123456)
Functions ¶
func BrokenTest ¶
BrokenTest marks the test as broken and calls t.Skip, unless the environment variable RUN_BROKEN_TESTS is set to 1 (or some other boolean true value).
func DependencyErrorOrSkip ¶
DependencyErrorOrSkip is called when a test's dependency isn't found. It either skips the current test (if SKIP_DEP_TESTS is set), or calls t.Error with an error.
func MustRunCmd ¶
MustRunCmd wraps RunCmd, failing t if RunCmd returns an error.
func RunCmd ¶
RunCmd runs c (which is assumed to be something short-lived, like a camput or camget command), capturing its stdout for return, and also capturing its stderr, just in the case of errors. If there's an error, the return error fully describes the command and all output.
Types ¶
type Blob ¶
type Blob struct {
Contents string // the contents of the blob
}
Blob is a utility class for unit tests.
func (*Blob) BlobRefSlice ¶
func (*Blob) MustUpload ¶
func (tb *Blob) MustUpload(t *testing.T, ds blobserver.BlobReceiver)
type FakeIndex ¶
type FakeIndex struct {
// contains filtered or unexported fields
}
A FakeIndex implements parts of search.Index and provides methods to controls the results, such as AddMeta, AddClaim, AddSignerAttrValue.
func NewFakeIndex ¶
func NewFakeIndex() *FakeIndex
func (*FakeIndex) AddSignerAttrValue ¶
func (*FakeIndex) AppendClaims ¶
func (*FakeIndex) EnumerateBlobMeta ¶
func (*FakeIndex) ExistingFileSchemas ¶
func (*FakeIndex) GetBlobMeta ¶
func (*FakeIndex) GetDirMembers ¶
func (*FakeIndex) GetFileInfo ¶
func (*FakeIndex) GetImageInfo ¶
func (*FakeIndex) GetRecentPermanodes ¶
func (*FakeIndex) PathLookup ¶
func (*FakeIndex) PathsLookup ¶
func (*FakeIndex) PathsOfSignerTarget ¶
func (*FakeIndex) PermanodeOfSignerAttrValue ¶
func (*FakeIndex) SearchPermanodesWithAttr ¶
func (fi *FakeIndex) SearchPermanodesWithAttr(dest chan<- blob.Ref, request *camtypes.PermanodeByAttrRequest) error
TODO(mpl): write real tests
type Fetcher ¶
type Fetcher struct { // FetchErr, if non-nil, specifies the error to return on the next fetch call. // If it returns nil, fetches proceed as normal. FetchErr func() error // contains filtered or unexported fields }
Fetcher is an in-memory implementation of the blobserver Storage interface. It started as just a fetcher and grew. It also includes other convenience methods for testing.
func (*Fetcher) BlobContents ¶
func (*Fetcher) BlobrefStrings ¶
BlobrefStrings returns the sorted stringified blobrefs stored in this fetcher.
func (*Fetcher) EnumerateBlobs ¶
func (*Fetcher) FetchStreaming ¶
func (*Fetcher) ReceiveBlob ¶
type TB ¶
type TB interface { Error(args ...interface{}) Errorf(format string, args ...interface{}) Fail() FailNow() Failed() bool Fatal(args ...interface{}) Fatalf(format string, args ...interface{}) Log(args ...interface{}) Logf(format string, args ...interface{}) Skip(args ...interface{}) SkipNow() Skipf(format string, args ...interface{}) Skipped() bool }
TB is a copy of Go 1.2's testing.TB.
type World ¶
type World struct {
// contains filtered or unexported fields
}
World defines an integration test world.
It's used to run the actual Camlistore binaries (camlistored, camput, camget, camtool, etc) together in large tests, including building them, finding them, and wiring them up in an isolated way.
func GetWorld ¶
GetWorld returns (creating if necessary) a test singleton world. It calls Fatal on the provided test if there are problems.
func GetWorldMaybe ¶
GetWorldMaybe returns the current World. It might be nil.
func NewWorld ¶
NewWorld returns a new test world. It requires that GOPATH is set to find the "camlistore.org" root.
func (*World) CmdWithEnv ¶
func (*World) ServerBaseURL ¶
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
Package asserts provides a bad implementation of test predicate helpers.
|
Package asserts provides a bad implementation of test predicate helpers. |