本文整理汇总了Golang中context.TODO函数的典型用法代码示例。如果您正苦于以下问题:Golang TODO函数的具体用法?Golang TODO怎么用?Golang TODO使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了TODO函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: TestHandlerPatchItemReplaceInvalidModifiedSinceDate
func TestHandlerPatchItemReplaceInvalidModifiedSinceDate(t *testing.T) {
index := resource.NewIndex()
s := mem.NewHandler()
now := time.Now()
s.Insert(context.TODO(), []*resource.Item{
{ID: "1", Updated: now, Payload: map[string]interface{}{"id": "1"}},
})
test := index.Bind("test", schema.Schema{Fields: schema.Fields{"id": {}}}, s, resource.DefaultConf)
r, _ := http.NewRequest("PATCH", "/test/1", bytes.NewBufferString(`{"id": "1"}`))
r.Header.Set("If-Unmodified-Since", "invalid date")
rm := &RouteMatch{
ResourcePath: []*ResourcePathComponent{
&ResourcePathComponent{
Name: "test",
Field: "id",
Value: "1",
Resource: test,
},
},
}
status, _, body := itemPatch(context.TODO(), r, rm)
assert.Equal(t, http.StatusBadRequest, status)
if assert.IsType(t, body, &Error{}) {
err := body.(*Error)
assert.Equal(t, http.StatusBadRequest, err.Code)
assert.Equal(t, "Invalid If-Unmodified-Since header", err.Message)
}
}
开发者ID:rs,项目名称:rest-layer,代码行数:28,代码来源:method_item_patch_test.go
示例2: TestHandlerPatchItemCannotChangeID
func TestHandlerPatchItemCannotChangeID(t *testing.T) {
index := resource.NewIndex()
s := mem.NewHandler()
s.Insert(context.TODO(), []*resource.Item{
{ID: "1", Payload: map[string]interface{}{"id": "1"}},
})
test := index.Bind("test", schema.Schema{Fields: schema.Fields{"id": {}}}, s, resource.DefaultConf)
r, _ := http.NewRequest("PATCH", "/test/1", bytes.NewBufferString(`{"id": "2"}`))
rm := &RouteMatch{
ResourcePath: []*ResourcePathComponent{
&ResourcePathComponent{
Name: "test",
Field: "id",
Value: "1",
Resource: test,
},
},
}
status, headers, body := itemPatch(context.TODO(), r, rm)
assert.Equal(t, 422, status)
assert.Nil(t, headers)
if assert.IsType(t, body, &Error{}) {
err := body.(*Error)
assert.Equal(t, 422, err.Code)
assert.Equal(t, "Cannot change document ID", err.Message)
}
}
开发者ID:rs,项目名称:rest-layer,代码行数:27,代码来源:method_item_patch_test.go
示例3: TestNewWorkerPool
func TestNewWorkerPool(t *testing.T) {
var count int64
fn := func() {
atomic.AddInt64(&count, 1)
}
p := concurrency.NewWorkerPool(context.TODO(), concurrency.Config{
CloseTimeout: time.Millisecond * 200,
Capacity: 16,
})
err := p.Open()
assert.NoError(t, err)
wg := &sync.WaitGroup{}
for i := 0; i < 100; i++ {
wg.Add(1)
err = p.Execute(context.TODO(), func() {
defer wg.Done()
fn()
})
}
wg.Wait()
err = p.Close()
assert.NoError(t, err)
err = p.Wait()
assert.NoError(t, err)
assert.EqualValues(t, 100, count)
}
开发者ID:akaspin,项目名称:concurrency,代码行数:34,代码来源:worker_test.go
示例4: TestHandlerPatchItemFound
func TestHandlerPatchItemFound(t *testing.T) {
index := resource.NewIndex()
s := mem.NewHandler()
s.Insert(context.TODO(), []*resource.Item{
{ID: "1", Payload: map[string]interface{}{"id": "1", "foo": "bar"}},
{ID: "2", Payload: map[string]interface{}{"id": "2", "foo": "bar"}},
{ID: "3", Payload: map[string]interface{}{"id": "3", "foo": "bar"}},
})
test := index.Bind("test", schema.Schema{Fields: schema.Fields{
"id": {},
"foo": {},
}}, s, resource.DefaultConf)
r, _ := http.NewRequest("PATCH", "/test/2", bytes.NewBufferString(`{"id": "2", "foo": "baz"}`))
rm := &RouteMatch{
ResourcePath: []*ResourcePathComponent{
&ResourcePathComponent{
Name: "test",
Field: "id",
Value: "2",
Resource: test,
},
},
}
status, headers, body := itemPatch(context.TODO(), r, rm)
assert.Equal(t, http.StatusOK, status)
assert.Nil(t, headers)
if assert.IsType(t, body, &resource.Item{}) {
i := body.(*resource.Item)
assert.Equal(t, "2", i.ID)
assert.Equal(t, map[string]interface{}{"id": "2", "foo": "baz"}, i.Payload)
}
}
开发者ID:rs,项目名称:rest-layer,代码行数:32,代码来源:method_item_patch_test.go
示例5: TestHandlerPutItemReplaceModeNotAllowed
func TestHandlerPutItemReplaceModeNotAllowed(t *testing.T) {
index := resource.NewIndex()
s := mem.NewHandler()
s.Insert(context.TODO(), []*resource.Item{
{ID: "1", Payload: map[string]interface{}{"id": "1"}},
})
test := index.Bind("test", schema.Schema{Fields: schema.Fields{"id": {}}}, s, resource.Conf{
AllowedModes: []resource.Mode{resource.Create},
})
r, _ := http.NewRequest("PUT", "/test/1", bytes.NewBufferString(`{}`))
rm := &RouteMatch{
ResourcePath: []*ResourcePathComponent{
&ResourcePathComponent{
Name: "test",
Field: "id",
Value: "1",
Resource: test,
},
},
}
status, headers, body := itemPut(context.TODO(), r, rm)
assert.Equal(t, http.StatusMethodNotAllowed, status)
assert.Nil(t, headers)
if assert.IsType(t, body, &Error{}) {
err := body.(*Error)
assert.Equal(t, http.StatusMethodNotAllowed, err.Code)
assert.Equal(t, "Invalid method", err.Message)
}
}
开发者ID:rs,项目名称:rest-layer,代码行数:29,代码来源:method_item_put_test.go
示例6: TestAlertingExecutor
func TestAlertingExecutor(t *testing.T) {
Convey("Test alert execution", t, func() {
handler := NewEvalHandler()
Convey("Show return triggered with single passing condition", func() {
context := NewEvalContext(context.TODO(), &Rule{
Conditions: []Condition{&conditionStub{
firing: true,
}},
})
handler.Eval(context)
So(context.Firing, ShouldEqual, true)
})
Convey("Show return false with not passing asdf", func() {
context := NewEvalContext(context.TODO(), &Rule{
Conditions: []Condition{
&conditionStub{firing: true, matches: []*EvalMatch{&EvalMatch{}, &EvalMatch{}}},
&conditionStub{firing: false},
},
})
handler.Eval(context)
So(context.Firing, ShouldEqual, false)
})
})
}
开发者ID:wk66,项目名称:grafana,代码行数:28,代码来源:eval_handler_test.go
示例7: TestHandlerGetItem
func TestHandlerGetItem(t *testing.T) {
s := mem.NewHandler()
s.Insert(context.TODO(), []*resource.Item{
{ID: "1", Payload: map[string]interface{}{"id": "1"}},
{ID: "2", Payload: map[string]interface{}{"id": "2"}},
{ID: "3", Payload: map[string]interface{}{"id": "3"}},
})
index := resource.NewIndex()
test := index.Bind("test", schema.Schema{}, s, resource.DefaultConf)
r, _ := http.NewRequest("GET", "/test/2", nil)
rm := &RouteMatch{
ResourcePath: []*ResourcePathComponent{
&ResourcePathComponent{
Name: "test",
Field: "id",
Value: "2",
Resource: test,
},
},
}
status, headers, body := itemGet(context.TODO(), r, rm)
assert.Equal(t, http.StatusOK, status)
assert.Nil(t, headers)
if assert.IsType(t, body, &resource.Item{}) {
i := body.(*resource.Item)
assert.Equal(t, "2", i.ID)
}
}
开发者ID:rs,项目名称:rest-layer,代码行数:28,代码来源:method_item_get_test.go
示例8: TestHandlerDeleteItemEtag
func TestHandlerDeleteItemEtag(t *testing.T) {
s := mem.NewHandler()
s.Insert(context.TODO(), []*resource.Item{
{ID: "1", ETag: "a", Payload: map[string]interface{}{"id": "1"}},
})
index := resource.NewIndex()
test := index.Bind("test", schema.Schema{
Fields: schema.Fields{"foo": {Filterable: true}},
}, s, resource.DefaultConf)
r, _ := http.NewRequest("DELETE", "/test/2", nil)
r.Header.Set("If-Match", "a")
rm := &RouteMatch{
ResourcePath: []*ResourcePathComponent{
&ResourcePathComponent{
Name: "test",
Field: "id",
Value: "1",
Resource: test,
},
},
}
status, headers, body := itemDelete(context.TODO(), r, rm)
assert.Equal(t, http.StatusNoContent, status)
assert.Nil(t, headers)
assert.Nil(t, body)
l, err := s.Find(context.TODO(), resource.NewLookup(), 1, -1)
assert.NoError(t, err)
assert.Len(t, l.Items, 0)
}
开发者ID:rs,项目名称:rest-layer,代码行数:30,代码来源:method_item_delete_test.go
示例9: TestHandlerGetItemModifiedDontMatch
func TestHandlerGetItemModifiedDontMatch(t *testing.T) {
s := mem.NewHandler()
now := time.Now()
yesterday := now.Add(-24 * time.Hour)
s.Insert(context.TODO(), []*resource.Item{
{ID: "1", Updated: now, Payload: map[string]interface{}{"id": "1"}},
{ID: "2", Updated: now, Payload: map[string]interface{}{"id": "2"}},
{ID: "3", Updated: now, Payload: map[string]interface{}{"id": "3"}},
})
index := resource.NewIndex()
test := index.Bind("test", schema.Schema{}, s, resource.DefaultConf)
r, _ := http.NewRequest("GET", "/test/2", nil)
r.Header.Set("If-Modified-Since", yesterday.Format(time.RFC1123))
rm := &RouteMatch{
ResourcePath: []*ResourcePathComponent{
&ResourcePathComponent{
Name: "test",
Field: "id",
Value: "2",
Resource: test,
},
},
}
status, headers, body := itemGet(context.TODO(), r, rm)
assert.Equal(t, http.StatusOK, status)
assert.Nil(t, headers)
if assert.IsType(t, body, &resource.Item{}) {
i := body.(*resource.Item)
assert.Equal(t, "2", i.ID)
}
}
开发者ID:rs,项目名称:rest-layer,代码行数:31,代码来源:method_item_get_test.go
示例10: TestHandlerGetItemInvalidIfModifiedSince
func TestHandlerGetItemInvalidIfModifiedSince(t *testing.T) {
s := mem.NewHandler()
now := time.Now()
s.Insert(context.TODO(), []*resource.Item{
{ID: "1", Updated: now, Payload: map[string]interface{}{"id": "1"}},
{ID: "2", Updated: now, Payload: map[string]interface{}{"id": "2"}},
{ID: "3", Updated: now, Payload: map[string]interface{}{"id": "3"}},
})
index := resource.NewIndex()
test := index.Bind("test", schema.Schema{}, s, resource.DefaultConf)
r, _ := http.NewRequest("GET", "/test/2", nil)
r.Header.Set("If-Modified-Since", "invalid date")
rm := &RouteMatch{
ResourcePath: []*ResourcePathComponent{
&ResourcePathComponent{
Name: "test",
Field: "id",
Value: "2",
Resource: test,
},
},
}
status, headers, body := itemGet(context.TODO(), r, rm)
assert.Equal(t, http.StatusBadRequest, status)
assert.Nil(t, headers)
if assert.IsType(t, body, &Error{}) {
err := body.(*Error)
assert.Equal(t, http.StatusBadRequest, err.Code)
assert.Equal(t, "Invalid If-Modified-Since header", err.Message)
}
}
开发者ID:rs,项目名称:rest-layer,代码行数:31,代码来源:method_item_get_test.go
示例11: TestHandlerGetItemEtagMatch
func TestHandlerGetItemEtagMatch(t *testing.T) {
s := mem.NewHandler()
s.Insert(context.TODO(), []*resource.Item{
{ID: "1", ETag: "a", Payload: map[string]interface{}{"id": "1"}},
{ID: "2", ETag: "a", Payload: map[string]interface{}{"id": "2"}},
{ID: "3", ETag: "a", Payload: map[string]interface{}{"id": "3"}},
})
index := resource.NewIndex()
test := index.Bind("test", schema.Schema{}, s, resource.DefaultConf)
r, _ := http.NewRequest("GET", "/test/2", nil)
r.Header.Set("If-None-Match", "a")
rm := &RouteMatch{
ResourcePath: []*ResourcePathComponent{
&ResourcePathComponent{
Name: "test",
Field: "id",
Value: "2",
Resource: test,
},
},
}
status, headers, body := itemGet(context.TODO(), r, rm)
assert.Equal(t, http.StatusNotModified, status)
assert.Nil(t, headers)
assert.Nil(t, body)
}
开发者ID:rs,项目名称:rest-layer,代码行数:26,代码来源:method_item_get_test.go
示例12: TestGitHubClient_Upload
func TestGitHubClient_Upload(t *testing.T) {
client := testGithubClient(t)
testTag := "github-client-upload-asset"
req := &github.RepositoryRelease{
TagName: github.String(testTag),
Draft: github.Bool(true),
}
release, err := client.CreateRelease(context.TODO(), req)
if err != nil {
t.Fatal("CreateRelease failed:", err)
}
defer func() {
if err := client.DeleteRelease(context.TODO(), *release.ID); err != nil {
t.Fatalf("DeleteRelease failed: %s", err)
}
}()
filename := filepath.Join("./testdata", "darwin_386")
asset, err := client.UploadAsset(context.TODO(), *release.ID, filename)
if err != nil {
t.Fatal("UploadAsset failed:", err)
}
githubClient, ok := client.(*GitHubClient)
if !ok {
t.Fatal("Faield to asset to GithubClient")
}
rc, url, err := githubClient.Repositories.DownloadReleaseAsset(
githubClient.Owner, githubClient.Repo, *asset.ID)
if err != nil {
t.Fatal("DownloadReleaseAsset failed:", err)
}
var buf bytes.Buffer
if len(url) != 0 {
res, err := http.Get(url)
if err != nil {
t.Fatal("http.Get failed:", err)
}
if _, err := io.Copy(&buf, res.Body); err != nil {
t.Fatal("Copy failed:", err)
}
res.Body.Close()
} else {
if _, err := io.Copy(&buf, rc); err != nil {
t.Fatal("Copy failed:", err)
}
rc.Close()
}
if got, want := buf.String(), "darwin_386\n"; got != want {
t.Fatalf("file body is %q, want %q", got, want)
}
}
开发者ID:tchssk,项目名称:ghr,代码行数:60,代码来源:github_test.go
示例13: TestHandlerGetListInvalidPage
func TestHandlerGetListInvalidPage(t *testing.T) {
index := resource.NewIndex()
test := index.Bind("test", schema.Schema{}, nil, resource.DefaultConf)
r, _ := http.NewRequest("GET", "/test", nil)
rm := &RouteMatch{
ResourcePath: []*ResourcePathComponent{
&ResourcePathComponent{
Name: "test",
Resource: test,
},
},
Params: url.Values{
"page": []string{"invalid"},
},
}
status, headers, body := listGet(context.TODO(), r, rm)
assert.Equal(t, 422, status)
assert.Nil(t, headers)
if assert.IsType(t, body, &Error{}) {
err := body.(*Error)
assert.Equal(t, 422, err.Code)
assert.Equal(t, "Invalid `page` parameter", err.Message)
}
rm.Params.Set("page", "-1")
status, headers, body = listGet(context.TODO(), r, rm)
assert.Equal(t, 422, status)
assert.Nil(t, headers)
if assert.IsType(t, body, &Error{}) {
err := body.(*Error)
assert.Equal(t, 422, err.Code)
assert.Equal(t, "Invalid `page` parameter", err.Message)
}
}
开发者ID:rs,项目名称:rest-layer,代码行数:35,代码来源:method_get_test.go
示例14: TestHandlerDeleteList
func TestHandlerDeleteList(t *testing.T) {
s := mem.NewHandler()
s.Insert(context.TODO(), []*resource.Item{
{ID: "1", Payload: map[string]interface{}{}},
{ID: "2", Payload: map[string]interface{}{}},
{ID: "3", Payload: map[string]interface{}{}},
{ID: "4", Payload: map[string]interface{}{}},
{ID: "5", Payload: map[string]interface{}{}},
})
index := resource.NewIndex()
test := index.Bind("test", schema.Schema{}, s, resource.DefaultConf)
r, _ := http.NewRequest("DELETE", "/test", bytes.NewBufferString("{}"))
rm := &RouteMatch{
ResourcePath: []*ResourcePathComponent{
&ResourcePathComponent{
Name: "test",
Resource: test,
},
},
}
status, headers, body := listDelete(context.TODO(), r, rm)
assert.Equal(t, http.StatusNoContent, status)
assert.Equal(t, http.Header{"X-Total": []string{"5"}}, headers)
assert.Nil(t, body)
l, err := s.Find(context.TODO(), resource.NewLookup(), 1, -1)
assert.NoError(t, err)
assert.Len(t, l.Items, 0)
}
开发者ID:rs,项目名称:rest-layer,代码行数:29,代码来源:method_delete_test.go
示例15: TestHandlerGetListPagination
func TestHandlerGetListPagination(t *testing.T) {
s := mem.NewHandler()
s.Insert(context.TODO(), []*resource.Item{
{ID: "1"},
{ID: "2"},
{ID: "3"},
{ID: "4"},
{ID: "5"},
})
index := resource.NewIndex()
test := index.Bind("test", schema.Schema{}, s, resource.DefaultConf)
r, _ := http.NewRequest("GET", "/test", nil)
rm := &RouteMatch{
ResourcePath: []*ResourcePathComponent{
&ResourcePathComponent{
Name: "test",
Resource: test,
},
},
Params: url.Values{
"page": []string{"2"},
"limit": []string{"2"},
},
}
status, headers, body := listGet(context.TODO(), r, rm)
assert.Equal(t, http.StatusOK, status)
assert.Nil(t, headers)
if assert.IsType(t, body, &resource.ItemList{}) {
l := body.(*resource.ItemList)
if assert.Len(t, l.Items, 2) {
assert.Equal(t, "3", l.Items[0].ID)
assert.Equal(t, "4", l.Items[1].ID)
}
assert.Equal(t, 2, l.Page)
assert.Equal(t, 5, l.Total)
}
rm.Params.Set("page", "3")
status, headers, body = listGet(context.TODO(), r, rm)
assert.Equal(t, http.StatusOK, status)
assert.Nil(t, headers)
if assert.IsType(t, body, &resource.ItemList{}) {
l := body.(*resource.ItemList)
if assert.Len(t, l.Items, 1) {
assert.Equal(t, "5", l.Items[0].ID)
}
assert.Equal(t, 3, l.Page)
assert.Equal(t, 5, l.Total)
}
}
开发者ID:rs,项目名称:rest-layer,代码行数:51,代码来源:method_get_test.go
示例16: IdentifyConn
func (ids *IDService) IdentifyConn(c inet.Conn) {
ids.currmu.Lock()
if wait, found := ids.currid[c]; found {
ids.currmu.Unlock()
log.Debugf("IdentifyConn called twice on: %s", c)
<-wait // already identifying it. wait for it.
return
}
ch := make(chan struct{})
ids.currid[c] = ch
ids.currmu.Unlock()
defer close(ch)
s, err := c.NewStream()
if err != nil {
log.Debugf("error opening initial stream for %s: %s", ID, err)
log.Event(context.TODO(), "IdentifyOpenFailed", c.RemotePeer())
c.Close()
return
}
defer s.Close()
s.SetProtocol(ID)
if ids.Reporter != nil {
s = mstream.WrapStream(s, ids.Reporter)
}
// ok give the response to our handler.
if err := msmux.SelectProtoOrFail(ID, s); err != nil {
log.Debugf("error writing stream header for %s", ID)
log.Event(context.TODO(), "IdentifyOpenFailed", c.RemotePeer())
return
}
ids.ResponseHandler(s)
ids.currmu.Lock()
_, found := ids.currid[c]
delete(ids.currid, c)
ids.currmu.Unlock()
if !found {
log.Debugf("IdentifyConn failed to find channel (programmer error) for %s", c)
return
}
}
开发者ID:libp2p,项目名称:go-libp2p,代码行数:48,代码来源:id.go
示例17: TestRun
func TestRun(t *testing.T) {
t.Parallel()
outStream, errStream := new(bytes.Buffer), new(bytes.Buffer)
cli := &CLI{outStream: outStream, errStream: errStream}
tag := "run"
command := fmt.Sprintf(
"ghr -repository %s %s %s", TestRepo, tag, TestDir)
args := strings.Split(command, " ")
if got, want := cli.Run(args), ExitCodeOK; got != want {
t.Fatalf("%q exits %d, want %d\n\n%s", command, got, want, errStream.String())
}
client := testGithubClient(t)
release, err := client.GetRelease(context.TODO(), tag)
if err != nil {
t.Fatalf("GetRelease failed: %s\n\n%s", err, outStream.String())
}
defer func() {
if err := client.DeleteRelease(context.TODO(), *release.ID); err != nil {
t.Fatal("DeleteRelease failed:", err)
}
if err := client.DeleteTag(context.TODO(), tag); err != nil {
t.Fatal("DeleteTag failed:", err)
}
}()
want := "==> Create a new release"
if got := outStream.String(); !strings.Contains(got, want) {
t.Fatalf("Run outputs %q, want %q", got, want)
}
if got, want := outStream.String(), "--> Uploading:"; !strings.Contains(got, want) {
t.Fatalf("Run outputs %q, want %q", got, want)
}
assets, err := client.ListAssets(context.TODO(), *release.ID)
if err != nil {
t.Fatal("ListAssets failed:", err)
}
if got, want := len(assets), 4; got != want {
t.Fatalf("ListAssets number = %d, want %d", got, want)
}
}
开发者ID:tchssk,项目名称:ghr,代码行数:48,代码来源:cli_test.go
示例18: ListPath
func (cmd *ls) ListPath(b *object.HostDatastoreBrowser, path string, spec types.HostDatastoreBrowserSearchSpec) ([]types.HostDatastoreBrowserSearchResults, error) {
ctx := context.TODO()
path, err := cmd.DatastorePath(path)
if err != nil {
return nil, err
}
search := b.SearchDatastore
if cmd.recurse {
search = b.SearchDatastoreSubFolders
}
task, err := search(ctx, path, &spec)
if err != nil {
return nil, err
}
info, err := task.WaitForResult(ctx, nil)
if err != nil {
return nil, err
}
switch r := info.Result.(type) {
case types.HostDatastoreBrowserSearchResults:
return []types.HostDatastoreBrowserSearchResults{r}, nil
case types.ArrayOfHostDatastoreBrowserSearchResults:
return r.HostDatastoreBrowserSearchResults, nil
default:
panic(fmt.Sprintf("unknown result type: %T", r))
}
}
开发者ID:vmware,项目名称:vic,代码行数:32,代码来源:ls.go
示例19: TestHandlerPostListWithReferenceNoRouter
func TestHandlerPostListWithReferenceNoRouter(t *testing.T) {
s := mem.NewHandler()
index := resource.NewIndex()
index.Bind("foo", schema.Schema{Fields: schema.Fields{"id": {}}}, s, resource.DefaultConf)
bar := index.Bind("bar", schema.Schema{Fields: schema.Fields{
"id": {},
"foo": {Validator: &schema.Reference{Path: "foo"}},
}}, s, resource.DefaultConf)
r, _ := http.NewRequest("POST", "/bar", bytes.NewBufferString(`{"id": "1", "foo": "nonexisting"}`))
rm := &RouteMatch{
ResourcePath: []*ResourcePathComponent{
&ResourcePathComponent{
Name: "bar",
Resource: bar,
},
},
}
status, _, body := listPost(context.TODO(), r, rm)
assert.Equal(t, http.StatusInternalServerError, status)
if assert.IsType(t, &Error{}, body) {
err := body.(*Error)
assert.Equal(t, http.StatusInternalServerError, err.Code)
assert.Equal(t, "Router not available in context", err.Message)
}
}
开发者ID:rs,项目名称:rest-layer,代码行数:25,代码来源:method_post_test.go
示例20: NetworkMap
func (cmd *ovfx) NetworkMap(e *ovf.Envelope) (p []types.OvfNetworkMapping) {
ctx := context.TODO()
finder, err := cmd.DatastoreFlag.Finder()
if err != nil {
return
}
networks := map[string]string{}
if e.Network != nil {
for _, net := range e.Network.Networks {
networks[net.Name] = net.Name
}
}
for _, net := range cmd.Options.NetworkMapping {
networks[net.Name] = net.Network
}
for src, dst := range networks {
if net, err := finder.Network(ctx, dst); err == nil {
p = append(p, types.OvfNetworkMapping{
Name: src,
Network: net.Reference(),
})
}
}
return
}
开发者ID:tjyang,项目名称:govmomi,代码行数:29,代码来源:ovf.go
注:本文中的context.TODO函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论