1
// Copyright 2013 Canonical Ltd.
2
// Licensed under the AGPLv3, see LICENCE file for details.
8
. "launchpad.net/gocheck"
12
type LockingSuite struct{}
14
var _ = Suite(&LockingSuite{})
16
func (LockingSuite) TestTestLockingFunctionPassesCorrectLock(c *C) {
22
// TestLockingFunction succeeds.
23
TestLockingFunction(&lock, function)
26
func (LockingSuite) TestTestLockingFunctionDetectsDisobeyedLock(c *C) {
30
func() { TestLockingFunction(&lock, function) },
32
errors.New("function did not obey lock"))
35
func (LockingSuite) TestTestLockingFunctionDetectsFailureToReleaseLock(c *C) {
42
func() { TestLockingFunction(&lock, function) },
44
errors.New("function did not release lock"))