mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
* Changed FileSettings.PublicLinkSalt to be a pointer * Switched public file links to use a sha256 hash
71 lines
1.6 KiB
Go
71 lines
1.6 KiB
Go
// Copyright (c) 2015 Mattermost, Inc. All Rights Reserved.
|
|
// See License.txt for license information.
|
|
|
|
package api
|
|
|
|
import (
|
|
"github.com/mattermost/platform/utils"
|
|
"testing"
|
|
"time"
|
|
)
|
|
|
|
func BenchmarkUploadFile(b *testing.B) {
|
|
th := Setup().InitBasic()
|
|
Client := th.BasicClient
|
|
channel := th.BasicChannel
|
|
|
|
testPoster := NewAutoPostCreator(Client, channel.Id)
|
|
|
|
// Benchmark Start
|
|
b.ResetTimer()
|
|
for i := 0; i < b.N; i++ {
|
|
testPoster.UploadTestFile()
|
|
}
|
|
}
|
|
|
|
func BenchmarkGetFile(b *testing.B) {
|
|
th := Setup().InitBasic()
|
|
Client := th.BasicClient
|
|
channel := th.BasicChannel
|
|
|
|
testPoster := NewAutoPostCreator(Client, channel.Id)
|
|
filenames, err := testPoster.UploadTestFile()
|
|
if err == false {
|
|
b.Fatal("Unable to upload file for benchmark")
|
|
}
|
|
|
|
// wait a bit for files to ready
|
|
time.Sleep(5 * time.Second)
|
|
|
|
// Benchmark Start
|
|
b.ResetTimer()
|
|
for i := 0; i < b.N; i++ {
|
|
if _, downErr := Client.GetFile(filenames[0]+"?h="+generatePublicLinkHash(filenames[0], *utils.Cfg.FileSettings.PublicLinkSalt), true); downErr != nil {
|
|
b.Fatal(downErr)
|
|
}
|
|
}
|
|
}
|
|
|
|
func BenchmarkGetPublicLink(b *testing.B) {
|
|
th := Setup().InitBasic()
|
|
Client := th.BasicClient
|
|
channel := th.BasicChannel
|
|
|
|
testPoster := NewAutoPostCreator(Client, channel.Id)
|
|
filenames, err := testPoster.UploadTestFile()
|
|
if err == false {
|
|
b.Fatal("Unable to upload file for benchmark")
|
|
}
|
|
|
|
// wait a bit for files to ready
|
|
time.Sleep(5 * time.Second)
|
|
|
|
// Benchmark Start
|
|
b.ResetTimer()
|
|
for i := 0; i < b.N; i++ {
|
|
if _, downErr := Client.GetPublicLink(filenames[0]); downErr != nil {
|
|
b.Fatal(downErr)
|
|
}
|
|
}
|
|
}
|