diff --git a/backend/_example/memory_store/accessor/data_test.go b/backend/_example/memory_store/accessor/data_test.go index e1f4769d..1695ce3a 100644 --- a/backend/_example/memory_store/accessor/data_test.go +++ b/backend/_example/memory_store/accessor/data_test.go @@ -9,7 +9,6 @@ package accessor import ( "fmt" "sort" - "strings" "testing" "time" @@ -32,7 +31,7 @@ func TestMemData_CreateAndFind(t *testing.T) { _, err = m.Create(store.Comment{ID: res[0].ID, Locator: store.Locator{URL: "https://radio-t.com", SiteID: "radio-t"}}) require.NotNil(t, err) - assert.True(t, strings.Contains(err.Error(), "dup key"), err.Error()) + assert.Contains(t, err.Error(), "dup key") id, err := m.Create(store.Comment{ID: "id-3", Locator: store.Locator{URL: "https://radio-t2.com", SiteID: "radio-t2"}}) require.NoError(t, err) @@ -204,7 +203,7 @@ func TestMemData_FindForUserPagination(t *testing.T) { c.Text = fmt.Sprintf("text #%d", i) c.Timestamp = time.Date(2017, 12, 20, 15, 18, i, 0, time.Local) _, err := b.Create(c) - require.Nil(t, err) + require.NoError(t, err) } // get all comments diff --git a/backend/app/cmd/cleanup_test.go b/backend/app/cmd/cleanup_test.go index 3514abff..02ef3b70 100644 --- a/backend/app/cmd/cleanup_test.go +++ b/backend/app/cmd/cleanup_test.go @@ -68,7 +68,7 @@ func TestCleanup_postsInRange(t *testing.T) { cmd.SetCommon(CommonOpts{RemarkURL: ts.URL, SharedSecret: "123456"}) p := flags.NewParser(&cmd, flags.Default) _, err := p.ParseArgs([]string{"--site=remark", "--bword=bad1", "--bword=bad2", "--buser=bu_", "--admin-passwd=secret"}) - require.Nil(t, err) + require.NoError(t, err) posts, err := cmd.postsInRange("20181218", "20181219") assert.NoError(t, err) assert.Equal(t, 2, len(posts)) @@ -78,7 +78,7 @@ func TestCleanup_postsInRange(t *testing.T) { assert.Equal(t, 3, len(posts)) _, err = cmd.postsInRange("xxx", "yyy") - assert.NotNil(t, err) + assert.Error(t, err) } func TestCleanup_listComments(t *testing.T) { @@ -91,7 +91,7 @@ func TestCleanup_listComments(t *testing.T) { cmd.SetCommon(CommonOpts{RemarkURL: ts.URL, SharedSecret: "123456"}) p := flags.NewParser(&cmd, flags.Default) _, err := p.ParseArgs([]string{"--site=remark", "--bword=bad1", "--bword=bad2", "--buser=bu_", "--admin-passwd=secret"}) - require.Nil(t, err) + require.NoError(t, err) comments, err := cmd.listComments("http://test.com/post1") assert.NoError(t, err) @@ -118,7 +118,7 @@ func TestCleanup_ExecuteSpam(t *testing.T) { p := flags.NewParser(&cmd, flags.Default) _, err := p.ParseArgs([]string{"--site=remark", "--bword=bad1", "--bword=bad2", "--buser=bu_", "--from=20181217", "--to=20181218", "--admin-passwd=secret"}) - require.Nil(t, err) + require.NoError(t, err) err = cmd.Execute(nil) assert.NoError(t, err) t.Logf("deleted %+v", cleaned.ids) @@ -136,7 +136,7 @@ func TestCleanup_ExecuteTitle(t *testing.T) { cmd.SetCommon(CommonOpts{RemarkURL: ts.URL, SharedSecret: "123456"}) p := flags.NewParser(&cmd, flags.Default) _, err := p.ParseArgs([]string{"--site=remark", "--title", "--from=20181217", "--to=20181218", "--admin-passwd=secret"}) - require.Nil(t, err) + require.NoError(t, err) err = cmd.Execute(nil) assert.NoError(t, err) t.Logf("set titles for %+v", titledComments.ids) diff --git a/backend/app/cmd/cmd_test.go b/backend/app/cmd/cmd_test.go index de20b50d..2a900134 100644 --- a/backend/app/cmd/cmd_test.go +++ b/backend/app/cmd/cmd_test.go @@ -31,7 +31,7 @@ func TestExport_ParseFileName(t *testing.T) { for i, tt := range tbl { r, err := tt.p.parse(now) if tt.err { - assert.NotNil(t, err) + assert.Error(t, err) continue } assert.Equal(t, tt.res, r, "check #%d", i) diff --git a/backend/app/cmd/import_test.go b/backend/app/cmd/import_test.go index b7846f48..94080520 100644 --- a/backend/app/cmd/import_test.go +++ b/backend/app/cmd/import_test.go @@ -5,7 +5,6 @@ import ( "io/ioutil" "net/http" "net/http/httptest" - "strings" "testing" "time" @@ -21,7 +20,7 @@ func TestImport_Execute(t *testing.T) { assert.Equal(t, r.URL.Path, "/api/v1/admin/import") assert.Equal(t, "POST", r.Method) body, err := ioutil.ReadAll(r.Body) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "blah\nblah2\n12345678\n", string(body)) fmt.Fprintln(w, "some response") @@ -34,7 +33,7 @@ func TestImport_Execute(t *testing.T) { p := flags.NewParser(&cmd, flags.Default) _, err := p.ParseArgs([]string{"--site=remark", "--file=testdata/import.txt", "--admin-passwd=secret"}) - require.Nil(t, err) + require.NoError(t, err) err = cmd.Execute(nil) assert.NoError(t, err) @@ -43,7 +42,7 @@ func TestImport_Execute(t *testing.T) { p = flags.NewParser(&cmd, flags.Default) _, err = p.ParseArgs([]string{"--site=remark", "--file=testdata/import.txt.gz", "--admin-passwd=secret"}) - require.Nil(t, err) + require.NoError(t, err) err = cmd.Execute(nil) assert.NoError(t, err) } @@ -61,21 +60,21 @@ func TestImport_ExecuteFailed(t *testing.T) { cmd.SetCommon(CommonOpts{RemarkURL: ts.URL, SharedSecret: "123456"}) p := flags.NewParser(&cmd, flags.Default) _, err := p.ParseArgs([]string{"--site=remark", "--file=testdata/import-no.txt", "--admin-passwd=secret"}) - require.Nil(t, err) + require.NoError(t, err) err = cmd.Execute(nil) t.Log(err) - assert.NotNil(t, err, "fail on no such file") - assert.True(t, strings.Contains(err.Error(), "no such file or directory")) + assert.Error(t, err, "fail on no such file") + assert.Contains(t, err.Error(), "no such file or directory") cmd = ImportCommand{} cmd.SetCommon(CommonOpts{RemarkURL: "http://127.0.0.1:12345", SharedSecret: "123456"}) p = flags.NewParser(&cmd, flags.Default) _, err = p.ParseArgs([]string{"--site=remark", "--file=testdata/import.txt", "--admin-passwd=secret"}) - require.Nil(t, err) + require.NoError(t, err) err = cmd.Execute(nil) t.Log(err) - assert.NotNil(t, err, "fail on connection refused") - assert.True(t, strings.Contains(err.Error(), "connection refused")) + assert.Error(t, err, "fail on connection refused") + assert.Contains(t, err.Error(), "connection refused") ts2 := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { log.Printf("%+v", r) @@ -87,10 +86,10 @@ func TestImport_ExecuteFailed(t *testing.T) { cmd.SetCommon(CommonOpts{RemarkURL: ts2.URL, SharedSecret: "123456"}) p = flags.NewParser(&cmd, flags.Default) _, err = p.ParseArgs([]string{"--site=remark", "--file=testdata/import.txt", "--admin-passwd=secret"}) - require.Nil(t, err) + require.NoError(t, err) err = cmd.Execute(nil) t.Log(err) - assert.NotNil(t, err) + assert.Error(t, err) } func TestImport_ExecuteTimeout(t *testing.T) { @@ -98,7 +97,7 @@ func TestImport_ExecuteTimeout(t *testing.T) { assert.Equal(t, r.URL.Path, "/api/v1/admin/import") assert.Equal(t, "POST", r.Method) body, err := ioutil.ReadAll(r.Body) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "blah\nblah2\n12345678\n", string(body)) time.Sleep(500 * time.Millisecond) fmt.Fprintln(w, "some response") @@ -112,8 +111,8 @@ func TestImport_ExecuteTimeout(t *testing.T) { p := flags.NewParser(&cmd, flags.Default) _, err := p.ParseArgs([]string{"--site=remark", "--file=testdata/import.txt", "--timeout=300ms", "--admin-passwd=secret"}) - require.Nil(t, err) + require.NoError(t, err) err = cmd.Execute(nil) - assert.NotNil(t, err) - assert.True(t, strings.Contains(err.Error(), "deadline exceeded")) + assert.Error(t, err) + assert.Contains(t, err.Error(), "deadline exceeded") } diff --git a/backend/app/cmd/remap_test.go b/backend/app/cmd/remap_test.go index a04bdad7..d215ffb4 100644 --- a/backend/app/cmd/remap_test.go +++ b/backend/app/cmd/remap_test.go @@ -18,7 +18,7 @@ func TestRemap_Execute(t *testing.T) { assert.Equal(t, "POST", r.Method) assert.Equal(t, "remark", r.URL.Query().Get("site")) body, err := ioutil.ReadAll(r.Body) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "http://oldsite.com* https://newsite.com*\nhttp://oldsite.com/from-old-page/1 https://newsite.com/to-new-page/1", string(body)) w.WriteHeader(202) @@ -30,7 +30,7 @@ func TestRemap_Execute(t *testing.T) { p := flags.NewParser(&cmd, flags.Default) _, err := p.ParseArgs([]string{"--site=remark", "--file=testdata/remap_urls.txt", "--admin-passwd=secret"}) - require.Nil(t, err) + require.NoError(t, err) err = cmd.Execute(nil) assert.NoError(t, err) } diff --git a/backend/app/cmd/restore_test.go b/backend/app/cmd/restore_test.go index 0e425476..4ff59129 100644 --- a/backend/app/cmd/restore_test.go +++ b/backend/app/cmd/restore_test.go @@ -19,7 +19,7 @@ func TestRestore_Execute(t *testing.T) { assert.Equal(t, "POST", r.Method) assert.Equal(t, "native", r.URL.Query().Get("provider")) body, err := ioutil.ReadAll(r.Body) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "blah\nblah2\n12345678\n", string(body)) fmt.Fprintln(w, "some response") @@ -32,7 +32,7 @@ func TestRestore_Execute(t *testing.T) { p := flags.NewParser(&cmd, flags.Default) _, err := p.ParseArgs([]string{"--site=remark", "--path=testdata", "--file=import.txt", "--admin-passwd=secret"}) - require.Nil(t, err) + require.NoError(t, err) err = cmd.Execute(nil) assert.NoError(t, err) } diff --git a/backend/app/cmd/server_test.go b/backend/app/cmd/server_test.go index b5dd8e00..bc19e7eb 100644 --- a/backend/app/cmd/server_test.go +++ b/backend/app/cmd/server_test.go @@ -34,11 +34,11 @@ func TestServerApp(t *testing.T) { // send ping resp, err := http.Get(fmt.Sprintf("http://localhost:%d/api/v1/ping", port)) - require.Nil(t, err) + require.NoError(t, err) defer resp.Body.Close() assert.Equal(t, 200, resp.StatusCode) body, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "pong", string(body)) // add comment @@ -48,7 +48,7 @@ func TestServerApp(t *testing.T) { require.NoError(t, err) req.SetBasicAuth("admin", "password") resp, err = client.Do(req) - require.Nil(t, err) + require.NoError(t, err) defer resp.Body.Close() assert.Equal(t, http.StatusCreated, resp.StatusCode) body, _ = ioutil.ReadAll(resp.Body) @@ -77,11 +77,11 @@ func TestServerApp_DevMode(t *testing.T) { assert.Equal(t, "dev", app.restSrv.Authenticator.Providers()[4].Name(), "dev auth provider") // send ping resp, err := http.Get(fmt.Sprintf("http://localhost:%d/api/v1/ping", port)) - require.Nil(t, err) + require.NoError(t, err) defer resp.Body.Close() assert.Equal(t, 200, resp.StatusCode) body, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "pong", string(body)) app.Wait() @@ -103,28 +103,28 @@ func TestServerApp_AnonMode(t *testing.T) { // send ping resp, err := http.Get(fmt.Sprintf("http://localhost:%d/api/v1/ping", port)) - require.Nil(t, err) + require.NoError(t, err) defer resp.Body.Close() assert.Equal(t, http.StatusOK, resp.StatusCode) body, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "pong", string(body)) // try to login with good name resp, err = http.Get(fmt.Sprintf("http://localhost:%d/auth/anonymous/login?user=blah123&aud=remark42", port)) - require.Nil(t, err) + require.NoError(t, err) defer resp.Body.Close() assert.Equal(t, http.StatusOK, resp.StatusCode) // try to login with bad name resp, err = http.Get(fmt.Sprintf("http://localhost:%d/auth/anonymous/login?user=**blah123&aud=remark42", port)) - require.Nil(t, err) + require.NoError(t, err) defer resp.Body.Close() assert.Equal(t, http.StatusForbidden, resp.StatusCode) // try to login with short name resp, err = http.Get(fmt.Sprintf("http://localhost:%d/auth/anonymous/login?user=bl%20%20&aud=remark42", port)) - require.Nil(t, err) + require.NoError(t, err) defer resp.Body.Close() assert.Equal(t, http.StatusForbidden, resp.StatusCode) @@ -141,11 +141,11 @@ func TestServerApp_WithSSL(t *testing.T) { "--avatar.type=bolt", "--avatar.bolt.file=/tmp/ava-test.db", "--notify.type=none", "--ssl.type=static", "--ssl.cert=testdata/cert.pem", "--ssl.key=testdata/key.pem", "--ssl.port=18443", "--image.fs.path=/tmp"}) - require.Nil(t, err) + require.NoError(t, err) // create app app, err := opts.newServerApp() - require.Nil(t, err) + require.NoError(t, err) ctx, cancel := context.WithCancel(context.Background()) go func() { @@ -170,18 +170,18 @@ func TestServerApp_WithSSL(t *testing.T) { // check http to https redirect response resp, err := client.Get("http://localhost:18080/blah?param=1") - require.Nil(t, err) + require.NoError(t, err) defer resp.Body.Close() assert.Equal(t, 307, resp.StatusCode) assert.Equal(t, "https://localhost:18443/blah?param=1", resp.Header.Get("Location")) // check https server resp, err = client.Get("https://localhost:18443/ping") - require.Nil(t, err) + require.NoError(t, err) defer resp.Body.Close() assert.Equal(t, 200, resp.StatusCode) body, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "pong", string(body)) app.Wait() @@ -197,13 +197,13 @@ func TestServerApp_WithRemote(t *testing.T) { _, err := p.ParseArgs([]string{"--admin-passwd=password", "--cache.type=none", "--store.type=rpc", "--store.rpc.api=http://127.0.0.1", "--port=12345", "--admin.type=rpc", "--admin.rpc.api=http://127.0.0.1", "--avatar.fs.path=/tmp"}) - require.Nil(t, err) + require.NoError(t, err) opts.Auth.Github.CSEC, opts.Auth.Github.CID = "csec", "cid" opts.BackupLocation, opts.Image.FS.Path = "/tmp", "/tmp" // create app app, err := opts.newServerApp() - require.Nil(t, err) + require.NoError(t, err) ctx, cancel := context.WithCancel(context.Background()) go func() { @@ -216,11 +216,11 @@ func TestServerApp_WithRemote(t *testing.T) { // send ping resp, err := http.Get("http://localhost:12345/api/v1/ping") - require.Nil(t, err) + require.NoError(t, err) defer resp.Body.Close() assert.Equal(t, 200, resp.StatusCode) body, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "pong", string(body)) app.Wait() @@ -234,7 +234,7 @@ func TestServerApp_Failed(t *testing.T) { // RO bolt location _, err := p.ParseArgs([]string{"--backup=/tmp", "--store.bolt.path=/dev/null", "--image.fs.path=/tmp"}) - assert.Nil(t, err) + assert.NoError(t, err) _, err = opts.newServerApp() assert.EqualError(t, err, "failed to make data store engine: failed to create bolt store: can't make directory /dev/null: mkdir /dev/null: not a directory") t.Log(err) @@ -244,7 +244,7 @@ func TestServerApp_Failed(t *testing.T) { opts.SetCommon(CommonOpts{RemarkURL: "https://demo.remark42.com", SharedSecret: "123456"}) _, err = p.ParseArgs([]string{"--store.bolt.path=/tmp", "--backup=/dev/null/not-writable"}) - assert.Nil(t, err) + assert.NoError(t, err) _, err = opts.newServerApp() assert.EqualError(t, err, "can't make directory /dev/null/not-writable: mkdir /dev/null: not a directory") t.Log(err) @@ -254,7 +254,7 @@ func TestServerApp_Failed(t *testing.T) { opts.SetCommon(CommonOpts{RemarkURL: "demo.remark42.com", SharedSecret: "123456"}) _, err = p.ParseArgs([]string{"--backup=/tmp", "----store.bolt.path=/tmp"}) - assert.Nil(t, err) + assert.NoError(t, err) _, err = opts.newServerApp() assert.EqualError(t, err, "invalid remark42 url demo.remark42.com") t.Log(err) @@ -263,7 +263,7 @@ func TestServerApp_Failed(t *testing.T) { opts.SetCommon(CommonOpts{RemarkURL: "https://demo.remark42.com", SharedSecret: "123456"}) _, err = p.ParseArgs([]string{"--backup=/tmp", "--store.type=blah"}) - assert.NotNil(t, err, "blah is invalid type") + assert.Error(t, err, "blah is invalid type") opts.Store.Type = "blah" _, err = opts.newServerApp() @@ -278,7 +278,7 @@ func TestServerApp_Shutdown(t *testing.T) { }) st := time.Now() err := app.run(ctx) - assert.Nil(t, err) + assert.NoError(t, err) assert.True(t, time.Since(st).Seconds() < 1, "should take about 500msec") app.Wait() } @@ -288,7 +288,7 @@ func TestServerApp_MainSignal(t *testing.T) { go func() { time.Sleep(250 * time.Millisecond) err := syscall.Kill(syscall.Getpid(), syscall.SIGTERM) - require.Nil(t, err) + require.NoError(t, err) }() st := time.Now() @@ -300,7 +300,7 @@ func TestServerApp_MainSignal(t *testing.T) { "--avatar.bolt.file=/tmp/ava-test.db", "--port=18100", "--notify.type=none", "--image.fs.path=/tmp"} defer os.Remove("/tmp/ava-test.db") _, err := p.ParseArgs(args) - require.Nil(t, err) + require.NoError(t, err) err = s.Execute(args) assert.NoError(t, err, "execute failed") assert.True(t, time.Since(st).Seconds() < 1, "should take under sec", time.Since(st).Seconds()) @@ -312,9 +312,9 @@ func Test_ACMEEmail(t *testing.T) { p := flags.NewParser(&cmd, flags.Default) args := []string{"--ssl.type=auto"} _, err := p.ParseArgs(args) - require.Nil(t, err) + require.NoError(t, err) cfg, err := cmd.makeSSLConfig() - require.Nil(t, err) + require.NoError(t, err) assert.Equal(t, "admin@remark.com", cfg.ACMEEmail) cmd = ServerCommand{} @@ -322,9 +322,9 @@ func Test_ACMEEmail(t *testing.T) { p = flags.NewParser(&cmd, flags.Default) args = []string{"--ssl.type=auto", "--ssl.acme-email=adminname@adminhost.com"} _, err = p.ParseArgs(args) - require.Nil(t, err) + require.NoError(t, err) cfg, err = cmd.makeSSLConfig() - require.Nil(t, err) + require.NoError(t, err) assert.Equal(t, "adminname@adminhost.com", cfg.ACMEEmail) cmd = ServerCommand{} @@ -332,9 +332,9 @@ func Test_ACMEEmail(t *testing.T) { p = flags.NewParser(&cmd, flags.Default) args = []string{"--ssl.type=auto", "--admin.type=shared", "--admin.shared.email=superadmin@admin.com"} _, err = p.ParseArgs(args) - require.Nil(t, err) + require.NoError(t, err) cfg, err = cmd.makeSSLConfig() - require.Nil(t, err) + require.NoError(t, err) assert.Equal(t, "superadmin@admin.com", cfg.ACMEEmail) cmd = ServerCommand{} @@ -342,9 +342,9 @@ func Test_ACMEEmail(t *testing.T) { p = flags.NewParser(&cmd, flags.Default) args = []string{"--ssl.type=auto", "--admin.type=shared"} _, err = p.ParseArgs(args) - require.Nil(t, err) + require.NoError(t, err) cfg, err = cmd.makeSSLConfig() - require.Nil(t, err) + require.NoError(t, err) assert.Equal(t, "admin@remark.com", cfg.ACMEEmail) } @@ -417,7 +417,7 @@ func TestServerAuthHooks(t *testing.T) { defer resp.Body.Close() assert.Equal(t, http.StatusOK, resp.StatusCode, "user dev blocked") b, err := ioutil.ReadAll(resp.Body) - require.Nil(t, err) + require.NoError(t, err) t.Log(string(b)) // try add a comment with blocked user @@ -426,7 +426,7 @@ func TestServerAuthHooks(t *testing.T) { require.NoError(t, err) req.Header.Set("X-JWT", tk) resp, err = client.Do(req) - require.Nil(t, err) + require.NoError(t, err) defer resp.Body.Close() body, err = ioutil.ReadAll(resp.Body) require.NoError(t, err) @@ -458,7 +458,7 @@ func prepServerApp(t *testing.T, duration time.Duration, fn func(o ServerCommand // prepare options p := flags.NewParser(&cmd, flags.Default) _, err := p.ParseArgs([]string{"--admin-passwd=password", "--site=remark"}) - require.Nil(t, err) + require.NoError(t, err) cmd.Avatar.FS.Path, cmd.Avatar.Type, cmd.BackupLocation, cmd.Image.FS.Path = "/tmp", "fs", "/tmp", "/tmp" cmd.Store.Bolt.Path = fmt.Sprintf("/tmp/%d", cmd.Port) cmd.Store.Bolt.Timeout = 10 * time.Second @@ -485,7 +485,7 @@ func prepServerApp(t *testing.T, duration time.Duration, fn func(o ServerCommand // create app app, err := cmd.newServerApp() - require.Nil(t, err) + require.NoError(t, err) ctx, cancel := context.WithCancel(context.Background()) time.AfterFunc(duration, func() { diff --git a/backend/app/migrator/backup_test.go b/backend/app/migrator/backup_test.go index b7d95d08..f86b6c91 100644 --- a/backend/app/migrator/backup_test.go +++ b/backend/app/migrator/backup_test.go @@ -21,16 +21,16 @@ func TestBackup_RemoveOldBackupFiles(t *testing.T) { for i := 1; i <= 10; i++ { fname := fmt.Sprintf("%s/backup-site1-201712%02d.gz", loc, i) err := ioutil.WriteFile(fname, []byte("blah"), 0600) - assert.Nil(t, err) + assert.NoError(t, err) } fname := fmt.Sprintf("%s/backup-site2-20171210.gz", loc) err := ioutil.WriteFile(fname, []byte("blah"), 0600) - assert.Nil(t, err) + assert.NoError(t, err) bk := AutoBackup{BackupLocation: loc, SiteID: "site1", KeepMax: 3} bk.removeOldBackupFiles() ff, err := ioutil.ReadDir(loc) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 4, len(ff), "should keep 4 files - 3 kept for sit1, and one for site2") assert.Equal(t, "backup-site1-20171208.gz", ff[0].Name()) assert.Equal(t, "backup-site1-20171209.gz", ff[1].Name()) diff --git a/backend/app/migrator/disqus_test.go b/backend/app/migrator/disqus_test.go index a7d6b073..825f8f55 100644 --- a/backend/app/migrator/disqus_test.go +++ b/backend/app/migrator/disqus_test.go @@ -19,15 +19,15 @@ import ( func TestDisqus_Import(t *testing.T) { defer os.Remove("/tmp/remark-test.db") b, err := engine.NewBoltDB(bolt.Options{}, engine.BoltSite{FileName: "/tmp/remark-test.db", SiteID: "test"}) - require.Nil(t, err, "create store") + require.NoError(t, err, "create store") dataStore := service.DataStore{Engine: b, AdminStore: admin.NewStaticStore("12345", nil, []string{}, "")} d := Disqus{DataStore: &dataStore} size, err := d.Import(strings.NewReader(xmlTestDisqus), "test") - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 4, size) last, err := dataStore.Last("test", 10, time.Time{}, adminUser) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 4, len(last), "4 comments imported") c := last[len(last)-1] // last reverses, get first one @@ -40,11 +40,11 @@ func TestDisqus_Import(t *testing.T) { assert.Equal(t, "2ba6b71dbf9750ae3356cce14cac6c1b1962747c", c.User.IP) posts, err := dataStore.List("test", 0, 0) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 2, len(posts), "2 posts") count, err := dataStore.Count(store.Locator{SiteID: "test", URL: "https://radio-t.com/p/2011/03/05/podcast-229/"}) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 2, count) } diff --git a/backend/app/migrator/mapper_test.go b/backend/app/migrator/mapper_test.go index 86c9ffab..f34d413a 100644 --- a/backend/app/migrator/mapper_test.go +++ b/backend/app/migrator/mapper_test.go @@ -84,7 +84,7 @@ func TestUrlMapper_New(t *testing.T) { if c.expectError { assert.Error(t, err) } else { - assert.Nil(t, err) + assert.NoError(t, err) } } } diff --git a/backend/app/migrator/migrator_test.go b/backend/app/migrator/migrator_test.go index c9b8b897..78dd6e21 100644 --- a/backend/app/migrator/migrator_test.go +++ b/backend/app/migrator/migrator_test.go @@ -23,10 +23,10 @@ func TestMigrator_ImportDisqus(t *testing.T) { }() err := ioutil.WriteFile("/tmp/disqus-test.xml", []byte(xmlTestDisqus), 0600) - require.Nil(t, err) + require.NoError(t, err) b, err := engine.NewBoltDB(bolt.Options{}, engine.BoltSite{FileName: "/tmp/remark-test.db", SiteID: "test"}) - require.Nil(t, err, "create store") + require.NoError(t, err, "create store") dataStore := &service.DataStore{Engine: b, AdminStore: admin.NewStaticStore("12345", nil, []string{}, "")} size, err := ImportComments(ImportParams{ DataStore: dataStore, @@ -34,11 +34,11 @@ func TestMigrator_ImportDisqus(t *testing.T) { SiteID: "test", Provider: "disqus", }) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 4, size) last, err := dataStore.Last("test", 10, time.Time{}, store.User{}) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 4, len(last), "4 comments imported") } @@ -49,10 +49,10 @@ func TestMigrator_ImportWordPress(t *testing.T) { }() err := ioutil.WriteFile("/tmp/wordpress-test.xml", []byte(xmlTestWP), 0600) - require.Nil(t, err) + require.NoError(t, err) b, err := engine.NewBoltDB(bolt.Options{}, engine.BoltSite{FileName: "/tmp/remark-test.db", SiteID: "test"}) - require.Nil(t, err, "create store") + require.NoError(t, err, "create store") dataStore := &service.DataStore{Engine: b, AdminStore: admin.NewStaticStore("12345", nil, []string{}, "")} size, err := ImportComments(ImportParams{ DataStore: dataStore, @@ -60,11 +60,11 @@ func TestMigrator_ImportWordPress(t *testing.T) { SiteID: "test", Provider: "wordpress", }) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 3, size) last, err := dataStore.Last("test", 10, time.Time{}, store.User{}) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 3, len(last), "3 comments imported") } @@ -78,10 +78,10 @@ func TestMigrator_ImportNative(t *testing.T) { `{"id":"afbc17f177ee1a1c0ee6e1e025749966ec071adc","pid":"efbc17f177ee1a1c0ee6e1e025749966ec071adc","text":"some text2, link","user":{"name":"user name","id":"user1","picture":"","profile":"","admin":false},"locator":{"site":"radio-t","url":"https://radio-t.com"},"score":0,"votes":{},"time":"2017-12-20T15:18:23-06:00"}` + "\n" err := ioutil.WriteFile("/tmp/disqus-test.r42", []byte(data), 0600) - require.Nil(t, err) + require.NoError(t, err) b, err := engine.NewBoltDB(bolt.Options{}, engine.BoltSite{FileName: "/tmp/remark-test.db", SiteID: "radio-t"}) - require.Nil(t, err, "create store") + require.NoError(t, err, "create store") dataStore := &service.DataStore{Engine: b, AdminStore: admin.NewStaticStore("12345", nil, []string{}, "")} size, err := ImportComments(ImportParams{ @@ -90,18 +90,18 @@ func TestMigrator_ImportNative(t *testing.T) { SiteID: "radio-t", Provider: "native", }) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 2, size) last, err := dataStore.Last("radio-t", 10, time.Time{}, store.User{}) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 2, len(last), "2 comments imported") } func TestMigrator_ImportFailed(t *testing.T) { defer os.Remove("/tmp/remark-test.db") b, err := engine.NewBoltDB(bolt.Options{}, engine.BoltSite{FileName: "/tmp/remark-test.db", SiteID: "test"}) - require.Nil(t, err, "create store") + require.NoError(t, err, "create store") dataStore := &service.DataStore{Engine: b} _, err = ImportComments(ImportParams{ DataStore: dataStore, diff --git a/backend/app/migrator/native_test.go b/backend/app/migrator/native_test.go index eff2b279..4f4b6342 100644 --- a/backend/app/migrator/native_test.go +++ b/backend/app/migrator/native_test.go @@ -31,7 +31,7 @@ func TestNative_Export(t *testing.T) { buf := &bytes.Buffer{} size, err := r.Export(buf, "radio-t") - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 2, size) c1 := buf.String() @@ -79,11 +79,11 @@ func TestNative_Import(t *testing.T) { b.AdminStore = admin.NewStaticStore("12345", nil, []string{}, "") r := Native{DataStore: b} size, err := r.Import(strings.NewReader(inp), "radio-t") - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 2, size) comments, err := b.Last("radio-t", 10, time.Time{}, store.User{}) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 2, len(comments)) assert.Equal(t, "f863bd79-fec6-4a75-b308-61fe5dd02aa1", comments[0].ID) assert.Equal(t, "1234", comments[0].ParentID) @@ -117,11 +117,11 @@ func TestNative_ImportWithMapper(t *testing.T) { b.AdminStore = admin.NewStaticStore("12345", nil, []string{}, "") r := Native{DataStore: b} size, err := r.Import(mappedReader, "radio-t") - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 2, size) comments, err := b.Last("radio-t", 10, time.Time{}, store.User{}) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 2, len(comments)) assert.Equal(t, "f863bd79-fec6-4a75-b308-61fe5dd02aa1", comments[0].ID) assert.Equal(t, "1234", comments[0].ParentID) @@ -174,7 +174,7 @@ func TestNative_ImportManyWithError(t *testing.T) { assert.EqualError(t, err, "failed to save 2 comments") assert.Equal(t, 100, n) comments, err := b.Find(store.Locator{SiteID: "radio-t", URL: "https://radio-t.com"}, "time", store.User{}) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 100, len(comments)) } @@ -184,7 +184,7 @@ func prep(t *testing.T) (*service.DataStore, func()) { testDb := fmt.Sprintf("/tmp/migrator-%d.db", rand.Intn(999999999)) boltStore, err := engine.NewBoltDB(bolt.Options{}, engine.BoltSite{SiteID: "radio-t", FileName: testDb}) - assert.Nil(t, err) + assert.NoError(t, err) b := &service.DataStore{Engine: boltStore, AdminStore: admin.NewStaticStore("12345", nil, []string{}, "")} @@ -196,7 +196,7 @@ func prep(t *testing.T) (*service.DataStore, func()) { User: store.User{ID: "user1", Name: "user name"}, } _, err = b.Create(comment) - assert.Nil(t, err) + assert.NoError(t, err) comment = store.Comment{ Text: "some text2", Timestamp: time.Date(2017, 12, 20, 15, 18, 23, 0, time.Local), @@ -204,7 +204,7 @@ func prep(t *testing.T) (*service.DataStore, func()) { User: store.User{ID: "user2", Name: "user name"}, } _, err = b.Create(comment) - assert.Nil(t, err) + assert.NoError(t, err) return b, func() { os.Remove(testDb) } } diff --git a/backend/app/migrator/wordpress_test.go b/backend/app/migrator/wordpress_test.go index 4ce8b442..08c15cf3 100644 --- a/backend/app/migrator/wordpress_test.go +++ b/backend/app/migrator/wordpress_test.go @@ -19,16 +19,16 @@ func TestWordPress_Import(t *testing.T) { siteID := "testWP" defer func() { _ = os.Remove("/tmp/remark-test.db") }() b, err := engine.NewBoltDB(bolt.Options{}, engine.BoltSite{FileName: "/tmp/remark-test.db", SiteID: siteID}) - assert.Nil(t, err, "create store") + assert.NoError(t, err, "create store") dataStore := service.DataStore{Engine: b, AdminStore: admin.NewStaticStore("12345", nil, []string{}, "")} wp := WordPress{DataStore: &dataStore} size, err := wp.Import(strings.NewReader(xmlTestWP), siteID) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 3, size) last, err := dataStore.Last(siteID, 10, time.Time{}, adminUser) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 3, len(last), "3 comments imported") c := last[0] @@ -42,14 +42,14 @@ func TestWordPress_Import(t *testing.T) { assert.Equal(t, c.Text, "
Mekkatorque was over in that tent up to the right
\n") posts, err := dataStore.List(siteID, 0, 0) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 1, len(posts)) p := posts[0] assert.Equal(t, "https://realmenweardress.es/2010/07/do-you-rp/", p.URL) count, err := dataStore.Count(store.Locator{URL: "https://realmenweardress.es/2010/07/do-you-rp/", SiteID: siteID}) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 3, count) } diff --git a/backend/app/notify/telegram_test.go b/backend/app/notify/telegram_test.go index e10e096c..28cc70b5 100644 --- a/backend/app/notify/telegram_test.go +++ b/backend/app/notify/telegram_test.go @@ -30,7 +30,7 @@ func TestTelegram_New(t *testing.T) { assert.True(t, time.Since(st) >= 250*5*time.Millisecond) _, err = NewTelegram("non-json-resp", "remark_test", 2*time.Second, ts.URL+"/") - assert.NotNil(t, err) + assert.Error(t, err) assert.Contains(t, err.Error(), "can't decode response:") _, err = NewTelegram("404", "remark_test", 2*time.Second, ts.URL+"/") @@ -70,9 +70,9 @@ func TestTelegram_Send(t *testing.T) { assert.NoError(t, err) tb, err = NewTelegram("non-json-resp", "remark_test", 2*time.Second, ts.URL+"/") - assert.NotNil(t, err, "should failed") + assert.Error(t, err, "should failed") err = tb.Send(context.TODO(), Request{Comment: c, parent: cp}) - require.NotNil(t, err) + require.Error(t, err) assert.Contains(t, err.Error(), "unexpected telegram status code 404", "send on broken tg") assert.Equal(t, "telegram: @remark_test", tb.String()) diff --git a/backend/app/rest/api/admin_test.go b/backend/app/rest/api/admin_test.go index 66b02892..c19d6b17 100644 --- a/backend/app/rest/api/admin_test.go +++ b/backend/app/rest/api/admin_test.go @@ -42,7 +42,7 @@ func TestAdmin_Delete(t *testing.T) { assert.Equal(t, 200, code) comments := []store.Comment{} err := json.Unmarshal([]byte(res), &comments) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 2, len(comments), "should have 2 comments") // check multi count @@ -51,10 +51,10 @@ func TestAdmin_Delete(t *testing.T) { defer resp.Body.Close() assert.Equal(t, http.StatusOK, resp.StatusCode) bb, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) j := []store.PostInfo{} err = json.Unmarshal(bb, &j) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, []store.PostInfo([]store.PostInfo{{URL: "https://radio-t.com/blah", Count: 2}, {URL: "https://radio-t.com/blah2", Count: 0}}), j) @@ -65,14 +65,14 @@ func TestAdmin_Delete(t *testing.T) { defer resp.Body.Close() requireAdminOnly(t, req) resp, err = sendReq(t, req, adminUmputunToken) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 200, resp.StatusCode) body, code := getWithDevAuth(t, fmt.Sprintf("%s/api/v1/id/%s?site=remark42&url=https://radio-t.com/blah", ts.URL, id1)) assert.Equal(t, 200, code) cr := store.Comment{} err = json.Unmarshal([]byte(body), &cr) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "", cr.Text) assert.True(t, cr.Deleted) @@ -82,7 +82,7 @@ func TestAdmin_Delete(t *testing.T) { assert.Equal(t, 200, code) comments = []store.Comment{} err = json.Unmarshal([]byte(res), &comments) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 1, len(comments), "should have 1 comments") // check count updated @@ -90,19 +90,19 @@ func TestAdmin_Delete(t *testing.T) { assert.Equal(t, 200, code) b := map[string]interface{}{} err = json.Unmarshal([]byte(res), &b) - assert.Nil(t, err) + assert.NoError(t, err) t.Logf("%#v", b) assert.Equal(t, 1.0, b["count"], "should report 1 comments") // check multi count updated resp, err = post(t, ts.URL+"/api/v1/counts?site=remark42", `["https://radio-t.com/blah","https://radio-t.com/blah2"]`) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, http.StatusOK, resp.StatusCode) bb, err = ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) j = []store.PostInfo{} err = json.Unmarshal(bb, &j) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, []store.PostInfo([]store.PostInfo{{URL: "https://radio-t.com/blah", Count: 1}, {URL: "https://radio-t.com/blah2", Count: 0}}), j) } @@ -137,7 +137,7 @@ func TestAdmin_Title(t *testing.T) { req, err := http.NewRequest(http.MethodPut, fmt.Sprintf("%s/api/v1/admin/title/%s?site=remark42&url=%s/post1", ts.URL, id1, tss.URL), nil) - assert.Nil(t, err) + assert.NoError(t, err) requireAdminOnly(t, req) resp, err := sendReq(t, req, adminUmputunToken) require.NoError(t, err) @@ -147,7 +147,7 @@ func TestAdmin_Title(t *testing.T) { require.Equal(t, 200, code) cr := store.Comment{} err = json.Unmarshal([]byte(body), &cr) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "post1 blah 123", cr.PostTitle) } @@ -171,10 +171,10 @@ func TestAdmin_DeleteUser(t *testing.T) { assert.NoError(t, err) req, err := http.NewRequest(http.MethodDelete, fmt.Sprintf("%s/api/v1/admin/user/%s?site=remark42", ts.URL, "id2"), nil) - assert.Nil(t, err) + assert.NoError(t, err) requireAdminOnly(t, req) resp, err := sendReq(t, req, adminUmputunToken) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 200, resp.StatusCode) // all 3 comments here, but for id2 they deleted @@ -182,7 +182,7 @@ func TestAdmin_DeleteUser(t *testing.T) { assert.Equal(t, 200, code) cmntWithInfo := commentsWithInfo{} err = json.Unmarshal([]byte(res), &cmntWithInfo) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 3, len(cmntWithInfo.Comments), "should have 3 comment") // id1 comment untouched @@ -219,11 +219,11 @@ func TestAdmin_Pin(t *testing.T) { client := http.Client{} req, err := http.NewRequest(http.MethodPut, fmt.Sprintf("%s/api/v1/admin/pin/%s?site=remark42&url=https://radio-t.com/blah&pin=%d", ts.URL, id1, val), nil) - assert.Nil(t, err) + assert.NoError(t, err) requireAdminOnly(t, req) req.SetBasicAuth("admin", "password") resp, err := client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) return resp.StatusCode } @@ -234,7 +234,7 @@ func TestAdmin_Pin(t *testing.T) { assert.Equal(t, 200, code) cr := store.Comment{} err := json.Unmarshal([]byte(body), &cr) - assert.Nil(t, err) + assert.NoError(t, err) assert.True(t, cr.Pin) code = pin(-1) @@ -243,7 +243,7 @@ func TestAdmin_Pin(t *testing.T) { assert.Equal(t, 200, code) cr = store.Comment{} err = json.Unmarshal([]byte(body), &cr) - assert.Nil(t, err) + assert.NoError(t, err) assert.False(t, cr.Pin) } @@ -258,9 +258,9 @@ func TestAdmin_Block(t *testing.T) { URL: "https://radio-t.com/blah"}, User: store.User{Name: "user2", ID: "user2"}} _, err := srv.DataService.Create(c1) - require.Nil(t, err) + require.NoError(t, err) _, err = srv.DataService.Create(c2) - require.Nil(t, err) + require.NoError(t, err) } block := func(val int, ttl string) (code int, body []byte) { @@ -286,7 +286,7 @@ func TestAdmin_Block(t *testing.T) { require.Equal(t, 200, code) j := R.JSON{} err := json.Unmarshal(body, &j) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "user1", j["user_id"]) assert.Equal(t, true, j["block"]) assert.Equal(t, "remark42", j["site_id"]) @@ -303,10 +303,10 @@ func TestAdmin_Block(t *testing.T) { // check if count call has one comment left resp, err := post(t, ts.URL+"/api/v1/counts?site=remark42", `["https://radio-t.com/blah"]`) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, http.StatusOK, resp.StatusCode) body, err = ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) pi = []store.PostInfo{} err = json.Unmarshal(body, &pi) assert.NoError(t, err) @@ -316,7 +316,7 @@ func TestAdmin_Block(t *testing.T) { assert.Equal(t, 200, code) comments := commentsWithInfo{} err = json.Unmarshal([]byte(res), &comments) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 2, len(comments.Comments), "should have 2 comments") assert.Equal(t, "", comments.Comments[0].Text, "permanent block clear comment") assert.True(t, comments.Comments[0].Deleted, "permanent block set deleted comment's status") @@ -325,7 +325,7 @@ func TestAdmin_Block(t *testing.T) { code, body = block(-1, "") require.Equal(t, 200, code) err = json.Unmarshal(body, &j) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, false, j["block"]) // block with ttl @@ -338,7 +338,7 @@ func TestAdmin_Block(t *testing.T) { assert.Equal(t, 200, code) comments = commentsWithInfo{} err = json.Unmarshal([]byte(res), &comments) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 4, len(comments.Comments), "should have 4 comments") assert.Equal(t, "test test #1", comments.Comments[2].Text, "comment not removed and not cleared") assert.False(t, comments.Comments[2].Deleted, "not deleted") @@ -350,7 +350,7 @@ func TestAdmin_Block(t *testing.T) { assert.Equal(t, 200, code) comments = commentsWithInfo{} err = json.Unmarshal([]byte(res), &comments) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 4, len(comments.Comments), "should have 4 comments") assert.Equal(t, "test test #1", comments.Comments[2].Text, "restored") assert.False(t, comments.Comments[2].Deleted) @@ -370,14 +370,14 @@ func TestAdmin_BlockedList(t *testing.T) { // write comments for user1 and user2 _, err := srv.DataService.Create(c1) - assert.Nil(t, err) + assert.NoError(t, err) _, err = srv.DataService.Create(c2) - assert.Nil(t, err) + assert.NoError(t, err) // block user1 req, err := http.NewRequest(http.MethodPut, fmt.Sprintf("%s/api/v1/admin/user/%s?site=remark42&block=%d", ts.URL, "user1", 1), nil) - assert.Nil(t, err) + assert.NoError(t, err) res, err := sendReq(t, req, adminUmputunToken) require.NoError(t, err) assert.Equal(t, 200, res.StatusCode) @@ -385,7 +385,7 @@ func TestAdmin_BlockedList(t *testing.T) { // block user2 req, err = http.NewRequest(http.MethodPut, fmt.Sprintf("%s/api/v1/admin/user/%s?site=remark42&block=%d&ttl=150ms", ts.URL, "user2", 1), nil) - assert.Nil(t, err) + assert.NoError(t, err) res, err = sendReq(t, req, adminUmputunToken) require.NoError(t, err) assert.Equal(t, 200, res.StatusCode) @@ -397,7 +397,7 @@ func TestAdmin_BlockedList(t *testing.T) { require.Equal(t, 200, res.StatusCode) users := []store.BlockedUser{} err = json.NewDecoder(res.Body).Decode(&users) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 2, len(users), "two users blocked") assert.Equal(t, "user1", users[0].ID) assert.Equal(t, "user1 name", users[0].Name) @@ -413,7 +413,7 @@ func TestAdmin_BlockedList(t *testing.T) { require.Equal(t, 200, res.StatusCode) users = []store.BlockedUser{} err = json.NewDecoder(res.Body).Decode(&users) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 1, len(users), "one user left blocked") } @@ -427,18 +427,18 @@ func TestAdmin_ReadOnly(t *testing.T) { URL: "https://radio-t.com/blah"}, User: store.User{Name: "user2", ID: "user2"}} _, err := srv.DataService.Create(c1) - assert.Nil(t, err) + assert.NoError(t, err) _, err = srv.DataService.Create(c2) - assert.Nil(t, err) + assert.NoError(t, err) info, err := srv.DataService.Info(store.Locator{SiteID: "remark42", URL: "https://radio-t.com/blah"}, 0) - assert.Nil(t, err) + assert.NoError(t, err) assert.False(t, info.ReadOnly) // set post to read-only req, err := http.NewRequest(http.MethodPut, fmt.Sprintf("%s/api/v1/admin/readonly?site=remark42&url=https://radio-t.com/blah&ro=1", ts.URL), nil) - assert.Nil(t, err) + assert.NoError(t, err) resp, err := sendReq(t, req, "") // non-admin user require.NoError(t, err) assert.Equal(t, 401, resp.StatusCode) @@ -446,14 +446,14 @@ func TestAdmin_ReadOnly(t *testing.T) { require.NoError(t, err) assert.Equal(t, 200, resp.StatusCode) info, err = srv.DataService.Info(store.Locator{SiteID: "remark42", URL: "https://radio-t.com/blah"}, 0) - assert.Nil(t, err) + assert.NoError(t, err) assert.True(t, info.ReadOnly) // try to write comment c := store.Comment{Text: "test test #2", ParentID: "p1", Locator: store.Locator{SiteID: "remark42", URL: "https://radio-t.com/blah"}} b, err := json.Marshal(c) - assert.Nil(t, err, "can't marshal comment %+v", c) + assert.NoError(t, err, "can't marshal comment %+v", c) req, err = http.NewRequest("POST", ts.URL+"/api/v1/comment", bytes.NewBuffer(b)) require.NoError(t, err) resp, err = sendReq(t, req, adminUmputunToken) @@ -463,19 +463,19 @@ func TestAdmin_ReadOnly(t *testing.T) { // reset post's read-only req, err = http.NewRequest(http.MethodPut, fmt.Sprintf("%s/api/v1/admin/readonly?site=remark42&url=https://radio-t.com/blah&ro=0", ts.URL), nil) - assert.Nil(t, err) + assert.NoError(t, err) resp, err = sendReq(t, req, adminUmputunToken) require.NoError(t, err) assert.Equal(t, 200, resp.StatusCode) info, err = srv.DataService.Info(store.Locator{SiteID: "remark42", URL: "https://radio-t.com/blah"}, 0) - assert.Nil(t, err) + assert.NoError(t, err) assert.False(t, info.ReadOnly) // try to write comment c = store.Comment{Text: "test test #2", ParentID: "p1", Locator: store.Locator{SiteID: "remark42", URL: "https://radio-t.com/blah"}} b, err = json.Marshal(c) - assert.Nil(t, err, "can't marshal comment %+v", c) + assert.NoError(t, err, "can't marshal comment %+v", c) req, err = http.NewRequest("POST", ts.URL+"/api/v1/comment", bytes.NewBuffer(b)) require.NoError(t, err) resp, err = sendReq(t, req, adminUmputunToken) @@ -490,19 +490,19 @@ func TestAdmin_ReadOnlyNoComments(t *testing.T) { // set post to read-only req, err := http.NewRequest(http.MethodPut, fmt.Sprintf("%s/api/v1/admin/readonly?site=remark42&url=https://radio-t.com/blah&ro=1", ts.URL), nil) - assert.Nil(t, err) + assert.NoError(t, err) requireAdminOnly(t, req) resp, err := sendReq(t, req, adminUmputunToken) require.NoError(t, err) assert.Equal(t, 200, resp.StatusCode) _, err = srv.DataService.Info(store.Locator{SiteID: "remark42", URL: "https://radio-t.com/blah"}, 0) - assert.NotNil(t, err) + assert.Error(t, err) res, code := get(t, ts.URL+"/api/v1/find?site=remark42&url=https://radio-t.com/blah&format=tree") assert.Equal(t, 200, code) comments := commentsWithInfo{} err = json.Unmarshal([]byte(res), &comments) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 0, len(comments.Comments), "should have 0 comments") assert.True(t, comments.Info.ReadOnly) t.Logf("%+v", comments) @@ -516,16 +516,16 @@ func TestAdmin_ReadOnlyWithAge(t *testing.T) { URL: "https://radio-t.com/blah"}, User: store.User{Name: "user1 name", ID: "user1"}, Timestamp: time.Date(2001, 1, 1, 1, 1, 1, 0, time.Local)} _, err := srv.DataService.Create(c1) - assert.Nil(t, err) + assert.NoError(t, err) info, err := srv.DataService.Info(store.Locator{SiteID: "remark42", URL: "https://radio-t.com/blah"}, 10) - assert.Nil(t, err) + assert.NoError(t, err) assert.True(t, info.ReadOnly, "ro by age") // set post to read-only req, err := http.NewRequest(http.MethodPut, fmt.Sprintf("%s/api/v1/admin/readonly?site=remark42&url=https://radio-t.com/blah&ro=1", ts.URL), nil) - assert.Nil(t, err) + assert.NoError(t, err) requireAdminOnly(t, req) resp, err := sendReq(t, req, adminUmputunToken) require.NoError(t, err) @@ -537,7 +537,7 @@ func TestAdmin_ReadOnlyWithAge(t *testing.T) { // reset post's read-only req, err = http.NewRequest(http.MethodPut, fmt.Sprintf("%s/api/v1/admin/readonly?site=remark42&url=https://radio-t.com/blah&ro=0", ts.URL), nil) - assert.Nil(t, err) + assert.NoError(t, err) resp, err = sendReq(t, req, adminUmputunToken) require.NoError(t, err) assert.Equal(t, 403, resp.StatusCode) @@ -556,16 +556,16 @@ func TestAdmin_Verify(t *testing.T) { URL: "https://radio-t.com/blah"}, User: store.User{Name: "user2", ID: "user2"}} _, err := srv.DataService.Create(c1) - assert.Nil(t, err) + assert.NoError(t, err) _, err = srv.DataService.Create(c2) - assert.Nil(t, err) + assert.NoError(t, err) verified := srv.DataService.IsVerified("remark42", "user1") assert.False(t, verified) req, err := http.NewRequest(http.MethodPut, fmt.Sprintf("%s/api/v1/admin/verify/user1?site=remark42&verified=1", ts.URL), nil) - assert.Nil(t, err) + assert.NoError(t, err) requireAdminOnly(t, req) resp, err := sendReq(t, req, adminUmputunToken) require.NoError(t, err) @@ -577,14 +577,14 @@ func TestAdmin_Verify(t *testing.T) { assert.Equal(t, 200, code) comments := commentsWithInfo{} err = json.Unmarshal([]byte(res), &comments) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 2, len(comments.Comments), "should have 2 comments") assert.Equal(t, "test test #1", comments.Comments[0].Text) assert.True(t, comments.Comments[0].User.Verified) req, err = http.NewRequest(http.MethodPut, fmt.Sprintf("%s/api/v1/admin/verify/user1?site=remark42&verified=0", ts.URL), nil) - assert.Nil(t, err) + assert.NoError(t, err) resp, err = sendReq(t, req, adminUmputunToken) require.NoError(t, err) assert.Equal(t, 200, resp.StatusCode) @@ -595,7 +595,7 @@ func TestAdmin_Verify(t *testing.T) { assert.Equal(t, 200, code) comments = commentsWithInfo{} err = json.Unmarshal([]byte(res), &comments) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 2, len(comments.Comments), "should have 2 comments") assert.Equal(t, "test test #1", comments.Comments[0].Text) assert.False(t, comments.Comments[0].User.Verified) @@ -660,12 +660,12 @@ func TestAdmin_DeleteMeRequest(t *testing.T) { URL: "https://radio-t.com/blah"}, User: store.User{Name: "user2", ID: "user2"}} _, err := srv.DataService.Create(c1) - assert.Nil(t, err) + assert.NoError(t, err) _, err = srv.DataService.Create(c2) - assert.Nil(t, err) + assert.NoError(t, err) comments, err := srv.DataService.User("remark42", "user1", 0, 0, store.User{}) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 1, len(comments), "a comment for user1") claims := token.Claims{ @@ -690,11 +690,11 @@ func TestAdmin_DeleteMeRequest(t *testing.T) { require.NoError(t, ioutil.WriteFile(os.TempDir()+"/ava-remark42/42/pic.image", []byte("some image data"), 0600)) tkn, err := srv.Authenticator.TokenService().Token(claims) - assert.Nil(t, err) + assert.NoError(t, err) client := http.Client{} req, err := http.NewRequest(http.MethodGet, fmt.Sprintf("%s/api/v1/admin/deleteme?token=%s", ts.URL, tkn), nil) - assert.Nil(t, err) + assert.NoError(t, err) req.SetBasicAuth("admin", "password") resp, err := client.Do(req) @@ -715,17 +715,17 @@ func TestAdmin_DeleteMeRequestFailed(t *testing.T) { URL: "https://radio-t.com/blah"}, User: store.User{Name: "user2", ID: "user2"}} _, err := srv.DataService.Create(c1) - assert.Nil(t, err) + assert.NoError(t, err) _, err = srv.DataService.Create(c2) - assert.Nil(t, err) + assert.NoError(t, err) // try with bad token client := http.Client{} req, err := http.NewRequest(http.MethodGet, fmt.Sprintf("%s/api/v1/admin/deleteme?token=%s", ts.URL, "bad token"), nil) - assert.Nil(t, err) + assert.NoError(t, err) req.SetBasicAuth("admin", "password") resp, err := client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 400, resp.StatusCode) // try with bad auth @@ -747,39 +747,39 @@ func TestAdmin_DeleteMeRequestFailed(t *testing.T) { } tkn, err := srv.Authenticator.TokenService().Token(claims) - assert.Nil(t, err) + assert.NoError(t, err) req, err = http.NewRequest(http.MethodGet, fmt.Sprintf("%s/api/v1/admin/deleteme?token=%s", ts.URL, tkn), nil) - assert.Nil(t, err) + assert.NoError(t, err) req.SetBasicAuth("admin", "bad-password") resp, err = client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 403, resp.StatusCode) // try bad user badClaims := claims badClaims.User.ID = "no-such-id" tkn, err = srv.Authenticator.TokenService().Token(badClaims) - assert.Nil(t, err) + assert.NoError(t, err) req, err = http.NewRequest(http.MethodGet, fmt.Sprintf("%s/api/v1/admin/deleteme?token=%s", ts.URL, tkn), nil) - assert.Nil(t, err) + assert.NoError(t, err) req.SetBasicAuth("admin", "password") resp, err = client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 400, resp.StatusCode, resp.Status) // try without deleteme flag badClaims2 := claims badClaims2.User.SetBoolAttr("delete_me", false) tkn, err = srv.Authenticator.TokenService().Token(badClaims2) - assert.Nil(t, err) + assert.NoError(t, err) req, err = http.NewRequest(http.MethodGet, fmt.Sprintf("%s/api/v1/admin/deleteme?token=%s", ts.URL, tkn), nil) - assert.Nil(t, err) + assert.NoError(t, err) req.SetBasicAuth("admin", "password") resp, err = client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 403, resp.StatusCode) b, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) assert.True(t, strings.Contains(string(b), "can't use provided token")) } @@ -793,16 +793,16 @@ func TestAdmin_GetUserInfo(t *testing.T) { URL: "https://radio-t.com/blah"}, User: store.User{Name: "user2", ID: "user2"}} _, err := srv.DataService.Create(c1) - assert.Nil(t, err) + assert.NoError(t, err) _, err = srv.DataService.Create(c2) - assert.Nil(t, err) + assert.NoError(t, err) body, code := getWithAdminAuth(t, fmt.Sprintf("%s/api/v1/admin/user/user1?site=remark42&url=https://radio-t.com/blah", ts.URL)) assert.Equal(t, 200, code) u := store.User{} err = json.Unmarshal([]byte(body), &u) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, store.User{Name: "user1 name", ID: "user1", Picture: "", IP: "823688dafca7393d24c871a2da98a84d8732e927", Admin: false, Blocked: false, Verified: false}, u) diff --git a/backend/app/rest/api/migrator_test.go b/backend/app/rest/api/migrator_test.go index 12faf1e0..b1990539 100644 --- a/backend/app/rest/api/migrator_test.go +++ b/backend/app/rest/api/migrator_test.go @@ -38,13 +38,13 @@ func TestMigrator_Import(t *testing.T) { req, err := http.NewRequest("POST", ts.URL+"/api/v1/admin/import?site=remark42&provider=native", r) require.NoError(t, err) req.SetBasicAuth("admin", "password") - assert.Nil(t, err) + assert.NoError(t, err) resp, err := client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, http.StatusAccepted, resp.StatusCode) b, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "{\"status\":\"import request accepted\"}\n", string(b)) waitForMigrationCompletion(t, ts) @@ -74,11 +74,11 @@ func TestMigrator_ImportForm(t *testing.T) { authts := strings.Replace(ts.URL, "http://", "http://admin:password@", 1) resp, err := http.Post(authts+"/api/v1/admin/import/form?site=remark42&provider=native", contentType, bodyBuf) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, http.StatusAccepted, resp.StatusCode) b, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "{\"status\":\"import request accepted\"}\n", string(b)) waitForMigrationCompletion(t, ts) @@ -92,15 +92,15 @@ func TestMigrator_ImportFromWP(t *testing.T) { client := &http.Client{Timeout: 1 * time.Second} req, err := http.NewRequest("POST", ts.URL+"/api/v1/admin/import?site=remark42&provider=wordpress", r) - assert.Nil(t, err) + assert.NoError(t, err) req.Header.Add("Content-Type", "application/xml; charset=utf-8") req.SetBasicAuth("admin", "password") resp, err := client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, http.StatusAccepted, resp.StatusCode) b, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "{\"status\":\"import request accepted\"}\n", string(b)) waitForMigrationCompletion(t, ts) @@ -121,9 +121,9 @@ func TestMigrator_ImportRejected(t *testing.T) { client := &http.Client{Timeout: 1 * time.Second} req, err := http.NewRequest("POST", ts.URL+"/api/v1/admin/import?site=remark42&provider=native&secret=XYZ", r) - assert.Nil(t, err) + assert.NoError(t, err) resp, err := client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, http.StatusUnauthorized, resp.StatusCode) } @@ -144,18 +144,18 @@ func TestMigrator_ImportDouble(t *testing.T) { req, err := http.NewRequest("POST", ts.URL+"/api/v1/admin/import?site=remark42&provider=native", r) require.NoError(t, err) req.SetBasicAuth("admin", "password") - assert.Nil(t, err) + assert.NoError(t, err) resp, err := client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, http.StatusAccepted, resp.StatusCode) client = &http.Client{Timeout: 5 * time.Second} req, err = http.NewRequest("POST", ts.URL+"/api/v1/admin/import?site=remark42&provider=native", r) require.NoError(t, err) req.SetBasicAuth("admin", "password") - assert.Nil(t, err) + assert.NoError(t, err) resp, err = client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, http.StatusConflict, resp.StatusCode) waitForMigrationCompletion(t, ts) } @@ -177,9 +177,9 @@ func TestMigrator_ImportWaitExpired(t *testing.T) { req, err := http.NewRequest("POST", ts.URL+"/api/v1/admin/import?site=remark42&provider=native", r) require.NoError(t, err) req.SetBasicAuth("admin", "password") - require.Nil(t, err) + require.NoError(t, err) resp, err := client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, http.StatusAccepted, resp.StatusCode) client = &http.Client{Timeout: 5 * time.Second} @@ -210,19 +210,19 @@ func TestMigrator_Export(t *testing.T) { // import comments first client := &http.Client{Timeout: 1 * time.Second} req, err := http.NewRequest("POST", ts.URL+"/api/v1/admin/import?site=remark42&provider=native", r) - require.Nil(t, err) + require.NoError(t, err) req.SetBasicAuth("admin", "password") resp, err := client.Do(req) - require.Nil(t, err) + require.NoError(t, err) require.Equal(t, http.StatusAccepted, resp.StatusCode) waitForMigrationCompletion(t, ts) // check file mode req, err = http.NewRequest("GET", ts.URL+"/api/v1/admin/export?mode=file&site=remark42", nil) - require.Nil(t, err) + require.NoError(t, err) req.SetBasicAuth("admin", "password") resp, err = client.Do(req) - require.Nil(t, err) + require.NoError(t, err) require.Equal(t, 200, resp.StatusCode) require.Equal(t, "application/gzip", resp.Header.Get("Content-Type")) @@ -236,10 +236,10 @@ func TestMigrator_Export(t *testing.T) { // check stream mode req, err = http.NewRequest("GET", ts.URL+"/api/v1/admin/export?mode=stream&site=remark42", nil) - require.Nil(t, err) + require.NoError(t, err) req.SetBasicAuth("admin", "password") resp, err = client.Do(req) - require.Nil(t, err) + require.NoError(t, err) require.Equal(t, 200, resp.StatusCode) require.Equal(t, "text/plain; charset=utf-8", resp.Header.Get("Content-Type")) @@ -250,9 +250,9 @@ func TestMigrator_Export(t *testing.T) { t.Logf("%s", string(body)) req, err = http.NewRequest("GET", ts.URL+"/api/v1/admin/export?site=remark42", nil) - require.Nil(t, err) + require.NoError(t, err) resp, err = client.Do(req) - require.Nil(t, err) + require.NoError(t, err) require.Equal(t, http.StatusUnauthorized, resp.StatusCode) } @@ -288,7 +288,7 @@ func TestMigrator_Remap(t *testing.T) { require.Equal(t, 200, code) comments := commentsWithInfo{} err = json.Unmarshal([]byte(res), &comments) - require.Nil(t, err) + require.NoError(t, err) require.Equal(t, 2, comments.Info.Count) require.False(t, comments.Info.ReadOnly) @@ -296,14 +296,14 @@ func TestMigrator_Remap(t *testing.T) { require.Equal(t, 200, code) comments = commentsWithInfo{} err = json.Unmarshal([]byte(res), &comments) - require.Nil(t, err) + require.NoError(t, err) require.Equal(t, 1, comments.Info.Count) require.True(t, comments.Info.ReadOnly) // we want remap urls to another domain - www.remark42.com rules := "https://remark42.com/* https://www.remark42.com/*" resp, err := post(t, ts.URL+"/api/v1/admin/remap?site=remark42", rules) // auth as admin - require.Nil(t, err) + require.NoError(t, err) require.Equal(t, http.StatusAccepted, resp.StatusCode) waitForMigrationCompletion(t, ts) @@ -312,7 +312,7 @@ func TestMigrator_Remap(t *testing.T) { require.Equal(t, 200, code) comments = commentsWithInfo{} err = json.Unmarshal([]byte(res), &comments) - require.Nil(t, err) + require.NoError(t, err) require.Equal(t, 2, comments.Info.Count) require.False(t, comments.Info.ReadOnly) @@ -320,7 +320,7 @@ func TestMigrator_Remap(t *testing.T) { require.Equal(t, 200, code) comments = commentsWithInfo{} err = json.Unmarshal([]byte(res), &comments) - require.Nil(t, err) + require.NoError(t, err) require.Equal(t, 1, comments.Info.Count) require.True(t, comments.Info.ReadOnly) @@ -329,14 +329,14 @@ func TestMigrator_Remap(t *testing.T) { require.Equal(t, 200, code) comments = commentsWithInfo{} err = json.Unmarshal([]byte(res), &comments) - require.Nil(t, err) + require.NoError(t, err) require.Equal(t, 0, comments.Info.Count) res, code = get(t, ts.URL+"/api/v1/find?site=remark42&url=https://remark42.com/demo-another/") require.Equal(t, 200, code) comments = commentsWithInfo{} err = json.Unmarshal([]byte(res), &comments) - require.Nil(t, err) + require.NoError(t, err) require.Equal(t, 0, comments.Info.Count) } @@ -348,9 +348,9 @@ func TestMigrator_RemapReject(t *testing.T) { client := &http.Client{Timeout: 1 * time.Second} rules := strings.NewReader(`https://remark42.com/* https://www.remark42.com/*`) req, err := http.NewRequest("POST", ts.URL+"/api/v1/admin/remap?site=remark42", rules) - require.Nil(t, err) + require.NoError(t, err) resp, err := client.Do(req) - require.Nil(t, err) + require.NoError(t, err) require.Equal(t, http.StatusUnauthorized, resp.StatusCode) } diff --git a/backend/app/rest/api/rest_private_test.go b/backend/app/rest/api/rest_private_test.go index 9a125e56..7e5963d8 100644 --- a/backend/app/rest/api/rest_private_test.go +++ b/backend/app/rest/api/rest_private_test.go @@ -39,15 +39,15 @@ func TestRest_Create(t *testing.T) { resp, err := post(t, ts.URL+"/api/v1/comment", `{"text": "test 123", "locator":{"url": "https://radio-t.com/blah1", "site": "remark42"}}`) - assert.Nil(t, err) + assert.NoError(t, err) b, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) require.Equal(t, http.StatusCreated, resp.StatusCode, string(b)) t.Log(string(b)) c := R.JSON{} err = json.Unmarshal(b, &c) - assert.Nil(t, err) + assert.NoError(t, err) loc := c["locator"].(map[string]interface{}) assert.Equal(t, "remark42", loc["site"]) assert.Equal(t, "https://radio-t.com/blah1", loc["url"]) @@ -62,16 +62,16 @@ func TestRest_CreateOldPost(t *testing.T) { old := store.Comment{Text: "test test old", ParentID: "", Timestamp: time.Now().AddDate(0, 0, -5), Locator: store.Locator{SiteID: "remark42", URL: "https://radio-t.com/blah1"}, User: store.User{ID: "u1"}} _, err := srv.DataService.Create(old) - assert.Nil(t, err) + assert.NoError(t, err) comments, err := srv.DataService.Find(store.Locator{SiteID: "remark42", URL: "https://radio-t.com/blah1"}, "time", store.User{}) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 1, len(comments)) // try to add new comment to the same old post resp, err := post(t, ts.URL+"/api/v1/comment", `{"text": "test 123", "locator":{"site": "remark42","url": "https://radio-t.com/blah1"}}`) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, http.StatusCreated, resp.StatusCode) assert.Nil(t, srv.DataService.DeleteAll("remark42")) @@ -79,11 +79,11 @@ func TestRest_CreateOldPost(t *testing.T) { old = store.Comment{Text: "test test old", ParentID: "", Timestamp: time.Now().AddDate(0, 0, -15), Locator: store.Locator{SiteID: "remark42", URL: "https://radio-t.com/blah1"}, User: store.User{ID: "u1"}} _, err = srv.DataService.Create(old) - assert.Nil(t, err) + assert.NoError(t, err) resp, err = post(t, ts.URL+"/api/v1/comment", `{"text": "test 123", "locator":{"site": "remark42","url": "https://radio-t.com/blah1"}}`) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, http.StatusForbidden, resp.StatusCode) } @@ -94,25 +94,25 @@ func TestRest_CreateTooBig(t *testing.T) { longComment := fmt.Sprintf(`{"text": "%4001s", "locator":{"url": "https://radio-t.com/blah1", "site": "remark42"}}`, "Щ") resp, err := post(t, ts.URL+"/api/v1/comment", longComment) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, http.StatusBadRequest, resp.StatusCode) b, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) c := R.JSON{} err = json.Unmarshal(b, &c) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "comment text exceeded max allowed size 4000 (4001)", c["error"]) assert.Equal(t, "invalid comment", c["details"]) veryLongComment := fmt.Sprintf(`{"text": "%70000s", "locator":{"url": "https://radio-t.com/blah1", "site": "remark42"}}`, "Щ") resp, err = post(t, ts.URL+"/api/v1/comment", veryLongComment) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, http.StatusBadRequest, resp.StatusCode) b, err = ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) c = R.JSON{} err = json.Unmarshal(b, &c) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "http: request body too large", c["error"]) assert.Equal(t, "can't bind comment", c["details"]) } @@ -125,13 +125,13 @@ func TestRest_CreateWithRestrictedWord(t *testing.T) { "site": "remark42"}}`) resp, err := post(t, ts.URL+"/api/v1/comment", badComment) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, http.StatusBadRequest, resp.StatusCode) b, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) c := R.JSON{} err = json.Unmarshal(b, &c) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "comment contains restricted words", c["error"]) assert.Equal(t, "invalid comment", c["details"]) } @@ -150,7 +150,7 @@ func TestRest_CreateRejected(t *testing.T) { // try with wrong aud client := &http.Client{Timeout: 5 * time.Second} req, err := http.NewRequest("POST", ts.URL+"/api/v1/comment", strings.NewReader(body)) - require.Nil(t, err) + require.NoError(t, err) req.Header.Add("X-JWT", devTokenBadAud) resp, err = client.Do(req) require.NoError(t, err) @@ -164,13 +164,13 @@ func TestRest_CreateAndGet(t *testing.T) { // create comment resp, err := post(t, ts.URL+"/api/v1/comment", `{"text": "**test** *123*\n\n http://radio-t.com", "locator":{"url": "https://radio-t.com/blah1", "site": "remark42"}}`) - require.Nil(t, err) + require.NoError(t, err) require.Equal(t, http.StatusCreated, resp.StatusCode) b, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) c := R.JSON{} err = json.Unmarshal(b, &c) - assert.Nil(t, err) + assert.NoError(t, err) id := c["id"].(string) @@ -179,7 +179,7 @@ func TestRest_CreateAndGet(t *testing.T) { assert.Equal(t, 200, code) comment := store.Comment{} err = json.Unmarshal([]byte(res), &comment) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "test 123
\n\n\n", comment.Text) assert.Equal(t, "**test** *123*\n\n http://radio-t.com", comment.Orig) assert.Equal(t, store.User{Name: "admin", ID: "admin", Admin: true, Blocked: false, @@ -192,7 +192,7 @@ func TestRest_CreateAndGet(t *testing.T) { assert.Equal(t, 200, code) comment = store.Comment{} err = json.Unmarshal([]byte(res), &comment) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, store.User{Name: "admin", ID: "admin", Admin: true, Blocked: false, IP: ""}, comment.User, "no ip") } @@ -207,18 +207,18 @@ func TestRest_Update(t *testing.T) { client := http.Client{} req, err := http.NewRequest(http.MethodPut, ts.URL+"/api/v1/comment/"+id+"?site=remark42&url=https://radio-t.com/blah1", strings.NewReader(`{"text":"updated text", "summary":"my edit"}`)) - assert.Nil(t, err) + assert.NoError(t, err) req.Header.Add("X-JWT", devToken) b, err := client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) body, err := ioutil.ReadAll(b.Body) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 200, b.StatusCode, string(body)) // comments returned by update c2 := store.Comment{} err = json.Unmarshal(body, &c2) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, id, c2.ID) assert.Equal(t, "updated text
\n", c2.Text) assert.Equal(t, "updated text", c2.Orig) @@ -230,7 +230,7 @@ func TestRest_Update(t *testing.T) { assert.Equal(t, 200, code) c3 := store.Comment{} err = json.Unmarshal([]byte(res), &c3) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, c2, c3, "same as response from update") } @@ -250,7 +250,7 @@ func TestRest_UpdateDelete(t *testing.T) { require.NoError(t, err) j := []store.PostInfo{} err = json.Unmarshal(bb, &j) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, []store.PostInfo([]store.PostInfo{{URL: "https://radio-t.com/blah1", Count: 1}, {URL: "https://radio-t.com/blah2", Count: 0}}), j) @@ -278,17 +278,17 @@ func TestRest_UpdateDelete(t *testing.T) { assert.Equal(t, 200, code) c3 := store.Comment{} err = json.Unmarshal([]byte(res), &c3) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "", c3.Text) assert.Equal(t, "", c3.Orig) assert.True(t, c3.Deleted) // check multi count updated resp, err = post(t, ts.URL+"/api/v1/counts?site=remark42", `["https://radio-t.com/blah1","https://radio-t.com/blah2"]`) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, http.StatusOK, resp.StatusCode) bb, err = ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) j = []store.PostInfo{} err = json.Unmarshal(bb, &j) require.NoError(t, err) @@ -303,27 +303,27 @@ func TestRest_UpdateNotOwner(t *testing.T) { c1 := store.Comment{Text: "test test #1", ParentID: "p1", Locator: store.Locator{SiteID: "remark42", URL: "https://radio-t.com/blah1"}, User: store.User{ID: "xyz"}} id1, err := srv.DataService.Create(c1) - assert.Nil(t, err) + assert.NoError(t, err) client := http.Client{} req, err := http.NewRequest(http.MethodPut, ts.URL+"/api/v1/comment/"+id1+ "?site=remark42&url=https://radio-t.com/blah1", strings.NewReader(`{"text":"updated text", "summary":"my edit"}`)) - assert.Nil(t, err) + assert.NoError(t, err) req.Header.Add("X-JWT", devToken) b, err := client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) body, err := ioutil.ReadAll(b.Body) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 403, b.StatusCode, string(body), "update from non-owner") assert.Equal(t, `{"code":3,"details":"can not edit comments for other users","error":"rejected"}`+"\n", string(body)) client = http.Client{} req, err = http.NewRequest(http.MethodPut, ts.URL+"/api/v1/comment/"+id1+ "?site=remark42&url=https://radio-t.com/blah1", strings.NewReader(`ERRR "text":"updated text", "summary":"my"}`)) - assert.Nil(t, err) + assert.NoError(t, err) req.Header.Add("X-JWT", devToken) b, err = client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 400, b.StatusCode, string(body), "update is not json") } @@ -338,7 +338,7 @@ func TestRest_UpdateWrongAud(t *testing.T) { client := http.Client{} req, err := http.NewRequest(http.MethodPut, ts.URL+"/api/v1/comment/"+id+"?site=remark42&url=https://radio-t.com/blah1", strings.NewReader(`{"text":"updated text", "summary":"my edit"}`)) - assert.Nil(t, err) + assert.NoError(t, err) req.Header.Add("X-JWT", devTokenBadAud) b, err := client.Do(req) assert.NoError(t, err) @@ -356,15 +356,15 @@ func TestRest_UpdateWithRestrictedWords(t *testing.T) { client := http.Client{} req, err := http.NewRequest(http.MethodPut, ts.URL+"/api/v1/comment/"+id+"?site=remark42&url=https://radio-t.com/blah1", strings.NewReader(`{"text":"What the duck is that?", "summary":"my edit"}`)) - assert.Nil(t, err) + assert.NoError(t, err) req.Header.Add("X-JWT", devToken) b, err := client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) body, err := ioutil.ReadAll(b.Body) - assert.Nil(t, err) + assert.NoError(t, err) c := R.JSON{} err = json.Unmarshal(body, &c) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 400, b.StatusCode, string(body)) assert.Equal(t, "comment contains restricted words", c["error"]) assert.Equal(t, "invalid comment", c["details"]) @@ -386,10 +386,10 @@ func TestRest_Vote(t *testing.T) { client := http.Client{} req, err := http.NewRequest(http.MethodPut, fmt.Sprintf("%s/api/v1/vote/%s?site=remark42&url=https://radio-t.com/blah&vote=%d", ts.URL, id1, val), nil) - assert.Nil(t, err) + assert.NoError(t, err) req.Header.Add("X-JWT", devToken) resp, err := client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) return resp.StatusCode } @@ -399,7 +399,7 @@ func TestRest_Vote(t *testing.T) { assert.Equal(t, 200, code) cr := store.Comment{} err := json.Unmarshal([]byte(body), &cr) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 1, cr.Score) assert.Equal(t, 1, cr.Vote) assert.Equal(t, map[string]bool(nil), cr.Votes) @@ -409,7 +409,7 @@ func TestRest_Vote(t *testing.T) { assert.Equal(t, 200, code) cr = store.Comment{} err = json.Unmarshal([]byte(body), &cr) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 0, cr.Score) assert.Equal(t, 0, cr.Vote) @@ -418,7 +418,7 @@ func TestRest_Vote(t *testing.T) { assert.Equal(t, 200, code) cr = store.Comment{} err = json.Unmarshal([]byte(body), &cr) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, -1, cr.Score) assert.Equal(t, -1, cr.Vote) @@ -427,7 +427,7 @@ func TestRest_Vote(t *testing.T) { assert.Equal(t, 200, code) cr = store.Comment{} err = json.Unmarshal([]byte(body), &cr) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, -1, cr.Score) assert.Equal(t, -1, cr.Vote) @@ -435,7 +435,7 @@ func TestRest_Vote(t *testing.T) { assert.Equal(t, 200, code) cr = store.Comment{} err = json.Unmarshal([]byte(body), &cr) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, -1, cr.Score) assert.Equal(t, 0, cr.Vote, "no vote info for not authed user") assert.Equal(t, map[string]bool(nil), cr.Votes) @@ -448,7 +448,7 @@ func TestRest_Vote(t *testing.T) { assert.Equal(t, 200, resp.StatusCode) cr = store.Comment{} err = json.NewDecoder(resp.Body).Decode(&cr) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, -1, cr.Score) assert.Equal(t, 0, cr.Vote, "no vote info for different user") assert.Equal(t, map[string]bool(nil), cr.Votes) @@ -470,23 +470,23 @@ func TestRest_AnonVote(t *testing.T) { client := http.Client{} req, err := http.NewRequest(http.MethodPut, fmt.Sprintf("%s/api/v1/vote/%s?site=remark42&url=https://radio-t.com/blah&vote=%d", ts.URL, id1, val), nil) - assert.Nil(t, err) + assert.NoError(t, err) req.Header.Add("X-JWT", anonToken) resp, err := client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) return resp.StatusCode } getWithAnonAuth := func(url string) (body string, code int) { client := &http.Client{Timeout: 5 * time.Second} req, err := http.NewRequest("GET", url, nil) - require.Nil(t, err) + require.NoError(t, err) req.Header.Add("X-JWT", anonToken) r, err := client.Do(req) - require.Nil(t, err) + require.NoError(t, err) defer r.Body.Close() b, err := ioutil.ReadAll(r.Body) - assert.Nil(t, err) + assert.NoError(t, err) return string(b), r.StatusCode } @@ -499,7 +499,7 @@ func TestRest_AnonVote(t *testing.T) { assert.Equal(t, 200, code) cr := store.Comment{} err := json.Unmarshal([]byte(body), &cr) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 1, cr.Score) assert.Equal(t, 1, cr.Vote) assert.Equal(t, map[string]bool(nil), cr.Votes) @@ -588,10 +588,10 @@ func TestRest_EmailNotification(t *testing.T) { "user": {"name": "dev::good@example.com"}, "locator":{"url": "https://radio-t.com/blah1", "site": "remark42"}}`)) - assert.Nil(t, err) + assert.NoError(t, err) req.Header.Add("X-JWT", devToken) resp, err := client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) body, err := ioutil.ReadAll(resp.Body) require.NoError(t, err) require.Equal(t, http.StatusCreated, resp.StatusCode, string(body)) @@ -609,10 +609,10 @@ func TestRest_EmailNotification(t *testing.T) { "user": {"name": "other_user"}, "locator":{"url": "https://radio-t.com/blah1", "site": "remark42"}}`, parentComment.ID))) - assert.Nil(t, err) + assert.NoError(t, err) req.Header.Add("X-JWT", devToken) resp, err = client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) body, err = ioutil.ReadAll(resp.Body) require.NoError(t, err) require.Equal(t, http.StatusCreated, resp.StatusCode, string(body)) @@ -653,10 +653,10 @@ func TestRest_EmailNotification(t *testing.T) { "user": {"name": "other_user"}, "locator":{"url": "https://radio-t.com/blah1", "site": "remark42"}}`, parentComment.ID))) - assert.Nil(t, err) + assert.NoError(t, err) req.Header.Add("X-JWT", devToken) resp, err = client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) body, err = ioutil.ReadAll(resp.Body) require.NoError(t, err) require.Equal(t, http.StatusCreated, resp.StatusCode, string(body)) @@ -681,10 +681,10 @@ func TestRest_EmailNotification(t *testing.T) { "user": {"name": "other_user"}, "locator":{"url": "https://radio-t.com/blah1", "site": "remark42"}}`)) - assert.Nil(t, err) + assert.NoError(t, err) req.Header.Add("X-JWT", devToken) resp, err = client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) body, err = ioutil.ReadAll(resp.Body) require.NoError(t, err) require.Equal(t, http.StatusCreated, resp.StatusCode, string(body)) @@ -707,18 +707,18 @@ func TestRest_UserAllData(t *testing.T) { c3 := store.Comment{User: user, Text: "test test #3", ParentID: "p1", Locator: store.Locator{SiteID: "remark42", URL: "https://radio-t.com/blah1"}, Timestamp: time.Date(2018, 05, 27, 1, 14, 25, 0, time.Local)} _, err := srv.DataService.Create(c1) - require.Nil(t, err, "%+v", err) + require.NoError(t, err, "%+v", err) _, err = srv.DataService.Create(c2) - require.Nil(t, err) + require.NoError(t, err) _, err = srv.DataService.Create(c3) - require.Nil(t, err) + require.NoError(t, err) client := &http.Client{Timeout: 1 * time.Second} req, err := http.NewRequest("GET", ts.URL+"/api/v1/userdata?site=remark42", nil) - require.Nil(t, err) + require.NoError(t, err) req.Header.Add("X-JWT", devToken) resp, err := client.Do(req) - require.Nil(t, err) + require.NoError(t, err) require.Equal(t, 200, resp.StatusCode) require.Equal(t, "application/gzip", resp.Header.Get("Content-Type")) @@ -738,15 +738,15 @@ func TestRest_UserAllData(t *testing.T) { }{} err = json.Unmarshal(ungzBody, &parsed) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, store.User{Name: "developer one", ID: "dev", Picture: "http://example.com/pic.png", IP: "127.0.0.1", SiteID: "remark42"}, parsed.Info) assert.Equal(t, 3, len(parsed.Comments)) req, err = http.NewRequest("GET", ts.URL+"/api/v1/userdata?site=remark42", nil) - require.Nil(t, err) + require.NoError(t, err) resp, err = client.Do(req) - require.Nil(t, err) + require.NoError(t, err) require.Equal(t, 401, resp.StatusCode) } @@ -762,14 +762,14 @@ func TestRest_UserAllDataManyComments(t *testing.T) { c.ID = fmt.Sprintf("id-%03d", i) c.Timestamp = c.Timestamp.Add(time.Second) _, err := srv.DataService.Create(c) - require.Nil(t, err) + require.NoError(t, err) } client := &http.Client{Timeout: 1 * time.Second} req, err := http.NewRequest("GET", ts.URL+"/api/v1/userdata?site=remark42", nil) - require.Nil(t, err) + require.NoError(t, err) req.Header.Add("X-JWT", devToken) resp, err := client.Do(req) - require.Nil(t, err) + require.NoError(t, err) require.Equal(t, 200, resp.StatusCode) require.Equal(t, "application/gzip", resp.Header.Get("Content-Type")) @@ -789,30 +789,30 @@ func TestRest_DeleteMe(t *testing.T) { client := http.Client{} req, err := http.NewRequest(http.MethodPost, fmt.Sprintf("%s/api/v1/deleteme?site=remark42", ts.URL), nil) - assert.Nil(t, err) + assert.NoError(t, err) req.Header.Add("X-JWT", devToken) resp, err := client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 200, resp.StatusCode) body, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) m := map[string]string{} err = json.Unmarshal(body, &m) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "remark42", m["site"]) assert.Equal(t, "dev", m["user_id"]) token := m["token"] claims, err := srv.Authenticator.TokenService().Parse(token) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "dev", claims.User.ID) assert.Equal(t, "https://demo.remark42.com/web/deleteme.html?token="+token, m["link"]) req, err = http.NewRequest(http.MethodPost, fmt.Sprintf("%s/api/v1/deleteme?site=remark42", ts.URL), nil) - assert.Nil(t, err) + assert.NoError(t, err) resp, err = client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 401, resp.StatusCode) } @@ -837,10 +837,10 @@ func TestRest_SavePictureCtrl(t *testing.T) { req.Header.Add("Content-Type", contentType) req.Header.Add("X-JWT", devToken) resp, err := client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 200, resp.StatusCode) body, err := ioutil.ReadAll(resp.Body) - require.Nil(t, err) + require.NoError(t, err) m := map[string]string{} err = json.Unmarshal(body, &m) @@ -854,7 +854,7 @@ func TestRest_SavePictureCtrl(t *testing.T) { require.NoError(t, err) assert.Equal(t, 200, resp.StatusCode) body, err := ioutil.ReadAll(resp.Body) - require.Nil(t, err) + require.NoError(t, err) assert.Equal(t, 1462, len(body)) assert.Equal(t, "image/png", resp.Header.Get("Content-Type")) @@ -920,11 +920,11 @@ func TestRest_CreateWithPictures(t *testing.T) { req.Header.Add("Content-Type", contentType) req.Header.Add("X-JWT", devToken) resp, err := client.Do(req) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 200, resp.StatusCode) body, err := ioutil.ReadAll(resp.Body) - require.Nil(t, err) + require.NoError(t, err) m := map[string]string{} err = json.Unmarshal(body, &m) assert.NoError(t, err) @@ -941,13 +941,13 @@ func TestRest_CreateWithPictures(t *testing.T) { body := fmt.Sprintf(`{"text": "%s", "locator":{"url": "https://radio-t.com/blah1", "site": "remark42"}}`, text) resp, err := post(t, ts.URL+"/api/v1/comment", body) - assert.Nil(t, err) + assert.NoError(t, err) b, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) require.Equal(t, http.StatusCreated, resp.StatusCode, string(b)) _, err = os.Stat("/tmp/remark42/images/" + id1) - assert.NotNil(t, err, "not moved from staging yet") + assert.Error(t, err, "not moved from staging yet") time.Sleep(500 * time.Millisecond) _, err = os.Stat("/tmp/remark42/images/" + id1) diff --git a/backend/app/rest/api/rest_public_test.go b/backend/app/rest/api/rest_public_test.go index 6362639b..2727ecf2 100644 --- a/backend/app/rest/api/rest_public_test.go +++ b/backend/app/rest/api/rest_public_test.go @@ -36,14 +36,14 @@ func TestRest_Preview(t *testing.T) { defer teardown() resp, err := post(t, ts.URL+"/api/v1/preview", `{"text": "test 123", "locator":{"url": "https://radio-t.com/blah1", "site": "radio-t"}}`) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, http.StatusOK, resp.StatusCode) b, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "test 123
\n", string(b)) resp, err = post(t, ts.URL+"/api/v1/preview", "bad") - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, 400, resp.StatusCode) } @@ -67,10 +67,10 @@ BKT t.Log(j) resp, err := post(t, ts.URL+"/api/v1/preview", j) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, http.StatusOK, resp.StatusCode) b, err := ioutil.ReadAll(resp.Body) - assert.Nil(t, err) + assert.NoError(t, err) assert.Equal(t, "func TestRest_Preview(t *testing.T) {\nsrv, ts := prep(t)\n require.NotNil(t, srv)\n}\n\n", string(b))
}
@@ -82,7 +82,7 @@ func TestRest_Find(t *testing.T) {
assert.Equal(t, 200, code)
comments := commentsWithInfo{}
err := json.Unmarshal([]byte(res), &comments)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 0, len(comments.Comments), "should have 0 comments")
c1 := store.Comment{Text: "test test #1", ParentID: "",
@@ -100,7 +100,7 @@ func TestRest_Find(t *testing.T) {
assert.Equal(t, 200, code)
comments = commentsWithInfo{}
err = json.Unmarshal([]byte(res), &comments)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 2, len(comments.Comments), "should have 2 comments")
assert.Equal(t, id1, comments.Comments[0].ID)
assert.Equal(t, id2, comments.Comments[1].ID)
@@ -115,7 +115,7 @@ func TestRest_Find(t *testing.T) {
res, code = get(t, ts.URL+"/api/v1/find?site=remark42&url=https://radio-t.com/blah1&sort=-time")
assert.Equal(t, 200, code)
err = json.Unmarshal([]byte(res), &comments)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 2, len(comments.Comments), "should have 2 comments")
assert.Equal(t, id1, comments.Comments[1].ID)
assert.Equal(t, id2, comments.Comments[0].ID)
@@ -125,7 +125,7 @@ func TestRest_Find(t *testing.T) {
res, code = get(t, ts.URL+"/api/v1/find?site=remark42&url=https://radio-t.com/blah1&format=tree")
assert.Equal(t, 200, code)
err = json.Unmarshal([]byte(res), &tree)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 1, len(tree.Nodes))
assert.Equal(t, 1, len(tree.Nodes[0].Replies))
assert.Equal(t, 2, tree.Info.Count)
@@ -140,26 +140,26 @@ func TestRest_FindAge(t *testing.T) {
c1 := store.Comment{Text: "test test #1", ParentID: "", Timestamp: time.Now().AddDate(0, 0, -5),
Locator: store.Locator{SiteID: "remark42", URL: "https://radio-t.com/blah1"}, User: store.User{ID: "u1"}}
_, err := srv.DataService.Create(c1)
- require.Nil(t, err)
+ require.NoError(t, err)
c2 := store.Comment{Text: "test test #2", ParentID: "", Timestamp: time.Now().AddDate(0, 0, -15),
Locator: store.Locator{SiteID: "remark42", URL: "https://radio-t.com/blah2"}, User: store.User{ID: "u1"}}
_, err = srv.DataService.Create(c2)
- require.Nil(t, err)
+ require.NoError(t, err)
tree := service.Tree{}
res, code := get(t, ts.URL+"/api/v1/find?site=remark42&url=https://radio-t.com/blah1&format=tree")
assert.Equal(t, 200, code)
err = json.Unmarshal([]byte(res), &tree)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, "https://radio-t.com/blah1", tree.Info.URL)
assert.False(t, tree.Info.ReadOnly, "post is fresh")
res, code = get(t, ts.URL+"/api/v1/find?site=remark42&url=https://radio-t.com/blah2&format=tree")
assert.Equal(t, 200, code)
err = json.Unmarshal([]byte(res), &tree)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, "https://radio-t.com/blah2", tree.Info.URL)
assert.True(t, tree.Info.ReadOnly, "post is old")
}
@@ -172,27 +172,27 @@ func TestRest_FindReadOnly(t *testing.T) {
Locator: store.Locator{SiteID: "remark42", URL: "https://radio-t.com/blah1"}, User: store.User{ID: "u1"}}
_, err := srv.DataService.Create(c1)
- require.Nil(t, err)
+ require.NoError(t, err)
c2 := store.Comment{Text: "test test #2", ParentID: "", Timestamp: time.Now().AddDate(0, 0, -2),
Locator: store.Locator{SiteID: "remark42", URL: "https://radio-t.com/blah2"}, User: store.User{ID: "u1"}}
_, err = srv.DataService.Create(c2)
- require.Nil(t, err)
+ require.NoError(t, err)
// set post to read-only
client := http.Client{}
req, err := http.NewRequest(http.MethodPut,
fmt.Sprintf("%s/api/v1/admin/readonly?site=remark42&url=https://radio-t.com/blah1&ro=1", ts.URL), nil)
- assert.Nil(t, err)
+ assert.NoError(t, err)
req.SetBasicAuth("admin", "password")
_, err = client.Do(req)
- require.Nil(t, err)
+ require.NoError(t, err)
tree := service.Tree{}
res, code := get(t, ts.URL+"/api/v1/find?site=remark42&url=https://radio-t.com/blah1&format=tree")
assert.Equal(t, 200, code)
err = json.Unmarshal([]byte(res), &tree)
- require.Nil(t, err)
+ require.NoError(t, err)
assert.Equal(t, "https://radio-t.com/blah1", tree.Info.URL)
assert.True(t, tree.Info.ReadOnly, "post is ro")
@@ -200,7 +200,7 @@ func TestRest_FindReadOnly(t *testing.T) {
res, code = get(t, ts.URL+"/api/v1/find?site=remark42&url=https://radio-t.com/blah2&format=tree")
assert.Equal(t, 200, code)
err = json.Unmarshal([]byte(res), &tree)
- require.Nil(t, err)
+ require.NoError(t, err)
assert.Equal(t, "https://radio-t.com/blah2", tree.Info.URL)
assert.False(t, tree.Info.ReadOnly, "post is writable")
}
@@ -213,7 +213,7 @@ func TestRest_FindUserView(t *testing.T) {
assert.Equal(t, 200, code)
comments := commentsWithInfo{}
err := json.Unmarshal([]byte(res), &comments)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 0, len(comments.Comments), "should have 0 comments")
c1 := store.Comment{Text: "test test #1", ParentID: "",
@@ -231,7 +231,7 @@ func TestRest_FindUserView(t *testing.T) {
assert.Equal(t, 200, code)
comments = commentsWithInfo{}
err = json.Unmarshal([]byte(res), &comments)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 2, len(comments.Comments), "should have 2 comments")
assert.Equal(t, id1, comments.Comments[0].ID)
assert.Equal(t, id2, comments.Comments[1].ID)
@@ -266,7 +266,7 @@ func TestRest_Last(t *testing.T) {
assert.Equal(t, 200, code)
comments := []store.Comment{}
err := json.Unmarshal([]byte(res), &comments)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 2, len(comments), "should have 2 comments")
assert.Equal(t, id1, comments[1].ID)
assert.Equal(t, id2, comments[0].ID)
@@ -275,7 +275,7 @@ func TestRest_Last(t *testing.T) {
assert.Equal(t, 200, code)
comments = []store.Comment{}
err = json.Unmarshal([]byte(res), &comments)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 2, len(comments), "should have 2 comments")
assert.Equal(t, id1, comments[1].ID)
assert.Equal(t, id2, comments[0].ID)
@@ -284,29 +284,29 @@ func TestRest_Last(t *testing.T) {
assert.Equal(t, 200, code)
comments = []store.Comment{}
err = json.Unmarshal([]byte(res), &comments)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 1, len(comments), "should have 1 comments")
assert.Equal(t, id2, comments[0].ID)
res, code = get(t, ts.URL+"/api/v1/last/5?site=remark42")
assert.Equal(t, 200, code)
err = json.Unmarshal([]byte(res), &comments)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 3, len(comments), "should have 3 comments")
res, code = get(t, ts.URL+"/api/v1/last/X?site=remark42")
assert.Equal(t, 200, code)
err = json.Unmarshal([]byte(res), &comments)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 3, len(comments), "should have 3 comments")
err = srv.DataService.Delete(store.Locator{SiteID: "remark42", URL: "https://radio-t.com/blah1"}, id1, store.SoftDelete)
- assert.Nil(t, err)
+ assert.NoError(t, err)
srv.Cache.Flush(cache.FlusherRequest{})
res, code = get(t, ts.URL+"/api/v1/last/5?site=remark42")
assert.Equal(t, 200, code)
err = json.Unmarshal([]byte(res), &comments)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 2, len(comments), "should have 2 comments")
t.Logf("%+v", comments)
@@ -345,7 +345,7 @@ func TestRest_FindUserComments(t *testing.T) {
}{}
err = json.Unmarshal([]byte(res), &resp)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 3, len(resp.Comments), "should have 3 comments")
assert.Equal(t, 4, resp.Count, "should have 3 count")
@@ -362,7 +362,7 @@ func TestRest_UserInfo(t *testing.T) {
assert.Equal(t, 200, code)
user := store.User{}
err := json.Unmarshal([]byte(body), &user)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, store.User{Name: "developer one", ID: "dev", Picture: "http://example.com/pic.png",
IP: "127.0.0.1", SiteID: "remark42"}, user)
}
@@ -386,13 +386,13 @@ func TestRest_Count(t *testing.T) {
assert.Equal(t, 200, code)
j := R.JSON{}
err := json.Unmarshal([]byte(body), &j)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 3.0, j["count"])
body, code = get(t, ts.URL+"/api/v1/count?site=remark42&url=https://radio-t.com/blah2")
assert.Equal(t, 200, code)
err = json.Unmarshal([]byte(body), &j)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 2.0, j["count"])
_, code = get(t, ts.URL+"/api/v1/count?site=remark42-BLAH&url=https://radio-t.com/blah1XXX")
@@ -415,15 +415,15 @@ func TestRest_Counts(t *testing.T) {
addComment(t, c2, ts)
resp, err := post(t, ts.URL+"/api/v1/counts?site=remark42", `["https://radio-t.com/blah1","https://radio-t.com/blah2"]`)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, http.StatusOK, resp.StatusCode)
body, err := ioutil.ReadAll(resp.Body)
- assert.Nil(t, err)
+ assert.NoError(t, err)
j := []store.PostInfo{}
err = json.Unmarshal(body, &j)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, []store.PostInfo([]store.PostInfo{{URL: "https://radio-t.com/blah1", Count: 3},
{URL: "https://radio-t.com/blah2", Count: 2}}), j)
@@ -451,7 +451,7 @@ func TestRest_List(t *testing.T) {
assert.Equal(t, 200, code)
pi := []store.PostInfo{}
err := json.Unmarshal([]byte(body), &pi)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, "https://radio-t.com/blah2", pi[0].URL)
assert.Equal(t, 2, pi[0].Count)
assert.Equal(t, "https://radio-t.com/blah1", pi[1].URL)
@@ -484,7 +484,7 @@ func TestRest_ListWithSkipAndLimit(t *testing.T) {
assert.Equal(t, 200, code)
pi := []store.PostInfo{}
err := json.Unmarshal([]byte(body), &pi)
- assert.Nil(t, err)
+ assert.NoError(t, err)
require.Equal(t, 2, len(pi))
assert.Equal(t, "https://radio-t.com/blah2", pi[0].URL)
assert.Equal(t, 2, pi[0].Count)
@@ -500,7 +500,7 @@ func TestRest_Config(t *testing.T) {
assert.Equal(t, 200, code)
j := R.JSON{}
err := json.Unmarshal([]byte(body), &j)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 300., j["edit_duration"])
assert.EqualValues(t, []interface{}([]interface{}{"a1", "a2"}), j["admins"])
assert.Equal(t, "admin@remark-42.com", j["admin_email"])
@@ -529,18 +529,18 @@ func TestRest_Info(t *testing.T) {
URL: "https://radio-t.com/blah1"}, Timestamp: time.Date(2018, 05, 27, 1, 14, 25, 0, time.Local)}
_, err := srv.DataService.Create(c1)
- require.Nil(t, err, "%+v", err)
+ require.NoError(t, err, "%+v", err)
_, err = srv.DataService.Create(c2)
- require.Nil(t, err)
+ require.NoError(t, err)
_, err = srv.DataService.Create(c3)
- require.Nil(t, err)
+ require.NoError(t, err)
body, code := get(t, ts.URL+"/api/v1/info?site=remark42&url=https://radio-t.com/blah1")
assert.Equal(t, 200, code)
info := store.PostInfo{}
err = json.Unmarshal([]byte(body), &info)
- assert.Nil(t, err)
+ assert.NoError(t, err)
exp := store.PostInfo{URL: "https://radio-t.com/blah1", Count: 3,
FirstTS: time.Date(2018, 05, 27, 1, 14, 10, 0, time.Local), LastTS: time.Date(2018, 05, 27, 1, 14, 25, 0, time.Local)}
assert.Equal(t, exp, info)
@@ -731,12 +731,12 @@ func TestRest_LastCommentsStream(t *testing.T) {
client := http.Client{}
req, err := http.NewRequest("GET", ts.URL+"/api/v1/stream/last?site=remark42", nil)
- require.Nil(t, err)
+ require.NoError(t, err)
r, err := client.Do(req)
- require.Nil(t, err)
+ require.NoError(t, err)
defer r.Body.Close()
body, err := ioutil.ReadAll(r.Body)
- require.Nil(t, err)
+ require.NoError(t, err)
assert.Equal(t, 200, r.StatusCode)
wg.Wait()
@@ -788,12 +788,12 @@ func TestRest_LastCommentsStreamCancel(t *testing.T) {
client := http.Client{}
req, err := http.NewRequest("GET", ts.URL+"/api/v1/stream/last?site=remark42", nil)
- require.Nil(t, err)
+ require.NoError(t, err)
ctx, cancel := context.WithTimeout(context.Background(), 290*time.Millisecond)
defer cancel()
req = req.WithContext(ctx)
r, err := client.Do(req)
- require.Nil(t, err)
+ require.NoError(t, err)
defer r.Body.Close()
body, err := ioutil.ReadAll(r.Body)
require.EqualError(t, err, "context deadline exceeded")
@@ -856,12 +856,12 @@ func TestRest_LastCommentsStreamSince(t *testing.T) {
client := http.Client{}
req, err := http.NewRequest("GET", ts.URL+"/api/v1/stream/last?site=remark42&since=123456", nil)
- require.Nil(t, err)
+ require.NoError(t, err)
r, err := client.Do(req)
- require.Nil(t, err)
+ require.NoError(t, err)
defer r.Body.Close()
body, err := ioutil.ReadAll(r.Body)
- require.Nil(t, err)
+ require.NoError(t, err)
assert.Equal(t, 200, r.StatusCode)
wg.Wait()
diff --git a/backend/app/rest/api/rest_test.go b/backend/app/rest/api/rest_test.go
index 5aa578c6..7c548f84 100644
--- a/backend/app/rest/api/rest_test.go
+++ b/backend/app/rest/api/rest_test.go
@@ -62,7 +62,7 @@ func TestRest_GetStarted(t *testing.T) {
defer teardown()
err := ioutil.WriteFile(getStartedHTML, []byte("some html blah"), 0700)
- assert.Nil(t, err)
+ assert.NoError(t, err)
body, code := get(t, ts.URL+"/index.html")
assert.Equal(t, 200, code)
@@ -143,17 +143,17 @@ func TestRest_RunStaticSSLMode(t *testing.T) {
}
resp, err := client.Get("http://localhost:38080/blah?param=1")
- require.Nil(t, err)
+ require.NoError(t, err)
defer resp.Body.Close()
assert.Equal(t, 307, resp.StatusCode)
assert.Equal(t, "https://localhost:8443/blah?param=1", resp.Header.Get("Location"))
resp, err = client.Get("https://localhost:8443/ping")
- require.Nil(t, err)
+ require.NoError(t, err)
defer resp.Body.Close()
assert.Equal(t, 200, resp.StatusCode)
body, err := ioutil.ReadAll(resp.Body)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, "pong", string(body))
srv.Shutdown()
@@ -185,7 +185,7 @@ func TestRest_RunAutocertModeHTTPOnly(t *testing.T) {
}
resp, err := client.Get("http://localhost:38081/blah?param=1")
- require.Nil(t, err)
+ require.NoError(t, err)
defer resp.Body.Close()
assert.Equal(t, 307, resp.StatusCode)
assert.Equal(t, "https://localhost:8443/blah?param=1", resp.Header.Get("Location"))
@@ -295,7 +295,7 @@ func startupT(t *testing.T) (ts *httptest.Server, srv *Rest, teardown func()) {
os.RemoveAll(tmp + "/pics-remark42")
b, err := engine.NewBoltDB(bolt.Options{}, engine.BoltSite{FileName: testDb, SiteID: "remark42"})
- require.Nil(t, err)
+ require.NoError(t, err)
cacheBackend, err := cache.NewExpirableCache()
require.NoError(t, err)
@@ -355,7 +355,7 @@ func startupT(t *testing.T) (ts *httptest.Server, srv *Rest, teardown func()) {
srv.ScoreThresholds.Low, srv.ScoreThresholds.Critical = -5, -10
err = ioutil.WriteFile(testHTML, []byte("some html"), 0700)
- assert.Nil(t, err)
+ assert.NoError(t, err)
ts = httptest.NewServer(srv.routes())
@@ -387,10 +387,10 @@ func fakeAuth(next http.Handler) http.Handler {
func get(t *testing.T, url string) (string, int) {
r, err := http.Get(url)
- require.Nil(t, err)
+ require.NoError(t, err)
defer r.Body.Close()
body, err := ioutil.ReadAll(r.Body)
- require.Nil(t, err)
+ require.NoError(t, err)
return string(body), r.StatusCode
}
@@ -405,53 +405,53 @@ func sendReq(_ *testing.T, r *http.Request, token string) (*http.Response, error
func getWithDevAuth(t *testing.T, url string) (body string, code int) {
client := &http.Client{Timeout: 5 * time.Second}
req, err := http.NewRequest("GET", url, nil)
- require.Nil(t, err)
+ require.NoError(t, err)
req.Header.Add("X-JWT", devToken)
r, err := client.Do(req)
- require.Nil(t, err)
+ require.NoError(t, err)
defer r.Body.Close()
b, err := ioutil.ReadAll(r.Body)
- assert.Nil(t, err)
+ assert.NoError(t, err)
return string(b), r.StatusCode
}
func getWithAdminAuth(t *testing.T, url string) (string, int) {
client := &http.Client{Timeout: 5 * time.Second}
req, err := http.NewRequest("GET", url, nil)
- require.Nil(t, err)
+ require.NoError(t, err)
req.SetBasicAuth("admin", "password")
r, err := client.Do(req)
- require.Nil(t, err)
+ require.NoError(t, err)
defer r.Body.Close()
body, err := ioutil.ReadAll(r.Body)
- assert.Nil(t, err)
+ assert.NoError(t, err)
return string(body), r.StatusCode
}
func post(t *testing.T, url string, body string) (*http.Response, error) {
client := &http.Client{Timeout: 5 * time.Second}
req, err := http.NewRequest("POST", url, strings.NewReader(body))
- assert.Nil(t, err)
+ assert.NoError(t, err)
req.SetBasicAuth("admin", "password")
return client.Do(req)
}
func addComment(t *testing.T, c store.Comment, ts *httptest.Server) string {
b, err := json.Marshal(c)
- require.Nil(t, err, "can't marshal comment %+v", c)
+ require.NoError(t, err, "can't marshal comment %+v", c)
client := &http.Client{Timeout: 5 * time.Second}
req, err := http.NewRequest("POST", ts.URL+"/api/v1/comment", bytes.NewBuffer(b))
- require.Nil(t, err)
+ require.NoError(t, err)
req.Header.Add("X-JWT", devToken)
resp, err := client.Do(req)
- require.Nil(t, err)
+ require.NoError(t, err)
require.Equal(t, http.StatusCreated, resp.StatusCode)
b, err = ioutil.ReadAll(resp.Body)
- require.Nil(t, err)
+ require.NoError(t, err)
crResp := R.JSON{}
err = json.Unmarshal(b, &crResp)
- require.Nil(t, err)
+ require.NoError(t, err)
time.Sleep(time.Nanosecond * 10)
return crResp["id"].(string)
}
diff --git a/backend/app/rest/api/ssl_test.go b/backend/app/rest/api/ssl_test.go
index d9c4af40..ca36350e 100644
--- a/backend/app/rest/api/ssl_test.go
+++ b/backend/app/rest/api/ssl_test.go
@@ -33,7 +33,7 @@ func TestSSL_Redirect(t *testing.T) {
// check http to https redirect response
resp, err := client.Get(ts.URL + "/blah?param=1")
- require.Nil(t, err)
+ require.NoError(t, err)
defer resp.Body.Close()
assert.Equal(t, 307, resp.StatusCode)
assert.Equal(t, "https://localhost:443/blah?param=1", resp.Header.Get("Location"))
@@ -62,28 +62,28 @@ func TestSSL_ACME_HTTPChallengeRouter(t *testing.T) {
// check http to https redirect response
resp, err := client.Get(ts.URL + "/blah?param=1")
- require.Nil(t, err)
+ require.NoError(t, err)
defer resp.Body.Close()
assert.Equal(t, 307, resp.StatusCode)
assert.Equal(t, "https://localhost:443/blah?param=1", resp.Header.Get("Location"))
// check acme http challenge
req, err := http.NewRequest("GET", ts.URL+"/.well-known/acme-challenge/token123", nil)
- require.Nil(t, err)
+ require.NoError(t, err)
req.Host = "localhost" // for passing hostPolicy check
resp, err = client.Do(req)
- require.Nil(t, err)
+ require.NoError(t, err)
defer resp.Body.Close()
assert.Equal(t, 404, resp.StatusCode)
err = m.Cache.Put(context.Background(), "token123+http-01", []byte("token"))
- assert.Nil(t, err)
+ assert.NoError(t, err)
resp, err = client.Do(req)
- require.Nil(t, err)
+ require.NoError(t, err)
defer resp.Body.Close()
assert.Equal(t, 200, resp.StatusCode)
body, err := ioutil.ReadAll(resp.Body)
- require.Nil(t, err)
+ require.NoError(t, err)
assert.Equal(t, "token", string(body))
}
diff --git a/backend/app/rest/proxy/image_test.go b/backend/app/rest/proxy/image_test.go
index f4537644..4c4d5e04 100644
--- a/backend/app/rest/proxy/image_test.go
+++ b/backend/app/rest/proxy/image_test.go
@@ -51,7 +51,7 @@ func TestPicture_Extract(t *testing.T) {
for i, tt := range tbl {
t.Run(strconv.Itoa(i), func(t *testing.T) {
res, err := img.extract(tt.inp)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, tt.res, res)
})
}
@@ -75,7 +75,7 @@ func TestImage_Routes(t *testing.T) {
encodedImgURL := base64.URLEncoding.EncodeToString([]byte(httpSrv.URL + "/image/img1.png"))
resp, err := http.Get(ts.URL + "/?src=" + encodedImgURL)
- require.Nil(t, err)
+ require.NoError(t, err)
assert.Equal(t, 200, resp.StatusCode)
t.Logf("%+v", resp.Header)
assert.Equal(t, "123", resp.Header["Content-Length"][0])
@@ -83,12 +83,12 @@ func TestImage_Routes(t *testing.T) {
encodedImgURL = base64.URLEncoding.EncodeToString([]byte(httpSrv.URL + "/image/no-such-image.png"))
resp, err = http.Get(ts.URL + "/?src=" + encodedImgURL)
- require.Nil(t, err)
+ require.NoError(t, err)
assert.Equal(t, 404, resp.StatusCode)
encodedImgURL = base64.URLEncoding.EncodeToString([]byte(httpSrv.URL + "bad encoding"))
resp, err = http.Get(ts.URL + "/?src=" + encodedImgURL)
- require.Nil(t, err)
+ require.NoError(t, err)
assert.Equal(t, 400, resp.StatusCode)
}
@@ -102,10 +102,10 @@ func TestImage_RoutesTimedOut(t *testing.T) {
encodedImgURL := base64.URLEncoding.EncodeToString([]byte(httpSrv.URL + "/image/img-slow.png"))
resp, err := http.Get(ts.URL + "/?src=" + encodedImgURL)
- require.Nil(t, err)
+ require.NoError(t, err)
assert.Equal(t, 400, resp.StatusCode)
b, err := ioutil.ReadAll(resp.Body)
- require.Nil(t, err)
+ require.NoError(t, err)
t.Log(string(b))
assert.True(t, strings.Contains(string(b), "deadline exceeded"))
}
diff --git a/backend/app/rest/user_test.go b/backend/app/rest/user_test.go
index 19dc781d..485ebad2 100644
--- a/backend/app/rest/user_test.go
+++ b/backend/app/rest/user_test.go
@@ -10,13 +10,13 @@ import (
func TestUser_GetUserInfo(t *testing.T) {
r, err := http.NewRequest("GET", "http://blah.com", nil)
- assert.Nil(t, err)
+ assert.NoError(t, err)
_, err = GetUserInfo(r)
- assert.NotNil(t, err, "no user info")
+ assert.Error(t, err, "no user info")
r = SetUserInfo(r, store.User{Name: "test", ID: "id", SiteID: "test"})
u, err := GetUserInfo(r)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, store.User{Name: "test", ID: "id", SiteID: "test"}, u)
}
@@ -28,12 +28,12 @@ func TestUSer_MustGetUserInfo(t *testing.T) {
}()
r, err := http.NewRequest("GET", "http://blah.com", nil)
- assert.Nil(t, err)
+ assert.NoError(t, err)
_ = MustGetUserInfo(r)
assert.Fail(t, "should panic")
r = SetUserInfo(r, store.User{Name: "test", ID: "id"})
u := MustGetUserInfo(r)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, store.User{Name: "test", ID: "id"}, u)
}
diff --git a/backend/app/store/engine/bolt_test.go b/backend/app/store/engine/bolt_test.go
index 391668ab..39d4d735 100644
--- a/backend/app/store/engine/bolt_test.go
+++ b/backend/app/store/engine/bolt_test.go
@@ -31,7 +31,7 @@ func TestBoltDB_CreateAndFind(t *testing.T) {
t.Log(res[0].ID)
_, err = b.Create(store.Comment{ID: res[0].ID, Locator: store.Locator{URL: "https://radio-t.com", SiteID: "radio-t"}})
- assert.NotNil(t, err)
+ assert.Error(t, err)
assert.Equal(t, "key id-1 already in store", err.Error())
req = FindRequest{Locator: store.Locator{URL: "https://radio-t.com", SiteID: "radio-t-bad"}, Sort: "time"}
@@ -59,7 +59,7 @@ func TestBoltDB_CreateFailedReadOnly(t *testing.T) {
assert.Equal(t, true, v)
_, err = b.Create(comment)
- assert.NotNil(t, err)
+ assert.Error(t, err)
assert.Equal(t, "post https://radio-t.com/ro is read-only", err.Error())
flagReq = FlagRequest{Locator: comment.Locator, Flag: ReadOnly, Update: FlagFalse}
@@ -85,7 +85,7 @@ func TestBoltDB_Get(t *testing.T) {
assert.Equal(t, "some text2", comment.Text)
comment, err = b.Get(getReq(store.Locator{URL: "https://radio-t.com", SiteID: "radio-t"}, "1234567"))
- assert.NotNil(t, err)
+ assert.Error(t, err)
_, err = b.Get(getReq(store.Locator{URL: "https://radio-t.com", SiteID: "bad"}, res[1].ID))
assert.EqualError(t, err, `site "bad" not found`)
@@ -223,7 +223,7 @@ func TestBoltDB_FindForUser(t *testing.T) {
func TestBoltDB_FindForUserPagination(t *testing.T) {
_ = os.Remove(testDb)
b, err := NewBoltDB(bolt.Options{}, BoltSite{FileName: testDb, SiteID: "radio-t"})
- require.Nil(t, err)
+ require.NoError(t, err)
defer func() {
require.NoError(t, b.Close())
@@ -241,7 +241,7 @@ func TestBoltDB_FindForUserPagination(t *testing.T) {
c.Text = fmt.Sprintf("text #%d", i)
c.Timestamp = time.Date(2017, 12, 20, 15, 18, i, 0, time.Local)
_, err = b.Create(c)
- require.Nil(t, err)
+ require.NoError(t, err)
}
// get all comments
@@ -279,7 +279,7 @@ func TestBoltDB_FindForUserPagination(t *testing.T) {
req.Skip, req.Limit = 255, 10
res, err = b.Find(req)
assert.NoError(t, err)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 0, len(res))
}
@@ -355,11 +355,11 @@ func TestBoltDB_InfoPost(t *testing.T) {
req = InfoRequest{Locator: store.Locator{URL: "https://radio-t.com/error", SiteID: "radio-t"}, ReadOnlyAge: 0}
_, err = b.Info(req)
- require.NotNil(t, err)
+ require.Error(t, err)
req = InfoRequest{Locator: store.Locator{URL: "https://radio-t.com", SiteID: "radio-t-error"}, ReadOnlyAge: 0}
_, err = b.Info(req)
- require.NotNil(t, err)
+ require.Error(t, err)
fr := FlagRequest{Flag: ReadOnly, Locator: store.Locator{URL: "https://radio-t.com/2", SiteID: "radio-t"}, Update: FlagTrue}
_, err = b.Flag(fr)
@@ -384,7 +384,7 @@ func TestBoltDB_InfoList(t *testing.T) {
User: store.User{ID: "user1", Name: "user name"},
}
_, err := b.Create(comment)
- assert.Nil(t, err)
+ assert.NoError(t, err)
ts := func(sec int) time.Time { return time.Date(2017, 12, 20, 15, 18, sec, 0, time.Local) }
@@ -407,7 +407,7 @@ func TestBoltDB_InfoList(t *testing.T) {
req = InfoRequest{Locator: store.Locator{SiteID: "radio-t"}, Limit: 1, Skip: 1}
res, err = b.Info(req)
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, []store.PostInfo{{URL: "https://radio-t.com", Count: 2, FirstTS: ts(22), LastTS: ts(23)}}, res)
req = InfoRequest{Locator: store.Locator{SiteID: "bad"}, Limit: 1, Skip: 1}
@@ -707,7 +707,7 @@ func TestBolt_DeleteComment(t *testing.T) {
delReq.CommentID = "123456"
err = b.Delete(delReq)
- assert.NotNil(t, err)
+ assert.Error(t, err)
delReq.Locator.SiteID = "bad"
delReq.CommentID = res[0].ID
@@ -824,7 +824,7 @@ func TestBoltAdmin_DeleteUserHard(t *testing.T) {
assert.EqualError(t, err, "no comments for user user1 in store")
comments, err = b.Find(FindRequest{Locator: store.Locator{SiteID: "radio-t"}, Sort: "time"})
- assert.Nil(t, err)
+ assert.NoError(t, err)
assert.Equal(t, 0, len(comments), "nothing left")
err = b.Delete(DeleteRequest{Locator: store.Locator{SiteID: "radio-t-bad"}, UserID: "user1"})
@@ -883,7 +883,7 @@ func TestBoltDB_ref(t *testing.T) {
assert.Equal(t, "12345", id)
_, _, err = b.parseRef([]byte("https://radio-t.com/2"))
- assert.NotNil(t, err)
+ assert.Error(t, err)
}
func TestBoltDB_NewFailed(t *testing.T) {
@@ -896,7 +896,7 @@ func prep(t *testing.T) (b *BoltDB, teardown func()) {
_ = os.Remove(testDb)
boltStore, err := NewBoltDB(bolt.Options{}, BoltSite{FileName: testDb, SiteID: "radio-t"})
- assert.Nil(t, err)
+ assert.NoError(t, err)
b = boltStore
comment := store.Comment{
@@ -907,7 +907,7 @@ func prep(t *testing.T) (b *BoltDB, teardown func()) {
User: store.User{ID: "user1", Name: "user name"},
}
_, err = b.Create(comment)
- assert.Nil(t, err)
+ assert.NoError(t, err)
comment = store.Comment{
ID: "id-2",
@@ -917,7 +917,7 @@ func prep(t *testing.T) (b *BoltDB, teardown func()) {
User: store.User{ID: "user1", Name: "user name"},
}
_, err = b.Create(comment)
- assert.Nil(t, err)
+ assert.NoError(t, err)
teardown = func() {
require.NoError(t, b.Close())
diff --git a/backend/app/store/engine/remote_test.go b/backend/app/store/engine/remote_test.go
index e9ae692b..b737481a 100644
--- a/backend/app/store/engine/remote_test.go
+++ b/backend/app/store/engine/remote_test.go
@@ -5,7 +5,6 @@ import (
"io/ioutil"
"net/http"
"net/http/httptest"
- "strings"
"testing"
"time"
@@ -69,8 +68,8 @@ func TestRemote_GetWithErrorRemote(t *testing.T) {
req := GetRequest{Locator: store.Locator{URL: "http://example.com/url"}, CommentID: "site"}
_, err := c.Get(req)
- assert.NotNil(t, err)
- assert.True(t, strings.Contains(err.Error(), "remote call failed for store.get:"), err.Error())
+ assert.Error(t, err)
+ assert.Contains(t, err.Error(), "remote call failed for store.get:")
}
func TestRemote_FailedStatus(t *testing.T) {
diff --git a/backend/app/store/image/bolt_store_test.go b/backend/app/store/image/bolt_store_test.go
index 87ffe4ee..5ae27ecf 100644
--- a/backend/app/store/image/bolt_store_test.go
+++ b/backend/app/store/image/bolt_store_test.go
@@ -63,7 +63,7 @@ func TestBoltStore_LoadAfterSave(t *testing.T) {
assert.Equal(t, int64(1462), sz)
_, _, err = svc.Load("abcd")
- assert.NotNil(t, err)
+ assert.Error(t, err)
}
func TestBoltStore_Cleanup(t *testing.T) {
diff --git a/backend/app/store/image/fs_store_test.go b/backend/app/store/image/fs_store_test.go
index 497d91a1..2fcfab24 100644
--- a/backend/app/store/image/fs_store_test.go
+++ b/backend/app/store/image/fs_store_test.go
@@ -138,7 +138,7 @@ func TestFsStore_SaveAndCommit(t *testing.T) {
imgStaging := svc.location(svc.Staging, id)
_, err = os.Stat(imgStaging)
- assert.NotNil(t, err, "no file on staging anymore")
+ assert.Error(t, err, "no file on staging anymore")
img := svc.location(svc.Location, id)
t.Log(img)
@@ -173,7 +173,7 @@ func TestFsStore_LoadAfterSave(t *testing.T) {
assert.Equal(t, 1462, len(data))
assert.Equal(t, int64(1462), sz)
_, _, err = svc.Load("abcd")
- assert.NotNil(t, err)
+ assert.Error(t, err)
}
func TestFsStore_LoadAfterCommit(t *testing.T) {
@@ -195,7 +195,7 @@ func TestFsStore_LoadAfterCommit(t *testing.T) {
assert.Equal(t, 1462, len(data))
assert.Equal(t, int64(1462), sz)
_, _, err = svc.Load("abcd")
- assert.NotNil(t, err)
+ assert.Error(t, err)
}
func TestFsStore_location(t *testing.T) {
@@ -268,9 +268,9 @@ func TestFsStore_Cleanup(t *testing.T) {
assert.NoError(t, err)
_, err = os.Stat(img1)
- assert.NotNil(t, err, "no file on staging anymore")
+ assert.Error(t, err, "no file on staging anymore")
_, err = os.Stat(path.Dir(img1))
- assert.NotNil(t, err, "no dir %s on staging anymore", path.Dir(img1))
+ assert.Error(t, err, "no dir %s on staging anymore", path.Dir(img1))
_, err = os.Stat(img2)
assert.NoError(t, err, "file on staging")
@@ -282,9 +282,9 @@ func TestFsStore_Cleanup(t *testing.T) {
assert.NoError(t, err)
_, err = os.Stat(img2)
- assert.NotNil(t, err, "no file on staging anymore")
+ assert.Error(t, err, "no file on staging anymore")
_, err = os.Stat(img3)
- assert.NotNil(t, err, "no file on staging anymore")
+ assert.Error(t, err, "no file on staging anymore")
}
func prepareImageTest(t *testing.T) (svc *FileSystem, teardown func()) {
diff --git a/backend/app/store/image/image_test.go b/backend/app/store/image/image_test.go
index 00581743..3373b6ab 100644
--- a/backend/app/store/image/image_test.go
+++ b/backend/app/store/image/image_test.go
@@ -111,7 +111,7 @@ func TestService_resize(t *testing.T) {
for _, c := range cases {
img, err := ioutil.ReadFile(c.file)
- require.Nil(t, err, "can't open test file %s", c.file)
+ require.NoError(t, err, "can't open test file %s", c.file)
// No need for resize, image dimensions are smaller than resize limit.
resized, ok = resize(img, 800, 800)
@@ -125,7 +125,7 @@ func TestService_resize(t *testing.T) {
assert.True(t, ok)
imgRz, format, err := image.Decode(bytes.NewBuffer(resized))
- assert.Nil(t, err, "file %s", c.file)
+ assert.NoError(t, err, "file %s", c.file)
assert.Equal(t, "png", format, "file %s", c.file)
bounds := imgRz.Bounds()
assert.Equal(t, c.wr, bounds.Dx(), "file %s", c.file)
diff --git a/backend/app/store/service/service_test.go b/backend/app/store/service/service_test.go
index a119076c..17fcbfed 100644
--- a/backend/app/store/service/service_test.go
+++ b/backend/app/store/service/service_test.go
@@ -230,7 +230,7 @@ func TestService_Vote(t *testing.T) {
Val: true,
}
c, err = b.Vote(req)
- assert.NotNil(t, err, "self-voting not allowed")
+ assert.Error(t, err, "self-voting not allowed")
req = VoteReq{
Locator: store.Locator{URL: "https://radio-t.com", SiteID: "radio-t"},
@@ -240,7 +240,7 @@ func TestService_Vote(t *testing.T) {
Val: true,
}
_, err = b.Vote(req)
- assert.NotNil(t, err, "double-voting rejected")
+ assert.Error(t, err, "double-voting rejected")
assert.True(t, strings.HasPrefix(err.Error(), "user user1 already voted"))
// check in last as user1
@@ -292,7 +292,7 @@ func TestService_VoteLimit(t *testing.T) {
_, err = b.Vote(VoteReq{Locator: store.Locator{URL: "https://radio-t.com", SiteID: "radio-t"}, CommentID: "id-1",
UserID: "user4", Val: true})
- assert.NotNil(t, err, "vote limit reached")
+ assert.Error(t, err, "vote limit reached")
assert.True(t, strings.HasPrefix(err.Error(), "maximum number of votes exceeded for comment id-1"))
_, err = b.Vote(VoteReq{Locator: store.Locator{URL: "https://radio-t.com", SiteID: "radio-t"}, CommentID: "id-2",
@@ -385,7 +385,7 @@ func TestService_VoteConcurrent(t *testing.T) {
_, err := b.Create(comment)
assert.NoError(t, err)
res, err := b.Last("radio-t", 0, time.Time{}, store.User{})
- require.Nil(t, err)
+ require.NoError(t, err)
// concurrent vote +1 as multiple users for the same comment
var wg sync.WaitGroup
@@ -618,7 +618,7 @@ func TestService_EditCommentDurationFailed(t *testing.T) {
_, err = b.EditComment(store.Locator{URL: "https://radio-t.com", SiteID: "radio-t"}, res[0].ID,
EditRequest{Orig: "yyy", Text: "xxx", Summary: "my edit"})
- assert.NotNil(t, err)
+ assert.Error(t, err)
}
func TestService_EditCommentReplyFailed(t *testing.T) {