Documentation ¶
Index ¶
- Constants
- Variables
- func CanManageChannel(c *Context, channel *model.Channel) bool
- func CheckBadRequestStatus(t *testing.T, resp *model.Response)
- func CheckCreatedStatus(t *testing.T, resp *model.Response)
- func CheckErrorMessage(t *testing.T, resp *model.Response, errorId string)
- func CheckEtag(t *testing.T, data interface{}, resp *model.Response)
- func CheckForbiddenStatus(t *testing.T, resp *model.Response)
- func CheckInternalErrorStatus(t *testing.T, resp *model.Response)
- func CheckNoError(t *testing.T, resp *model.Response)
- func CheckNotFoundStatus(t *testing.T, resp *model.Response)
- func CheckNotImplementedStatus(t *testing.T, resp *model.Response)
- func CheckOKStatus(t *testing.T, resp *model.Response)
- func CheckPayLoadTooLargeStatus(t *testing.T, resp *model.Response)
- func CheckTeamSanitization(t *testing.T, team *model.Team)
- func CheckUnauthorizedStatus(t *testing.T, resp *model.Response)
- func CheckUserSanitization(t *testing.T, user *model.User)
- func GenerateTestAppName() string
- func GenerateTestChannelName() string
- func GenerateTestEmail() string
- func GenerateTestId() string
- func GenerateTestTeamName() string
- func GenerateTestUsername() string
- func Handle404(w http.ResponseWriter, r *http.Request)
- func Logout(c *Context, w http.ResponseWriter, r *http.Request)
- func NewInvalidParamError(parameter string) *model.AppError
- func NewInvalidUrlParamError(parameter string) *model.AppError
- func ReturnStatusOK(w http.ResponseWriter)
- func StopTestStore()
- func UseTestStore(container *storetest.RunningContainer, settings *model.SqlSettings)
- type API
- func (api *API) ApiHandler(h func(*Context, http.ResponseWriter, *http.Request)) http.Handler
- func (api *API) ApiHandlerTrustRequester(h func(*Context, http.ResponseWriter, *http.Request)) http.Handler
- func (api *API) ApiSessionRequired(h func(*Context, http.ResponseWriter, *http.Request)) http.Handler
- func (api *API) ApiSessionRequiredMfa(h func(*Context, http.ResponseWriter, *http.Request)) http.Handler
- func (api *API) ApiSessionRequiredTrustRequester(h func(*Context, http.ResponseWriter, *http.Request)) http.Handler
- func (api *API) InitBrand()
- func (api *API) InitChannel()
- func (api *API) InitCluster()
- func (api *API) InitCommand()
- func (api *API) InitCompliance()
- func (api *API) InitDataRetention()
- func (api *API) InitElasticsearch()
- func (api *API) InitEmoji()
- func (api *API) InitFile()
- func (api *API) InitJob()
- func (api *API) InitLdap()
- func (api *API) InitOAuth()
- func (api *API) InitOpenGraph()
- func (api *API) InitPlugin()
- func (api *API) InitPost()
- func (api *API) InitPreference()
- func (api *API) InitReaction()
- func (api *API) InitSaml()
- func (api *API) InitStatus()
- func (api *API) InitSystem()
- func (api *API) InitTeam()
- func (api *API) InitUser()
- func (api *API) InitWebSocket()
- func (api *API) InitWebhook()
- func (api *API) InitWebrtc()
- type ApiParams
- type Context
- func (c *Context) GetSiteURLHeader() string
- func (c *Context) HandleEtag(etag string, routeName string, w http.ResponseWriter, r *http.Request) bool
- func (c *Context) IsSystemAdmin() bool
- func (c *Context) LogAudit(extraInfo string)
- func (c *Context) LogAuditWithUserId(userId, extraInfo string)
- func (c *Context) LogDebug(err *model.AppError)
- func (c *Context) LogError(err *model.AppError)
- func (c *Context) LogInfo(err *model.AppError)
- func (c *Context) MfaRequired()
- func (c *Context) RemoveSessionCookie(w http.ResponseWriter, r *http.Request)
- func (c *Context) RequireActionId() *Context
- func (c *Context) RequireAppId() *Context
- func (c *Context) RequireCategory() *Context
- func (c *Context) RequireChannelId() *Context
- func (c *Context) RequireChannelName() *Context
- func (c *Context) RequireCommandId() *Context
- func (c *Context) RequireEmail() *Context
- func (c *Context) RequireEmojiId() *Context
- func (c *Context) RequireEmojiName() *Context
- func (c *Context) RequireFileId() *Context
- func (c *Context) RequireHookId() *Context
- func (c *Context) RequireInviteId() *Context
- func (c *Context) RequireJobId() *Context
- func (c *Context) RequireJobType() *Context
- func (c *Context) RequirePluginId() *Context
- func (c *Context) RequirePostId() *Context
- func (c *Context) RequirePreferenceName() *Context
- func (c *Context) RequireReportId() *Context
- func (c *Context) RequireService() *Context
- func (c *Context) RequireTeamId() *Context
- func (c *Context) RequireTeamName() *Context
- func (c *Context) RequireTokenId() *Context
- func (c *Context) RequireUserId() *Context
- func (c *Context) RequireUsername() *Context
- func (c *Context) SessionRequired()
- func (c *Context) SetInvalidParam(parameter string)
- func (c *Context) SetInvalidUrlParam(parameter string)
- func (c *Context) SetPermissionError(permission *model.Permission)
- func (c *Context) SetSiteURLHeader(url string)
- type Routes
- type TestHelper
- func (me *TestHelper) CreateChannelWithClient(client *model.Client4, channelType string) *model.Channel
- func (me *TestHelper) CreateChannelWithClientAndTeam(client *model.Client4, channelType string, teamId string) *model.Channel
- func (me *TestHelper) CreateClient() *model.Client4
- func (me *TestHelper) CreateMessagePost(message string) *model.Post
- func (me *TestHelper) CreateMessagePostWithClient(client *model.Client4, channel *model.Channel, message string) *model.Post
- func (me *TestHelper) CreatePinnedPost() *model.Post
- func (me *TestHelper) CreatePinnedPostWithClient(client *model.Client4, channel *model.Channel) *model.Post
- func (me *TestHelper) CreatePost() *model.Post
- func (me *TestHelper) CreatePostWithClient(client *model.Client4, channel *model.Channel) *model.Post
- func (me *TestHelper) CreatePrivateChannel() *model.Channel
- func (me *TestHelper) CreatePublicChannel() *model.Channel
- func (me *TestHelper) CreateTeam() *model.Team
- func (me *TestHelper) CreateTeamWithClient(client *model.Client4) *model.Team
- func (me *TestHelper) CreateUser() *model.User
- func (me *TestHelper) CreateUserWithClient(client *model.Client4) *model.User
- func (me *TestHelper) CreateWebSocketClient() (*model.WebSocketClient, *model.AppError)
- func (me *TestHelper) InitBasic() *TestHelper
- func (me *TestHelper) InitSystemAdmin() *TestHelper
- func (me *TestHelper) LinkUserToTeam(user *model.User, team *model.Team)
- func (me *TestHelper) LoginBasic()
- func (me *TestHelper) LoginBasic2()
- func (me *TestHelper) LoginBasic2WithClient(client *model.Client4)
- func (me *TestHelper) LoginBasicWithClient(client *model.Client4)
- func (me *TestHelper) LoginSystemAdmin()
- func (me *TestHelper) LoginSystemAdminWithClient(client *model.Client4)
- func (me *TestHelper) LoginTeamAdmin()
- func (me *TestHelper) LoginTeamAdminWithClient(client *model.Client4)
- func (me *TestHelper) MakeUserChannelAdmin(user *model.User, channel *model.Channel)
- func (me *TestHelper) TearDown()
- func (me *TestHelper) UpdateActiveUser(user *model.User, active bool)
- func (me *TestHelper) UpdateUserToNonTeamAdmin(user *model.User, team *model.Team)
- func (me *TestHelper) UpdateUserToTeamAdmin(user *model.User, team *model.Team)
Constants ¶
View Source
const ( FILE_TEAM_ID = "noteam" PREVIEW_IMAGE_TYPE = "image/jpeg" THUMBNAIL_IMAGE_TYPE = "image/jpeg" )
View Source
const ( PAGE_DEFAULT = 0 PER_PAGE_DEFAULT = 60 PER_PAGE_MAXIMUM = 200 LOGS_PER_PAGE_DEFAULT = 10000 LOGS_PER_PAGE_MAXIMUM = 10000 )
View Source
const (
MAXIMUM_PLUGIN_FILE_SIZE = 50 * 1024 * 1024
)
View Source
const (
MAX_ADD_MEMBERS_BATCH = 20
)
View Source
const OPEN_GRAPH_METADATA_CACHE_SIZE = 10000
Variables ¶
View Source
var MEDIA_CONTENT_TYPES = [...]string{
"image/jpeg",
"image/png",
"image/bmp",
"image/gif",
"video/avi",
"video/mpeg",
"video/mp4",
"audio/mpeg",
"audio/wav",
}
View Source
var UNSAFE_CONTENT_TYPES = [...]string{
"application/javascript",
"application/ecmascript",
"text/javascript",
"text/ecmascript",
"application/x-javascript",
"text/html",
}
Functions ¶
func GenerateTestAppName ¶
func GenerateTestAppName() string
func GenerateTestChannelName ¶
func GenerateTestChannelName() string
func GenerateTestEmail ¶
func GenerateTestEmail() string
func GenerateTestId ¶
func GenerateTestId() string
func GenerateTestTeamName ¶
func GenerateTestTeamName() string
func GenerateTestUsername ¶
func GenerateTestUsername() string
func NewInvalidParamError ¶
func NewInvalidUrlParamError ¶
func ReturnStatusOK ¶
func ReturnStatusOK(w http.ResponseWriter)
func StopTestStore ¶
func StopTestStore()
func UseTestStore ¶
func UseTestStore(container *storetest.RunningContainer, settings *model.SqlSettings)
UseTestStore sets the container and corresponding settings to use for tests. Once the tests are complete (e.g. at the end of your TestMain implementation), you should call StopTestStore.
Types ¶
type API ¶
func (*API) ApiHandler ¶
func (*API) ApiHandlerTrustRequester ¶
func (*API) ApiSessionRequired ¶
func (*API) ApiSessionRequiredMfa ¶
func (*API) ApiSessionRequiredTrustRequester ¶
func (*API) InitChannel ¶
func (api *API) InitChannel()
func (*API) InitCluster ¶
func (api *API) InitCluster()
func (*API) InitCommand ¶
func (api *API) InitCommand()
func (*API) InitCompliance ¶
func (api *API) InitCompliance()
func (*API) InitDataRetention ¶
func (api *API) InitDataRetention()
func (*API) InitElasticsearch ¶
func (api *API) InitElasticsearch()
func (*API) InitOpenGraph ¶
func (api *API) InitOpenGraph()
func (*API) InitPlugin ¶
func (api *API) InitPlugin()
func (*API) InitPreference ¶
func (api *API) InitPreference()
func (*API) InitReaction ¶
func (api *API) InitReaction()
func (*API) InitStatus ¶
func (api *API) InitStatus()
func (*API) InitSystem ¶
func (api *API) InitSystem()
func (*API) InitWebSocket ¶
func (api *API) InitWebSocket()
func (*API) InitWebhook ¶
func (api *API) InitWebhook()
func (*API) InitWebrtc ¶
func (api *API) InitWebrtc()
type ApiParams ¶
type ApiParams struct { UserId string TeamId string InviteId string TokenId string ChannelId string PostId string FileId string PluginId string CommandId string HookId string ReportId string EmojiId string AppId string Email string Username string TeamName string ChannelName string PreferenceName string EmojiName string Category string Service string JobId string JobType string ActionId string Page int PerPage int LogsPerPage int Permanent bool }
func ApiParamsFromRequest ¶
type Context ¶
type Context struct { App *app.App Session model.Session Params *ApiParams Err *model.AppError T goi18n.TranslateFunc RequestId string IpAddress string Path string // contains filtered or unexported fields }
func (*Context) GetSiteURLHeader ¶
func (*Context) HandleEtag ¶
func (*Context) IsSystemAdmin ¶
func (*Context) LogAuditWithUserId ¶
func (*Context) MfaRequired ¶
func (c *Context) MfaRequired()
func (*Context) RemoveSessionCookie ¶
func (c *Context) RemoveSessionCookie(w http.ResponseWriter, r *http.Request)
func (*Context) RequireActionId ¶
func (*Context) RequireAppId ¶
func (*Context) RequireCategory ¶
func (*Context) RequireChannelId ¶
func (*Context) RequireChannelName ¶
func (*Context) RequireCommandId ¶
func (*Context) RequireEmail ¶
func (*Context) RequireEmojiId ¶
func (*Context) RequireEmojiName ¶
func (*Context) RequireFileId ¶
func (*Context) RequireHookId ¶
func (*Context) RequireInviteId ¶
func (*Context) RequireJobId ¶
func (*Context) RequireJobType ¶
func (*Context) RequirePluginId ¶
func (*Context) RequirePostId ¶
func (*Context) RequirePreferenceName ¶
func (*Context) RequireReportId ¶
func (*Context) RequireService ¶
func (*Context) RequireTeamId ¶
func (*Context) RequireTeamName ¶
func (*Context) RequireTokenId ¶
func (*Context) RequireUserId ¶
func (*Context) RequireUsername ¶
func (*Context) SessionRequired ¶
func (c *Context) SessionRequired()
func (*Context) SetInvalidParam ¶
func (*Context) SetInvalidUrlParam ¶
func (*Context) SetPermissionError ¶
func (c *Context) SetPermissionError(permission *model.Permission)
func (*Context) SetSiteURLHeader ¶
type Routes ¶
type Routes struct { Root *mux.Router // ” ApiRoot *mux.Router // 'api/v4' Users *mux.Router // 'api/v4/users' User *mux.Router // 'api/v4/users/{user_id:[A-Za-z0-9]+}' UserByUsername *mux.Router // 'api/v4/users/username/{username:[A-Za-z0-9_-\.]+}' UserByEmail *mux.Router // 'api/v4/users/email/{email}' Teams *mux.Router // 'api/v4/teams' TeamsForUser *mux.Router // 'api/v4/users/{user_id:[A-Za-z0-9]+}/teams' Team *mux.Router // 'api/v4/teams/{team_id:[A-Za-z0-9]+}' TeamForUser *mux.Router // 'api/v4/users/{user_id:[A-Za-z0-9]+}/teams/{team_id:[A-Za-z0-9]+}' TeamByName *mux.Router // 'api/v4/teams/name/{team_name:[A-Za-z0-9_-]+}' TeamMembers *mux.Router // 'api/v4/teams/{team_id:[A-Za-z0-9_-]+}/members' TeamMember *mux.Router // 'api/v4/teams/{team_id:[A-Za-z0-9_-]+}/members/{user_id:[A-Za-z0-9_-]+}' TeamMembersForUser *mux.Router // 'api/v4/users/{user_id:[A-Za-z0-9]+}/teams/members' Channels *mux.Router // 'api/v4/channels' Channel *mux.Router // 'api/v4/channels/{channel_id:[A-Za-z0-9]+}' ChannelForUser *mux.Router // 'api/v4/users/{user_id:[A-Za-z0-9]+}/channels/{channel_id:[A-Za-z0-9]+}' ChannelByName *mux.Router // 'api/v4/teams/{team_id:[A-Za-z0-9]+}/channels/name/{channel_name:[A-Za-z0-9_-]+}' ChannelByNameForTeamName *mux.Router // 'api/v4/teams/name/{team_name:[A-Za-z0-9_-]+}/channels/name/{channel_name:[A-Za-z0-9_-]+}' ChannelsForTeam *mux.Router // 'api/v4/teams/{team_id:[A-Za-z0-9]+}/channels' ChannelMembers *mux.Router // 'api/v4/channels/{channel_id:[A-Za-z0-9]+}/members' ChannelMember *mux.Router // 'api/v4/channels/{channel_id:[A-Za-z0-9]+}/members/{user_id:[A-Za-z0-9]+}' ChannelMembersForUser *mux.Router // 'api/v4/users/{user_id:[A-Za-z0-9]+}/teams/{team_id:[A-Za-z0-9]+}/channels/members' Posts *mux.Router // 'api/v4/posts' Post *mux.Router // 'api/v4/posts/{post_id:[A-Za-z0-9]+}' PostsForChannel *mux.Router // 'api/v4/channels/{channel_id:[A-Za-z0-9]+}/posts' PostsForUser *mux.Router // 'api/v4/users/{user_id:[A-Za-z0-9]+}/posts' PostForUser *mux.Router // 'api/v4/users/{user_id:[A-Za-z0-9]+}/posts/{post_id:[A-Za-z0-9]+}' Files *mux.Router // 'api/v4/files' File *mux.Router // 'api/v4/files/{file_id:[A-Za-z0-9]+}' Plugins *mux.Router // 'api/v4/plugins' Plugin *mux.Router // 'api/v4/plugins/{plugin_id:[A-Za-z0-9_-]+}' PublicFile *mux.Router // 'files/{file_id:[A-Za-z0-9]+}/public' Commands *mux.Router // 'api/v4/commands' Command *mux.Router // 'api/v4/commands/{command_id:[A-Za-z0-9]+}' Hooks *mux.Router // 'api/v4/hooks' IncomingHooks *mux.Router // 'api/v4/hooks/incoming' IncomingHook *mux.Router // 'api/v4/hooks/incoming/{hook_id:[A-Za-z0-9]+}' OutgoingHooks *mux.Router // 'api/v4/hooks/outgoing' OutgoingHook *mux.Router // 'api/v4/hooks/outgoing/{hook_id:[A-Za-z0-9]+}' OAuth *mux.Router // 'api/v4/oauth' OAuthApps *mux.Router // 'api/v4/oauth/apps' OAuthApp *mux.Router // 'api/v4/oauth/apps/{app_id:[A-Za-z0-9]+}' OpenGraph *mux.Router // 'api/v4/opengraph' SAML *mux.Router // 'api/v4/saml' Compliance *mux.Router // 'api/v4/compliance' Cluster *mux.Router // 'api/v4/cluster' LDAP *mux.Router // 'api/v4/ldap' Elasticsearch *mux.Router // 'api/v4/elasticsearch' DataRetention *mux.Router // 'api/v4/data_retention' Brand *mux.Router // 'api/v4/brand' System *mux.Router // 'api/v4/system' Jobs *mux.Router // 'api/v4/jobs' Preferences *mux.Router // 'api/v4/users/{user_id:[A-Za-z0-9]+}/preferences' License *mux.Router // 'api/v4/license' Public *mux.Router // 'api/v4/public' Reactions *mux.Router // 'api/v4/reactions' Emojis *mux.Router // 'api/v4/emoji' Emoji *mux.Router // 'api/v4/emoji/{emoji_id:[A-Za-z0-9]+}' ReactionByNameForPostForUser *mux.Router // 'api/v4/users/{user_id:[A-Za-z0-9]+}/posts/{post_id:[A-Za-z0-9]+}/reactions/{emoji_name:[A-Za-z0-9_-+]+}' Webrtc *mux.Router // 'api/v4/webrtc' }
type TestHelper ¶
type TestHelper struct { App *app.App Client *model.Client4 BasicUser *model.User BasicUser2 *model.User TeamAdminUser *model.User BasicTeam *model.Team BasicChannel *model.Channel BasicPrivateChannel *model.Channel BasicChannel2 *model.Channel BasicPost *model.Post SystemAdminClient *model.Client4 SystemAdminUser *model.User // contains filtered or unexported fields }
func Setup ¶
func Setup() *TestHelper
func SetupEnterprise ¶
func SetupEnterprise() *TestHelper
func (*TestHelper) CreateChannelWithClient ¶
func (*TestHelper) CreateChannelWithClientAndTeam ¶
func (*TestHelper) CreateClient ¶
func (me *TestHelper) CreateClient() *model.Client4
func (*TestHelper) CreateMessagePost ¶
func (me *TestHelper) CreateMessagePost(message string) *model.Post
func (*TestHelper) CreateMessagePostWithClient ¶
func (*TestHelper) CreatePinnedPost ¶
func (me *TestHelper) CreatePinnedPost() *model.Post
func (*TestHelper) CreatePinnedPostWithClient ¶
func (*TestHelper) CreatePost ¶
func (me *TestHelper) CreatePost() *model.Post
func (*TestHelper) CreatePostWithClient ¶
func (*TestHelper) CreatePrivateChannel ¶
func (me *TestHelper) CreatePrivateChannel() *model.Channel
func (*TestHelper) CreatePublicChannel ¶
func (me *TestHelper) CreatePublicChannel() *model.Channel
func (*TestHelper) CreateTeam ¶
func (me *TestHelper) CreateTeam() *model.Team
func (*TestHelper) CreateTeamWithClient ¶
func (me *TestHelper) CreateTeamWithClient(client *model.Client4) *model.Team
func (*TestHelper) CreateUser ¶
func (me *TestHelper) CreateUser() *model.User
func (*TestHelper) CreateUserWithClient ¶
func (me *TestHelper) CreateUserWithClient(client *model.Client4) *model.User
func (*TestHelper) CreateWebSocketClient ¶
func (me *TestHelper) CreateWebSocketClient() (*model.WebSocketClient, *model.AppError)
func (*TestHelper) InitBasic ¶
func (me *TestHelper) InitBasic() *TestHelper
func (*TestHelper) InitSystemAdmin ¶
func (me *TestHelper) InitSystemAdmin() *TestHelper
func (*TestHelper) LinkUserToTeam ¶
func (me *TestHelper) LinkUserToTeam(user *model.User, team *model.Team)
func (*TestHelper) LoginBasic ¶
func (me *TestHelper) LoginBasic()
func (*TestHelper) LoginBasic2 ¶
func (me *TestHelper) LoginBasic2()
func (*TestHelper) LoginBasic2WithClient ¶
func (me *TestHelper) LoginBasic2WithClient(client *model.Client4)
func (*TestHelper) LoginBasicWithClient ¶
func (me *TestHelper) LoginBasicWithClient(client *model.Client4)
func (*TestHelper) LoginSystemAdmin ¶
func (me *TestHelper) LoginSystemAdmin()
func (*TestHelper) LoginSystemAdminWithClient ¶
func (me *TestHelper) LoginSystemAdminWithClient(client *model.Client4)
func (*TestHelper) LoginTeamAdmin ¶
func (me *TestHelper) LoginTeamAdmin()
func (*TestHelper) LoginTeamAdminWithClient ¶
func (me *TestHelper) LoginTeamAdminWithClient(client *model.Client4)
func (*TestHelper) MakeUserChannelAdmin ¶
func (me *TestHelper) MakeUserChannelAdmin(user *model.User, channel *model.Channel)
func (*TestHelper) TearDown ¶
func (me *TestHelper) TearDown()
func (*TestHelper) UpdateActiveUser ¶
func (me *TestHelper) UpdateActiveUser(user *model.User, active bool)
func (*TestHelper) UpdateUserToNonTeamAdmin ¶
func (me *TestHelper) UpdateUserToNonTeamAdmin(user *model.User, team *model.Team)
func (*TestHelper) UpdateUserToTeamAdmin ¶
func (me *TestHelper) UpdateUserToTeamAdmin(user *model.User, team *model.Team)
Source Files ¶
- api.go
- apitestlib.go
- brand.go
- channel.go
- cluster.go
- command.go
- compliance.go
- context.go
- data_retention.go
- elasticsearch.go
- emoji.go
- file.go
- job.go
- ldap.go
- oauth.go
- openGraph.go
- params.go
- plugin.go
- post.go
- preference.go
- reaction.go
- saml.go
- status.go
- system.go
- team.go
- user.go
- webhook.go
- webrtc.go
- websocket.go
Click to show internal directories.
Click to hide internal directories.