Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1525)

Unified Diff: appengine/logdog/coordinator/endpoints/services/registerStream_test.go

Issue 1967273002: LogDog: Implement RegisterPrefix RPC. (Closed) Base URL: https://github.com/luci/luci-go@logdog-butler-register-coordinator-endpoint
Patch Set: Updated patchset dependency Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: appengine/logdog/coordinator/endpoints/services/registerStream_test.go
diff --git a/appengine/logdog/coordinator/endpoints/services/registerStream_test.go b/appengine/logdog/coordinator/endpoints/services/registerStream_test.go
index 303b0ba710775e7f44cb5fa7c1700c2f58f658d0..8149d5a5c1b49ff1f5029d5089136f10753a7378 100644
--- a/appengine/logdog/coordinator/endpoints/services/registerStream_test.go
+++ b/appengine/logdog/coordinator/endpoints/services/registerStream_test.go
@@ -40,25 +40,39 @@ func TestRegisterStream(t *testing.T) {
pcfg.MaxStreamAge = google.NewDuration(time.Hour)
})
+ // By default, the testing user is a service.
+ env.JoinGroup("services")
+
svr := New()
Convey(`Returns Forbidden error if not a service.`, func() {
+ env.LeaveAllGroups()
+
_, err := svr.RegisterStream(c, &logdog.RegisterStreamRequest{})
So(err, ShouldBeRPCPermissionDenied)
})
- Convey(`When logged in as a service`, func() {
- env.JoinGroup("services")
-
+ Convey(`When registering a testing log sream, "testing/+/foo/bar"`, func() {
tls := ct.MakeStream(c, "proj-foo", "testing/+/foo/bar")
- Convey(`A stream registration request for "testing/+/foo/bar"`, func() {
- req := logdog.RegisterStreamRequest{
- Project: string(tls.Project),
- Secret: tls.Prefix.Secret,
- ProtoVersion: logpb.Version,
- Desc: tls.DescBytes(),
- }
+ req := logdog.RegisterStreamRequest{
+ Project: string(tls.Project),
+ Secret: tls.Prefix.Secret,
+ ProtoVersion: logpb.Version,
+ Desc: tls.DescBytes(),
+ }
+
+ Convey(`Returns FailedPrecondition when the Prefix is not registered.`, func() {
+ _, err := svr.RegisterStream(c, &req)
+ So(err, ShouldBeRPCFailedPrecondition)
+ })
+
+ Convey(`When the Prefix is registered`, func() {
+ tls.WithProjectNamespace(c, func(c context.Context) {
+ if err := ds.Get(c).Put(tls.Prefix); err != nil {
+ panic(err)
+ }
+ })
expResp := &logdog.RegisterStreamResponse{
Id: string(tls.Stream.ID),
@@ -145,7 +159,7 @@ func TestRegisterStream(t *testing.T) {
Convey(`Will not re-register if secrets don't match.`, func() {
req.Secret[0] = 0xAB
_, err := svr.RegisterStream(c, &req)
- So(err, ShouldBeRPCAlreadyExists, "Log prefix is already registered")
+ So(err, ShouldBeRPCInvalidArgument, "invalid secret")
})
})
@@ -218,12 +232,6 @@ func TestRegisterStream(t *testing.T) {
So(err, ShouldBeRPCInvalidArgument, "Unrecognized protobuf version")
})
- Convey(`Will not register a wrong-sized secret.`, func() {
- req.Secret = nil
- _, err := svr.RegisterStream(c, &req)
- So(err, ShouldBeRPCInvalidArgument, "Invalid prefix secret")
- })
-
Convey(`Will not register with an empty descriptor.`, func() {
req.Desc = nil
« no previous file with comments | « appengine/logdog/coordinator/endpoints/services/registerStream.go ('k') | appengine/logdog/coordinator/hierarchy/hierarchy.go » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698