本文整理汇总了Golang中github.com/facebookgo/ensure.Nil函数的典型用法代码示例。如果您正苦于以下问题:Golang Nil函数的具体用法?Golang Nil怎么用?Golang Nil使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了Nil函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: TestGeneralCase
func TestGeneralCase(t *testing.T) {
fn := new(WalkFn)
root := makeEmptyRoot(t)
defer os.RemoveAll(root)
ensure.Nil(t, os.MkdirAll(filepath.Join(root, "a", "a1"), 0755))
createFile(t, filepath.Join(root, "a", "a1", "1"))
ensure.Nil(t, os.Mkdir(filepath.Join(root, "b"), 0755))
createFile(t, filepath.Join(root, "b", "2"))
ensure.Nil(t, os.Symlink(filepath.Join(root, "b"), filepath.Join(root, "a", "a1", "a2")))
ensure.Nil(t, os.Symlink(filepath.Join(root, "a", "a1", "1"), filepath.Join(root, "top")))
ensure.Nil(t, Walk(root, fn.walkFn))
ensure.DeepEqual(t,
fn.List,
[]string{
root,
filepath.Join(root, "a"),
filepath.Join(root, "a", "a1"),
filepath.Join(root, "a", "a1", "1"),
filepath.Join(root, "a", "a1", "a2"),
filepath.Join(root, "a", "a1", "a2", "2"),
filepath.Join(root, "b"),
filepath.Join(root, "b", "2"),
filepath.Join(root, "top"),
},
)
}
开发者ID:postfix,项目名称:symwalk,代码行数:32,代码来源:walk_test.go
示例2: TestParserEmail
func TestParserEmail(t *testing.T) {
t.Parallel()
h := parsecli.NewTokenHarness(t)
h.MakeEmptyRoot()
defer h.Stop()
ensure.Nil(t, parsecli.CreateConfigWithContent(filepath.Join(h.Env.Root, parsecli.ParseLocal), "{}"))
ensure.Nil(t,
parsecli.CreateConfigWithContent(
filepath.Join(h.Env.Root, parsecli.ParseProject),
`{"project_type": 1}`,
),
)
var c configureCmd
ensure.Nil(t, c.parserEmail(h.Env, []string{"email2"}))
ensure.DeepEqual(
t,
h.Out.String(),
`Successfully configured email for current project to: "email2"
`,
)
ensure.Err(t, c.parserEmail(h.Env, nil), regexp.MustCompile("Invalid args:"))
ensure.Err(t, c.parserEmail(h.Env, []string{"a", "b"}), regexp.MustCompile("Invalid args:"))
}
开发者ID:swhitley,项目名称:parse-cli,代码行数:27,代码来源:configure_test.go
示例3: TestTriggerHooksUpdate
func TestTriggerHooksUpdate(t *testing.T) {
t.Parallel()
h := newTriggersHarness(t)
var tr triggerHooksCmd
h.env.In =
ioutil.NopCloser(strings.NewReader("foo\nbeforeSave\napi.example.com/_foo/beforeSave\n"))
ensure.Nil(t, tr.triggerHooksUpdate(h.env, nil))
ensure.DeepEqual(t,
h.Out.String(),
`Please enter following details about the trigger webhook
Class name: Trigger name: URL: https://Successfully update the "beforeSave" trigger for class "foo" to point to "https://api.example.com/_foo/beforeSave"
`)
ensure.DeepEqual(t, h.Err.String(), "WARNING: beforeSave trigger already exists for class: foo\n")
h.Out.Reset()
h.Err.Reset()
h.env.In =
ioutil.NopCloser(strings.NewReader("bar\nafterSave\napi.example.com/_bar/afterSave\n"))
ensure.Nil(t, tr.triggerHooksUpdate(h.env, nil))
ensure.DeepEqual(t,
h.Out.String(),
`Please enter following details about the trigger webhook
Class name: Trigger name: URL: https://Successfully update the "afterSave" trigger for class "bar" to point to "https://api.example.com/_bar/afterSave"
`)
ensure.DeepEqual(t, h.Err.String(), "")
}
开发者ID:huamichaelchen,项目名称:parse-cli,代码行数:31,代码来源:triggers_cmd_test.go
示例4: TestExistingConnState
func TestExistingConnState(t *testing.T) {
t.Parallel()
hello := []byte("hello")
fin := make(chan struct{})
okHandler := func(w http.ResponseWriter, r *http.Request) {
defer close(fin)
w.Write(hello)
}
var called int32
listener, err := net.Listen("tcp", "127.0.0.1:0")
ensure.Nil(t, err)
server := &http.Server{
Handler: http.HandlerFunc(okHandler),
ConnState: func(c net.Conn, s http.ConnState) {
atomic.AddInt32(&called, 1)
},
}
transport := &http.Transport{}
client := &http.Client{Transport: transport}
down := &httpdown.HTTP{}
s := down.Serve(server, listener)
res, err := client.Get(fmt.Sprintf("http://%s/", listener.Addr().String()))
ensure.Nil(t, err)
actualBody, err := ioutil.ReadAll(res.Body)
ensure.Nil(t, err)
ensure.DeepEqual(t, actualBody, hello)
ensure.Nil(t, res.Body.Close())
ensure.Nil(t, s.Stop())
<-fin
ensure.True(t, atomic.LoadInt32(&called) > 0)
}
开发者ID:fwessels,项目名称:minio-xl,代码行数:34,代码来源:httpdown_test.go
示例5: TestMergeOperator
func TestMergeOperator(t *testing.T) {
var (
givenKey = []byte("hello")
givenVal1 = []byte("foo")
givenVal2 = []byte("bar")
givenMerged = []byte("foobar")
)
merger := &mockMergeOperator{
fullMerge: func(key, existingValue []byte, operands [][]byte) ([]byte, bool) {
ensure.DeepEqual(&fatalAsError{t}, key, givenKey)
ensure.DeepEqual(&fatalAsError{t}, existingValue, givenVal1)
ensure.DeepEqual(&fatalAsError{t}, operands, [][]byte{givenVal2})
return givenMerged, true
},
}
db := newTestDB(t, "TestMergeOperator", func(opts *Options) {
opts.SetMergeOperator(merger)
})
defer db.Close()
wo := NewDefaultWriteOptions()
ensure.Nil(t, db.Put(wo, givenKey, givenVal1))
ensure.Nil(t, db.Merge(wo, givenKey, givenVal2))
// trigger a compaction to ensure that a merge is performed
db.CompactRange(Range{nil, nil})
ro := NewDefaultReadOptions()
v1, err := db.Get(ro, givenKey)
defer v1.Free()
ensure.Nil(t, err)
ensure.DeepEqual(t, v1.Data(), givenMerged)
}
开发者ID:arbortech,项目名称:gorocksdb,代码行数:33,代码来源:merge_operator_test.go
示例6: TestCreateNewApp
func TestCreateNewApp(t *testing.T) {
t.Parallel()
h, _ := newAppHarness(t)
defer h.Stop()
a := defaultApps
h.env.In = ioutil.NopCloser(strings.NewReader("D"))
app, err := a.createApp(h.env)
ensure.Nil(t, err)
ensure.Nil(t, a.printApp(h.env, app))
ensure.DeepEqual(t, h.Out.String(),
`Please choose a name for your Parse app.
Note that this name will appear on the Parse website,
but it does not have to be the same as your mobile app's public name.
Name: Name D
DashboardURL https://api.example.com/dashboard/D
ApplicationID applicationID.D
ClientKey clientKey.D
JavaScriptKey javaScriptKey.D
WindowsKey windowsKey.D
WebhookKey webhookKey.D
RestKey restKey.D
MasterKey masterKey.D
ClientPushEnabled false
ClientClassCreationEnabled true
RequireRevocableSessions true
RevokeSessionOnPasswordChange true
`)
}
开发者ID:WilliamRen,项目名称:parse-cli,代码行数:31,代码来源:apps_test.go
示例7: TestDeleteHook
func TestDeleteHook(t *testing.T) {
t.Parallel()
h := newHarness(t)
defer h.Stop()
c := &configureCmd{}
_, _, err := c.deleteHook(h.env, nil, "delete")
ensure.Err(t, err, regexp.MustCompile("invalid format"))
_, _, err = c.deleteHook(h.env, nil, "invalid", "1")
ensure.Err(t, err, regexp.MustCompile("invalid format"))
_, _, err = c.deleteHook(h.env, nil, "delete", "1", "2")
ensure.Err(t, err, regexp.MustCompile("invalid trigger name"))
var hooksOps []*hookOperation
_, ops, err := c.deleteHook(h.env, hooksOps, "delete", "call")
ensure.Nil(t, err)
ensure.DeepEqual(t, ops[len(ops)-1].method, "DELETE")
ensure.DeepEqual(
t,
*ops[len(ops)-1].function,
functionHook{FunctionName: "call"},
)
_, ops, err = c.deleteHook(h.env, hooksOps, "delete", "_User", "beforeSave")
ensure.Nil(t, err)
ensure.DeepEqual(t, ops[len(ops)-1].method, "DELETE")
ensure.DeepEqual(
t,
*ops[len(ops)-1].trigger,
triggerHook{ClassName: "_User", TriggerName: "beforeSave"},
)
}
开发者ID:Georotzen,项目名称:parse-cli,代码行数:34,代码来源:configure_cmd_test.go
示例8: newServer
func newServer(t *testing.T, handler func(net.Conn)) *testServer {
ln, err := net.Listen("tcp", ":")
ensure.Nil(t, err)
ts := &testServer{
ln: ln,
stop: make(chan struct{}),
}
go func() {
for {
select {
case <-ts.stop:
return
case <-time.After(100 * time.Millisecond):
conn, err := ts.ln.Accept()
if err != nil {
ensure.Nil(t, err)
continue
}
go handler(conn)
}
}
}()
return ts
}
开发者ID:heltonmarx,项目名称:goami,代码行数:25,代码来源:socket_test.go
示例9: TestClientDo
func TestClientDo(t *testing.T) {
given := map[string]string{"answer": "42"}
givenJSON, err := json.Marshal(given)
ensure.Nil(t, err)
wrapped := []map[string]interface{}{
{
"code": http.StatusOK,
"body": string(givenJSON),
},
}
c := &Client{
Client: &fbapi.Client{
Transport: fTransport(func(r *http.Request) (*http.Response, error) {
return &http.Response{
StatusCode: http.StatusOK,
Body: ioutil.NopCloser(jsonpipe.Encode(wrapped)),
}, nil
}),
},
}
var actual map[string]string
_, err = c.Do(&http.Request{
Method: "GET",
URL: &url.URL{},
}, &actual)
ensure.Nil(t, err)
ensure.DeepEqual(t, actual, given)
}
开发者ID:jimneath,项目名称:fbapi,代码行数:28,代码来源:fbbatch_test.go
示例10: TestApplyForceRemoveExistingWhenNotFound
func TestApplyForceRemoveExistingWhenNotFound(t *testing.T) {
var inspectCalls int
container, err := NewContainer(
ContainerName("x"),
ContainerConfig(&dockerclient.ContainerConfig{Image: "foo"}),
ContainerForceRemoveExisting(),
)
ensure.Nil(t, err)
client := &mockClient{
inspectContainer: func(name string) (*dockerclient.ContainerInfo, error) {
inspectCalls++
switch inspectCalls {
case 1:
return nil, dockerclient.ErrNotFound
case 2:
return &dockerclient.ContainerInfo{Id: "y"}, nil
}
panic("not reached")
},
createContainer: func(config *dockerclient.ContainerConfig, name string) (string, error) {
return "", nil
},
startContainer: func(id string, config *dockerclient.HostConfig) error {
return nil
},
}
ensure.Nil(t, container.Apply(client))
}
开发者ID:hopkings2008,项目名称:dockerutil,代码行数:28,代码来源:dockergoal_test.go
示例11: TestGetHostFromURL
func TestGetHostFromURL(t *testing.T) {
urlStr := "https://api.parse.com/1/"
host, err := getHostFromURL(urlStr, "")
ensure.Nil(t, err)
ensure.DeepEqual(t, host, "api.parse.com")
urlStr = "https://api.parse.com/1/"
host, err = getHostFromURL(urlStr, "[email protected]")
ensure.Nil(t, err)
ensure.DeepEqual(t, host, "api.parse.com#[email protected]")
urlStr = "https://api.example.com:8080/1/"
host, err = getHostFromURL(urlStr, "")
ensure.Nil(t, err)
ensure.DeepEqual(t, host, "api.example.com")
urlStr = "https://api.example.com:8080/1/"
host, err = getHostFromURL(urlStr, "[email protected]")
ensure.Nil(t, err)
ensure.DeepEqual(t, host, "api.example.com#[email protected]")
urlStr = "api.example.com:8080:90"
host, err = getHostFromURL(urlStr, "")
ensure.Err(t, err, regexp.MustCompile("not a valid url"))
}
开发者ID:Georotzen,项目名称:parse-cli,代码行数:25,代码来源:utils_test.go
示例12: TestComparator
func TestComparator(t *testing.T) {
db := newTestDB(t, "TestComparator", func(opts *Options) {
opts.SetComparator(&bytesReverseComparator{})
})
defer db.Close()
// insert keys
givenKeys := [][]byte{[]byte("key1"), []byte("key2"), []byte("key3")}
wo := NewDefaultWriteOptions()
for _, k := range givenKeys {
ensure.Nil(t, db.Put(wo, k, []byte("val")))
}
// create a iterator to collect the keys
ro := NewDefaultReadOptions()
iter := db.NewIterator(ro)
defer iter.Close()
// we seek to the last key and iterate in reverse order
// to match given keys
var actualKeys [][]byte
for iter.SeekToLast(); iter.Valid(); iter.Prev() {
key := make([]byte, 4)
copy(key, iter.Key().Data())
actualKeys = append(actualKeys, key)
}
ensure.Nil(t, iter.Err())
// ensure that the order is correct
ensure.DeepEqual(t, actualKeys, givenKeys)
}
开发者ID:arbortech,项目名称:gorocksdb,代码行数:31,代码来源:comparator_test.go
示例13: TestSecondUnixListenInherited
func TestSecondUnixListenInherited(t *testing.T) {
var n Net
tmpfile, err := ioutil.TempFile("", "TestSecondUnixListenInherited-")
ensure.Nil(t, err)
ensure.Nil(t, tmpfile.Close())
ensure.Nil(t, os.Remove(tmpfile.Name()))
defer os.Remove(tmpfile.Name())
l1, err := net.Listen("unix", tmpfile.Name())
ensure.Nil(t, err)
file, err := l1.(*net.UnixListener).File()
ensure.Nil(t, err)
n.fdStart = dup(t, int(file.Fd()))
ensure.Nil(t, file.Close())
os.Setenv(envCountKey, "1")
ensure.Nil(t, n.inherit())
ensure.DeepEqual(t, len(n.inherited), 1)
l2, err := n.Listen("unix", tmpfile.Name())
ensure.Nil(t, err)
ensure.DeepEqual(t, len(n.active), 1)
ensure.DeepEqual(t, n.inherited[0], nil)
_, err = n.Listen("unix", tmpfile.Name())
ensure.Err(t, err, regexp.MustCompile("bind: address already in use$"))
ensure.Nil(t, l1.Close())
ensure.Nil(t, l2.Close())
}
开发者ID:absolute8511,项目名称:grace,代码行数:25,代码来源:net_test.go
示例14: TestNewError
func TestNewError(t *testing.T) {
t.Parallel()
// expected stats
statsDone := make(chan struct{})
hc := &stats.HookClient{
BumpSumHook: func(key string, val float64) {
if key == "acquire.error.new" {
close(statsDone)
}
},
}
expected := errors.New("")
p := Pool{
New: func() (io.Closer, error) { return nil, expected },
Stats: hc,
Max: 1,
MinIdle: 1,
IdleTimeout: time.Hour,
ClosePoolSize: 2,
}
r, actual := p.Acquire()
ensure.Nil(t, r)
ensure.DeepEqual(t, actual, expected)
ensure.Nil(t, p.Close())
<-statsDone
}
开发者ID:intercom,项目名称:dvara,代码行数:28,代码来源:rpool_test.go
示例15: initProject
func initProject(t *testing.T, root string) ([]string, []string) {
dirs := []string{
filepath.Join(root, "tester"),
filepath.Join(root, "tester", "inside"),
filepath.Join(root, "tester", "inside", "test"),
filepath.Join(root, "tester", "inside", "tester"),
}
for _, dir := range dirs {
ensure.Nil(t, os.MkdirAll(dir, 0755))
}
files := []string{
filepath.Join(root, "tester", "test"),
filepath.Join(root, "tester", "inside", "tester", "test"),
}
for _, file := range files {
f, err := os.Create(file)
ensure.Nil(t, err)
defer f.Close()
}
return files, dirs
}
开发者ID:swhitley,项目名称:parse-cli,代码行数:25,代码来源:parseignore_test.go
示例16: TestBatchDo
func TestBatchDo(t *testing.T) {
const (
method = "GET"
relativeURL = "/me"
accessToken = "at"
appID = 42
)
given := []*Response{{Code: 42}}
br := &Request{
Method: method,
RelativeURL: relativeURL,
}
b := &Batch{
AccessToken: accessToken,
AppID: appID,
Request: []*Request{br},
}
c := &fbapi.Client{
Transport: fTransport(func(r *http.Request) (*http.Response, error) {
ensure.Nil(t, r.ParseForm())
ensure.DeepEqual(t, r.URL.String(), "https://graph.facebook.com/")
ensure.DeepEqual(t, r.Method, "POST")
ensure.DeepEqual(t, r.PostFormValue("access_token"), accessToken)
ensure.DeepEqual(t, r.PostFormValue("batch_app_id"), fmt.Sprint(appID))
return &http.Response{
StatusCode: http.StatusOK,
Body: ioutil.NopCloser(jsonpipe.Encode(given)),
}, nil
}),
}
actual, err := BatchDo(c, b)
ensure.Nil(t, err)
ensure.DeepEqual(t, actual, given)
}
开发者ID:jimneath,项目名称:fbapi,代码行数:34,代码来源:fbbatch_test.go
示例17: TestNewCmdContent
func TestNewCmdContent(t *testing.T) {
t.Parallel()
h, n := newNewCmdHarness(t)
defer h.Stop()
ensure.Nil(t, n.cloneSampleCloudCode(h.env, true))
for _, newProjectFile := range newProjectFiles {
content, err := ioutil.ReadFile(
filepath.Join(h.env.Root, newProjectFile.dirname, newProjectFile.filename),
)
ensure.Nil(t, err)
ensure.DeepEqual(t, string(content), newProjectFile.content)
}
content, err := ioutil.ReadFile(filepath.Join(h.env.Root, parseProject))
ensure.Nil(t, err)
ensure.DeepEqual(t,
string(content),
fmt.Sprintf(
`{
"project_type" : %d,
"parse": {"jssdk":""}
}`,
parseFormat,
),
)
content, err = ioutil.ReadFile(filepath.Join(h.env.Root, parseLocal))
ensure.Nil(t, err)
ensure.DeepEqual(t, string(content), "{}")
}
开发者ID:hassanabidpk,项目名称:parse-cli,代码行数:34,代码来源:new_cmd_test.go
示例18: TestEncodeUint
func TestEncodeUint(t *testing.T) {
var buf bytes.Buffer
// Uint8
var ui8 uint8
ui8 = math.MaxUint8
ensure.Nil(t, encode(&buf, reflect.ValueOf(ui8)))
ensure.DeepEqual(t, fmt.Sprintf("%d\r\n", ui8), buf.String())
buf.Reset()
// Uint16
var ui16 uint16
ui16 = math.MaxUint16
ensure.Nil(t, encode(&buf, reflect.ValueOf(ui16)))
ensure.DeepEqual(t, fmt.Sprintf("%d\r\n", ui16), buf.String())
buf.Reset()
// Uint32
var ui32 uint32
ui32 = math.MaxUint32
ensure.Nil(t, encode(&buf, reflect.ValueOf(ui32)))
ensure.DeepEqual(t, fmt.Sprintf("%d\r\n", ui32), buf.String())
buf.Reset()
// Uint64
var ui64 uint64
ui64 = math.MaxUint64
ensure.Nil(t, encode(&buf, reflect.ValueOf(ui64)))
ensure.DeepEqual(t, fmt.Sprintf("%v\r\n", ui64), buf.String())
buf.Reset()
}
开发者ID:heltonmarx,项目名称:goami,代码行数:31,代码来源:encode_test.go
示例19: TestGenericGetSourceFiles
func TestGenericGetSourceFiles(t *testing.T) {
t.Parallel()
h := newHarness(t)
h.makeEmptyRoot()
defer h.Stop()
ensure.Nil(t, os.Mkdir(filepath.Join(h.env.Root, "src"), 0755))
for _, name := range []string{"index.html"} {
file, err := os.Create(filepath.Join(h.env.Root, "src", name))
ensure.Nil(t, err)
ensure.Nil(t, file.Close())
}
ensure.Nil(t, os.Symlink(filepath.Join(h.env.Root, "src"), filepath.Join(h.env.Root, "public")))
var d deployCmd
files, ignored, err := d.getSourceFiles(
filepath.Join(h.env.Root, "public"),
map[string]struct{}{".html": {}},
h.env,
)
ensure.Nil(t, err)
ensure.DeepEqual(t, files, []string{filepath.Join(h.env.Root, "public", "index.html")})
ensure.DeepEqual(t, len(ignored), 0)
}
开发者ID:Georotzen,项目名称:parse-cli,代码行数:28,代码来源:deploy_cmd_test.go
示例20: TestShouldCreateNewApp
func TestShouldCreateNewApp(t *testing.T) {
t.Parallel()
h := parsecli.NewHarness(t)
defer h.Stop()
n := &newCmd{}
h.Env.In = ioutil.NopCloser(strings.NewReader("new"))
decision, err := n.promptCreateNewApp(h.Env, false)
ensure.Nil(t, err)
ensure.DeepEqual(t, decision, "new")
h.Env.In = ioutil.NopCloser(strings.NewReader("existing"))
decision, err = n.promptCreateNewApp(h.Env, false)
ensure.Nil(t, err)
ensure.DeepEqual(t, decision, "existing")
h.Env.In = ioutil.NopCloser(strings.NewReader("other"))
_, err = n.promptCreateNewApp(h.Env, false)
ensure.Err(t, err, regexp.MustCompile("are the only valid options"))
decision, err = n.promptCreateNewApp(h.Env, true)
ensure.Nil(t, err)
ensure.DeepEqual(t, decision, "existing")
n.createNewApp = true
decision, err = n.promptCreateNewApp(h.Env, true)
ensure.Nil(t, err)
ensure.DeepEqual(t, decision, "new")
}
开发者ID:z7z8th,项目名称:parse-cli,代码行数:30,代码来源:new_test.go
注:本文中的github.com/facebookgo/ensure.Nil函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论