diff --git a/vblog/README.md b/vblog/README.md index 05bd798..b1fba96 100644 --- a/vblog/README.md +++ b/vblog/README.md @@ -79,4 +79,8 @@ type ValidateTokenRequest struct { 添加工作目录环境变量 ``` WORKSPACE_DIR="/Users/xxxx/Projects/go-course/go17/vblog" -``` \ No newline at end of file +``` + +### 业务模块的实现 + +TDD (Test Drive Development) \ No newline at end of file diff --git a/vblog/apps/blog/impl/impl.go b/vblog/apps/blog/impl/impl.go new file mode 100644 index 0000000..942c0d7 --- /dev/null +++ b/vblog/apps/blog/impl/impl.go @@ -0,0 +1,44 @@ +package impl + +import ( + "context" + + "gitlab.com/go-course-project/go17/vblog/apps/blog" +) + +var BlogService blog.Service = &BlogServiceImpl{} + +// 定义一个struct, 用于实现 UserService就是刚才定义的接口 +// 怎么才能判断这个结构体没有实现这个接口 +type BlogServiceImpl struct { +} + +// CreateBlog implements blog.Service. +func (b *BlogServiceImpl) CreateBlog(context.Context, *blog.CreateBlogRequest) (*blog.Blog, error) { + panic("unimplemented") +} + +// DeleteBlog implements blog.Service. +func (b *BlogServiceImpl) DeleteBlog(context.Context, *blog.DeleteBlogRequest) error { + panic("unimplemented") +} + +// DescribeBlog implements blog.Service. +func (b *BlogServiceImpl) DescribeBlog(context.Context, *blog.DescribeBlogRequest) (*blog.Blog, error) { + panic("unimplemented") +} + +// PublishBlog implements blog.Service. +func (b *BlogServiceImpl) PublishBlog(context.Context, *blog.PublishBlogRequest) (*blog.Blog, error) { + panic("unimplemented") +} + +// QueryBlog implements blog.Service. +func (b *BlogServiceImpl) QueryBlog(context.Context, *blog.QueryBlogRequest) (*blog.BlogSet, error) { + panic("unimplemented") +} + +// UpdateBlog implements blog.Service. +func (b *BlogServiceImpl) UpdateBlog(context.Context, *blog.UpdateBlogRequest) (*blog.Blog, error) { + panic("unimplemented") +} diff --git a/vblog/apps/token/impl/impl.go b/vblog/apps/token/impl/impl.go new file mode 100644 index 0000000..773ede9 --- /dev/null +++ b/vblog/apps/token/impl/impl.go @@ -0,0 +1,29 @@ +package impl + +import ( + "context" + + "gitlab.com/go-course-project/go17/vblog/apps/token" +) + +var TokenService token.Service = &TokenServiceImpl{} + +// 定义一个struct, 用于实现 UserService就是刚才定义的接口 +// 怎么才能判断这个结构体没有实现这个接口 +type TokenServiceImpl struct { +} + +// IssueToken implements token.Service. +func (t *TokenServiceImpl) IssueToken(context.Context, *token.IssueTokenRequest) (*token.Token, error) { + panic("unimplemented") +} + +// RevolkToken implements token.Service. +func (t *TokenServiceImpl) RevolkToken(context.Context, *token.RevolkTokenRequest) (*token.Token, error) { + panic("unimplemented") +} + +// ValidateToken implements token.Service. +func (t *TokenServiceImpl) ValidateToken(context.Context, *token.ValidateTokenRequest) (*token.Token, error) { + panic("unimplemented") +} diff --git a/vblog/apps/user/impl/README.md b/vblog/apps/user/impl/README.md new file mode 100644 index 0000000..c07e349 --- /dev/null +++ b/vblog/apps/user/impl/README.md @@ -0,0 +1,2 @@ +# 用于实现具体的业务 + diff --git a/vblog/apps/user/impl/impl.go b/vblog/apps/user/impl/impl.go new file mode 100644 index 0000000..52d3fe2 --- /dev/null +++ b/vblog/apps/user/impl/impl.go @@ -0,0 +1,49 @@ +package impl + +import ( + "context" + + "gitlab.com/go-course-project/go17/vblog/apps/user" +) + +var UserService user.Service = &UserServiceImpl{} + +// 定义一个struct, 用于实现 UserService就是刚才定义的接口 +// 怎么才能判断这个结构体没有实现这个接口 +type UserServiceImpl struct { +} + +// DescribeUser implements user.Service. +func (u *UserServiceImpl) DescribeUser(context.Context, *user.DescribeUserRequest) (*user.User, error) { + panic("unimplemented") +} + +// Registry implements user.Service. +func (u *UserServiceImpl) Registry(context.Context, *user.RegistryRequest) (*user.User, error) { + panic("unimplemented") +} + +// ResetPassword implements user.Service. +func (u *UserServiceImpl) ResetPassword(context.Context, *user.ResetPasswordRequest) error { + panic("unimplemented") +} + +// UnRegistry implements user.Service. +func (u *UserServiceImpl) UnRegistry(context.Context, *user.UnRegistryRequest) { + panic("unimplemented") +} + +// UpdatePassword implements user.Service. +func (u *UserServiceImpl) UpdatePassword(context.Context, *user.UpdatePasswordRequest) error { + panic("unimplemented") +} + +// UpdateProfile implements user.Service. +func (u *UserServiceImpl) UpdateProfile(context.Context, *user.UpdateProfileRequest) (*user.User, error) { + panic("unimplemented") +} + +// UpdateUserStatus implements user.Service. +func (u *UserServiceImpl) UpdateUserStatus(context.Context, *user.UpdateUserStatusRequest) (*user.User, error) { + panic("unimplemented") +} diff --git a/vblog/apps/user/impl_test.go b/vblog/apps/user/impl_test.go new file mode 100644 index 0000000..8c84121 --- /dev/null +++ b/vblog/apps/user/impl_test.go @@ -0,0 +1,23 @@ +package user_test + +import ( + "context" + "testing" + + "gitlab.com/go-course-project/go17/vblog/apps/user" + "gitlab.com/go-course-project/go17/vblog/apps/user/impl" +) + +var ( + ctx = context.Background() +) + +// 我要测试的对象是什么?, 这个服务的具体实现 +// Service的具体实现?现在还没实现 +func TestRegistry(t *testing.T) { + ins, err := impl.UserService.Registry(ctx, &user.RegistryRequest{}) + if err != nil { + t.Fatal(err) + } + t.Log(ins) +} diff --git a/vblog/test/README.md b/vblog/test/README.md index cb8fdbe..8db0fa2 100644 --- a/vblog/test/README.md +++ b/vblog/test/README.md @@ -1 +1 @@ -# 构建单元测试环境的工具 \ No newline at end of file +# 构建单元测试环境的工具