本文整理汇总了Golang中github.com/heketi/tests.Assert函数的典型用法代码示例。如果您正苦于以下问题:Golang Assert函数的具体用法?Golang Assert怎么用?Golang Assert使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了Assert函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: TestVolumeEntryNameConflictMultiCluster
func TestVolumeEntryNameConflictMultiCluster(t *testing.T) {
tmpfile := tests.Tempfile()
defer os.Remove(tmpfile)
// Create the app
app := NewTestApp(tmpfile)
defer app.Close()
// Create 10 clusters
err := setupSampleDbWithTopology(app,
10, // clusters
3, // nodes_per_cluster
6, // devices_per_node,
6*TB, // disksize)
)
tests.Assert(t, err == nil)
// Create 10 volumes
for i := 0; i < 10; i++ {
v := createSampleVolumeEntry(1024)
v.Info.Name = "myvol"
err = v.Create(app.db, app.executor, app.allocator)
tests.Assert(t, err == nil)
}
// Create another volume same name
v := createSampleVolumeEntry(10000)
v.Info.Name = "myvol"
err = v.Create(app.db, app.executor, app.allocator)
tests.Assert(t, err != nil, err)
}
开发者ID:yepengxj,项目名称:heketi,代码行数:31,代码来源:volume_entry_test.go
示例2: TestReplicaDurabilityDefaults
func TestReplicaDurabilityDefaults(t *testing.T) {
r := &ReplicaDurability{}
tests.Assert(t, r.Replica == 0)
r.SetDurability()
tests.Assert(t, r.Replica == DEFAULT_REPLICA)
}
开发者ID:vbellur,项目名称:heketi,代码行数:7,代码来源:volume_durability_test.go
示例3: TestVolumeExpandIdNotFound
func TestVolumeExpandIdNotFound(t *testing.T) {
tmpfile := tests.Tempfile()
defer os.Remove(tmpfile)
// Create the app
app := NewTestApp(tmpfile)
defer app.Close()
router := mux.NewRouter()
app.SetRoutes(router)
// Setup the server
ts := httptest.NewServer(router)
defer ts.Close()
// JSON Request
request := []byte(`{
"expand_size" : 100
}`)
// Now that we have some data in the database, we can
// make a request for the clutser list
r, err := http.Post(ts.URL+"/volumes/12345/expand",
"application/json",
bytes.NewBuffer(request))
tests.Assert(t, err == nil)
tests.Assert(t, r.StatusCode == http.StatusNotFound, r.StatusCode)
body, err := ioutil.ReadAll(io.LimitReader(r.Body, r.ContentLength))
tests.Assert(t, err == nil)
r.Body.Close()
tests.Assert(t, strings.Contains(string(body), "Id not found"))
}
开发者ID:vbellur,项目名称:heketi,代码行数:31,代码来源:app_volume_test.go
示例4: TestVolumeCreateSmallSize
func TestVolumeCreateSmallSize(t *testing.T) {
tmpfile := tests.Tempfile()
defer os.Remove(tmpfile)
// Create the app
app := NewTestApp(tmpfile)
defer app.Close()
router := mux.NewRouter()
app.SetRoutes(router)
// Setup the server
ts := httptest.NewServer(router)
defer ts.Close()
// VolumeCreate JSON Request
request := []byte(`{
"size" : 0
}`)
// Send request
r, err := http.Post(ts.URL+"/volumes", "application/json", bytes.NewBuffer(request))
tests.Assert(t, err == nil)
tests.Assert(t, r.StatusCode == http.StatusBadRequest)
body, err := ioutil.ReadAll(io.LimitReader(r.Body, r.ContentLength))
tests.Assert(t, err == nil)
r.Body.Close()
tests.Assert(t, strings.Contains(string(body), "Invalid volume size"))
}
开发者ID:vbellur,项目名称:heketi,代码行数:28,代码来源:app_volume_test.go
示例5: TestVolumeListEmpty
func TestVolumeListEmpty(t *testing.T) {
tmpfile := tests.Tempfile()
defer os.Remove(tmpfile)
// Create the app
app := NewTestApp(tmpfile)
defer app.Close()
router := mux.NewRouter()
app.SetRoutes(router)
// Setup the server
ts := httptest.NewServer(router)
defer ts.Close()
// Get volumes, there should be none
r, err := http.Get(ts.URL + "/volumes")
tests.Assert(t, r.StatusCode == http.StatusOK)
tests.Assert(t, err == nil)
tests.Assert(t, r.Header.Get("Content-Type") == "application/json; charset=UTF-8")
// Read response
var msg VolumeListResponse
err = utils.GetJsonFromResponse(r, &msg)
tests.Assert(t, err == nil)
tests.Assert(t, len(msg.Volumes) == 0)
}
开发者ID:vbellur,项目名称:heketi,代码行数:26,代码来源:app_volume_test.go
示例6: TestNewBrickEntryFromId
func TestNewBrickEntryFromId(t *testing.T) {
tmpfile := tests.Tempfile()
defer os.Remove(tmpfile)
// Create the app
app := NewTestApp(tmpfile)
defer app.Close()
// Create a brick
b := NewBrickEntry(10, 20, 5, "abc", "def")
// Save element in database
err := app.db.Update(func(tx *bolt.Tx) error {
return b.Save(tx)
})
tests.Assert(t, err == nil)
var brick *BrickEntry
err = app.db.View(func(tx *bolt.Tx) error {
var err error
brick, err = NewBrickEntryFromId(tx, b.Info.Id)
return err
})
tests.Assert(t, err == nil)
tests.Assert(t, reflect.DeepEqual(brick, b))
}
开发者ID:yepengxj,项目名称:heketi,代码行数:27,代码来源:brick_entry_test.go
示例7: TestNewBrickEntryNewInfoResponse
func TestNewBrickEntryNewInfoResponse(t *testing.T) {
tmpfile := tests.Tempfile()
defer os.Remove(tmpfile)
// Create the app
app := NewTestApp(tmpfile)
defer app.Close()
// Create a brick
b := NewBrickEntry(10, 20, 5, "abc", "def")
// Save element in database
err := app.db.Update(func(tx *bolt.Tx) error {
return b.Save(tx)
})
tests.Assert(t, err == nil)
var info *api.BrickInfo
err = app.db.View(func(tx *bolt.Tx) error {
brick, err := NewBrickEntryFromId(tx, b.Id())
if err != nil {
return err
}
info, err = brick.NewInfoResponse(tx)
return err
})
tests.Assert(t, err == nil)
tests.Assert(t, reflect.DeepEqual(*info, b.Info))
}
开发者ID:yepengxj,项目名称:heketi,代码行数:30,代码来源:brick_entry_test.go
示例8: TestNoneDurabilityDefaults
func TestNoneDurabilityDefaults(t *testing.T) {
r := &NoneDurability{}
tests.Assert(t, r.Replica == 0)
r.SetDurability()
tests.Assert(t, r.Replica == 1)
}
开发者ID:vbellur,项目名称:heketi,代码行数:7,代码来源:volume_durability_test.go
示例9: TestVolumeEntryExpandMaxBrickLimit
func TestVolumeEntryExpandMaxBrickLimit(t *testing.T) {
tmpfile := tests.Tempfile()
defer os.Remove(tmpfile)
// Create the app
app := NewTestApp(tmpfile)
defer app.Close()
// Create a large cluster
err := setupSampleDbWithTopology(app,
10, // clusters
4, // nodes_per_cluster
24, // devices_per_node,
600*GB, // disksize)
)
tests.Assert(t, err == nil)
// Create large volume
v := createSampleVolumeEntry(100)
err = v.Create(app.db, app.executor, app.allocator)
tests.Assert(t, err == nil)
// Add a bunch of bricks until the limit
fakebricks := make(sort.StringSlice, BrickMaxNum-len(v.Bricks))
v.Bricks = append(v.Bricks, fakebricks...)
// Try to expand the volume, but it will return that the max number
// of bricks has been reached
err = v.Expand(app.db, app.executor, app.allocator, 100)
tests.Assert(t, err == ErrMaxBricks, err)
}
开发者ID:yepengxj,项目名称:heketi,代码行数:31,代码来源:volume_entry_test.go
示例10: TestVolumeEntryFromId
func TestVolumeEntryFromId(t *testing.T) {
tmpfile := tests.Tempfile()
defer os.Remove(tmpfile)
// Create the app
app := NewTestApp(tmpfile)
defer app.Close()
// Create a volume entry
v := createSampleVolumeEntry(1024)
// Save in database
err := app.db.Update(func(tx *bolt.Tx) error {
return v.Save(tx)
})
tests.Assert(t, err == nil)
// Load from database
var entry *VolumeEntry
err = app.db.View(func(tx *bolt.Tx) error {
var err error
entry, err = NewVolumeEntryFromId(tx, v.Info.Id)
return err
})
tests.Assert(t, err == nil)
tests.Assert(t, reflect.DeepEqual(entry, v))
}
开发者ID:yepengxj,项目名称:heketi,代码行数:28,代码来源:volume_entry_test.go
示例11: TestNewStatusGroup
func TestNewStatusGroup(t *testing.T) {
s := NewStatusGroup()
tests.Assert(t, s != nil)
tests.Assert(t, s.results != nil)
tests.Assert(t, len(s.results) == 0)
tests.Assert(t, s.err == nil)
}
开发者ID:heketi,项目名称:utils,代码行数:7,代码来源:statusgroup_test.go
示例12: setupCluster
func setupCluster(t *testing.T) {
tests.Assert(t, heketi != nil)
nodespercluster := NODES / CLUSTERS
nodes := getnodes()
sg := utils.NewStatusGroup()
for cluster := 0; cluster < CLUSTERS; cluster++ {
sg.Add(1)
go func(nodes_in_cluster []string) {
defer sg.Done()
// Create a cluster
cluster, err := heketi.ClusterCreate()
if err != nil {
logger.Err(err)
sg.Err(err)
return
}
// Add nodes sequentially due to probes
for index, hostname := range nodes_in_cluster {
nodeReq := &glusterfs.NodeAddRequest{}
nodeReq.ClusterId = cluster.Id
nodeReq.Hostnames.Manage = []string{hostname}
nodeReq.Hostnames.Storage = []string{hostname}
nodeReq.Zone = index%ZONES + 1
node, err := heketi.NodeAdd(nodeReq)
if err != nil {
logger.Err(err)
sg.Err(err)
return
}
// Add devices all concurrently
for _, disk := range getdisks() {
sg.Add(1)
go func(d string) {
defer sg.Done()
driveReq := &glusterfs.DeviceAddRequest{}
driveReq.Name = d
driveReq.Weight = 100
driveReq.NodeId = node.Id
err := heketi.DeviceAdd(driveReq)
if err != nil {
logger.Err(err)
sg.Err(err)
}
}(disk)
}
}
}(nodes[cluster*nodespercluster : (cluster+1)*nodespercluster])
}
// Wait here for results
err := sg.Result()
tests.Assert(t, err == nil)
}
开发者ID:anushshetty,项目名称:heketi,代码行数:60,代码来源:heketi_test.go
示例13: TestAppAdvsettings
func TestAppAdvsettings(t *testing.T) {
dbfile := tests.Tempfile()
defer os.Remove(dbfile)
os.Setenv("HEKETI_EXECUTOR", "mock")
defer os.Unsetenv("HEKETI_EXECUTOR")
data := []byte(`{
"glusterfs" : {
"executor" : "crazyexec",
"allocator" : "simple",
"db" : "` + dbfile + `",
"brick_max_size_gb" : 1024,
"brick_min_size_gb" : 1,
"max_bricks_per_volume" : 33
}
}`)
bmax, bmin, bnum := BrickMaxSize, BrickMinSize, BrickMaxNum
defer func() {
BrickMaxSize, BrickMinSize, BrickMaxNum = bmax, bmin, bnum
}()
app := NewApp(bytes.NewReader(data))
tests.Assert(t, app != nil)
tests.Assert(t, app.conf.Executor == "mock")
tests.Assert(t, BrickMaxNum == 33)
tests.Assert(t, BrickMaxSize == 1*TB)
tests.Assert(t, BrickMinSize == 1*GB)
}
开发者ID:yepengxj,项目名称:heketi,代码行数:30,代码来源:app_test.go
示例14: TestNewSimpleAllocator
func TestNewSimpleAllocator(t *testing.T) {
a := NewSimpleAllocator()
tests.Assert(t, a != nil)
tests.Assert(t, a.rings != nil)
}
开发者ID:yepengxj,项目名称:heketi,代码行数:7,代码来源:allocator_simple_test.go
示例15: TestNewNodeEntryMarshal
func TestNewNodeEntryMarshal(t *testing.T) {
req := &api.NodeAddRequest{
ClusterId: "123",
Hostnames: api.HostAddresses{
Manage: []string{"manage"},
Storage: []string{"storage"},
},
Zone: 99,
}
n := NewNodeEntryFromRequest(req)
n.DeviceAdd("abc")
n.DeviceAdd("def")
buffer, err := n.Marshal()
tests.Assert(t, err == nil)
tests.Assert(t, buffer != nil)
tests.Assert(t, len(buffer) > 0)
um := &NodeEntry{}
err = um.Unmarshal(buffer)
tests.Assert(t, err == nil)
tests.Assert(t, reflect.DeepEqual(n, um))
}
开发者ID:yepengxj,项目名称:heketi,代码行数:25,代码来源:node_entry_test.go
示例16: TestDisperseDurability
func TestDisperseDurability(t *testing.T) {
r := &DisperseDurability{
Data: 8,
Redundancy: 3,
}
gen := r.BrickSizeGenerator(200 * GB)
// Gen 1
sets, brick_size, err := gen()
tests.Assert(t, err == nil)
tests.Assert(t, sets == 2)
tests.Assert(t, brick_size == uint64(100*GB/8))
tests.Assert(t, 8+3 == r.BricksInSet())
// Gen 2
sets, brick_size, err = gen()
tests.Assert(t, err == nil)
tests.Assert(t, sets == 4)
tests.Assert(t, brick_size == uint64(50*GB/8))
tests.Assert(t, 8+3 == r.BricksInSet())
// Gen 3
sets, brick_size, err = gen()
tests.Assert(t, err == ErrMininumBrickSize)
tests.Assert(t, 8+3 == r.BricksInSet())
}
开发者ID:vbellur,项目名称:heketi,代码行数:28,代码来源:volume_durability_test.go
示例17: TestVolumeEntryDoNotAllowDeviceOnSameNode
func TestVolumeEntryDoNotAllowDeviceOnSameNode(t *testing.T) {
tmpfile := tests.Tempfile()
defer os.Remove(tmpfile)
// Create the app
app := NewTestApp(tmpfile)
defer app.Close()
// Create cluster with plenty of space, but
// it will not have enough nodes
err := setupSampleDbWithTopology(app,
1, // clusters
1, // nodes_per_cluster
200, // devices_per_node,
6*TB, // disksize)
)
tests.Assert(t, err == nil)
// Create volume
v := createSampleVolumeEntry(100)
err = v.Create(app.db, app.executor, app.allocator)
tests.Assert(t, err != nil, err)
tests.Assert(t, err == ErrNoSpace)
v = createSampleVolumeEntry(10000)
err = v.Create(app.db, app.executor, app.allocator)
tests.Assert(t, err != nil, err)
tests.Assert(t, err == ErrNoSpace)
}
开发者ID:yepengxj,项目名称:heketi,代码行数:29,代码来源:volume_entry_test.go
示例18: TestNewSshExecBadPrivateKeyLocation
func TestNewSshExecBadPrivateKeyLocation(t *testing.T) {
config := &SshConfig{}
s, err := NewSshExecutor(config)
tests.Assert(t, s == nil)
tests.Assert(t, err != nil)
}
开发者ID:yepengxj,项目名称:heketi,代码行数:7,代码来源:sshexec_test.go
示例19: TestNewClusterEntry
func TestNewClusterEntry(t *testing.T) {
c := NewClusterEntry()
tests.Assert(t, c.Info.Id == "")
tests.Assert(t, c.Info.Volumes != nil)
tests.Assert(t, c.Info.Nodes != nil)
tests.Assert(t, len(c.Info.Volumes) == 0)
tests.Assert(t, len(c.Info.Nodes) == 0)
}
开发者ID:yepengxj,项目名称:heketi,代码行数:8,代码来源:cluster_entry_test.go
示例20: TestNewVolumeEntry
func TestNewVolumeEntry(t *testing.T) {
v := NewVolumeEntry()
tests.Assert(t, v.Bricks != nil)
tests.Assert(t, len(v.Info.Id) == 0)
tests.Assert(t, len(v.Info.Cluster) == 0)
tests.Assert(t, len(v.Info.Clusters) == 0)
}
开发者ID:yepengxj,项目名称:heketi,代码行数:8,代码来源:volume_entry_test.go
注:本文中的github.com/heketi/tests.Assert函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论