PLT-2115 adding compliance feature to enterprise

Этот коммит содержится в:
=Corey Hulen
2016-03-10 09:39:05 -08:00
родитель cbf84c8bea
Коммит 6d21a339dc
6 изменённых файлов: 256 добавлений и 0 удалений

92
model/compliance_post.go Обычный файл
Просмотреть файл

@@ -0,0 +1,92 @@
// Copyright (c) 2016 Mattermost, Inc. All Rights Reserved.
// See License.txt for license information.
package model
import (
"time"
)
type CompliancePost struct {
// From Team
TeamName string
TeamDisplayName string
// From Channel
ChannelName string
ChannelDisplayName string
// From User
UserUsername string
UserEmail string
UserNickname string
// From Post
PostId string
PostCreateAt int64
PostUpdateAt int64
PostDeleteAt int64
PostRootId string
PostParentId string
PostOriginalId string
PostMessage string
PostType string
PostProps string
PostHashtags string
PostFilenames string
}
func CompliancePostHeader() []string {
return []string{
"TeamName",
"TeamDisplayName",
"ChannelName",
"ChannelDisplayName",
"UserUsername",
"UserEmail",
"UserNickname",
"PostId",
"PostCreateAt",
"PostUpdateAt",
"PostDeleteAt",
"PostRootId",
"PostParentId",
"PostOriginalId",
"PostMessage",
"PostType",
"PostProps",
"PostHashtags",
"PostFilenames",
}
}
func (me *CompliancePost) Row() []string {
return []string{
me.TeamName,
me.TeamDisplayName,
me.ChannelName,
me.ChannelDisplayName,
me.UserUsername,
me.UserEmail,
me.UserNickname,
me.PostId,
time.Unix(0, me.PostCreateAt*1000).Format(time.RFC3339),
time.Unix(0, me.PostUpdateAt*1000).Format(time.RFC3339),
time.Unix(0, me.PostDeleteAt*1000).Format(time.RFC3339),
me.PostRootId,
me.PostParentId,
me.PostOriginalId,
me.PostMessage,
me.PostType,
me.PostProps,
me.PostHashtags,
me.PostFilenames,
}
}

27
model/compliance_post_test.go Обычный файл
Просмотреть файл

@@ -0,0 +1,27 @@
// Copyright (c) 2016 Mattermost, Inc. All Rights Reserved.
// See License.txt for license information.
package model
import (
"testing"
)
func TestCompliancePostHeader(t *testing.T) {
if CompliancePostHeader()[0] != "TeamName" {
t.Fatal()
}
}
func TestCompliancePost(t *testing.T) {
o := CompliancePost{TeamName: "test", PostFilenames: "files", PostCreateAt: GetMillis()}
r := o.Row()
if r[0] != "test" {
t.Fatal()
}
if r[len(r)-1] != "files" {
t.Fatal()
}
}