parent
9386371097
commit
f4c414c0f6
@ -1,43 +0,0 @@
|
|||||||
# Go
|
|
||||||
# Build your Go project.
|
|
||||||
# Add steps that test, save build artifacts, deploy, and more:
|
|
||||||
# https://docs.microsoft.com/azure/devops/pipelines/languages/go
|
|
||||||
|
|
||||||
trigger:
|
|
||||||
- master
|
|
||||||
|
|
||||||
pool:
|
|
||||||
vmImage: 'ubuntu-latest'
|
|
||||||
|
|
||||||
variables:
|
|
||||||
GOBIN: '$(GOPATH)/bin' # Go binaries path
|
|
||||||
GOROOT: '/usr/local/go1.13' # Go installation path
|
|
||||||
GOPATH: '$(system.defaultWorkingDirectory)/gopath' # Go workspace path
|
|
||||||
modulePath: '$(GOPATH)/src/github.com/$(build.repository.name)' # Path to the module's code
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- script: |
|
|
||||||
mkdir -p '$(GOBIN)'
|
|
||||||
mkdir -p '$(GOPATH)/pkg'
|
|
||||||
mkdir -p '$(modulePath)'
|
|
||||||
shopt -s extglob
|
|
||||||
shopt -s dotglob
|
|
||||||
mv !(gopath) '$(modulePath)'
|
|
||||||
echo '##vso[task.prependpath]$(GOBIN)'
|
|
||||||
echo '##vso[task.prependpath]$(GOROOT)/bin'
|
|
||||||
displayName: 'Set up the Go workspace'
|
|
||||||
|
|
||||||
- script: |
|
|
||||||
go version
|
|
||||||
go get -v -t -d ./...
|
|
||||||
if [ -f Gopkg.toml ]; then
|
|
||||||
curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh
|
|
||||||
dep ensure
|
|
||||||
fi
|
|
||||||
go build -v .
|
|
||||||
workingDirectory: '$(modulePath)'
|
|
||||||
displayName: 'Get dependencies, then build'
|
|
||||||
|
|
||||||
- script: go test -v ./...
|
|
||||||
workingDirectory: '$(modulePath)'
|
|
||||||
displayName: 'Run tests'
|
|
@ -0,0 +1,61 @@
|
|||||||
|
package serializer
|
||||||
|
|
||||||
|
import (
|
||||||
|
model "github.com/HFO4/cloudreve/models"
|
||||||
|
"github.com/stretchr/testify/assert"
|
||||||
|
"testing"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestBuildUser(t *testing.T) {
|
||||||
|
asserts := assert.New(t)
|
||||||
|
user := model.User{
|
||||||
|
Policy: model.Policy{MaxSize: 1024 * 1024},
|
||||||
|
}
|
||||||
|
res := BuildUser(user)
|
||||||
|
asserts.Equal("1.00mb", res.Policy.MaxSize)
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestBuildUserResponse(t *testing.T) {
|
||||||
|
asserts := assert.New(t)
|
||||||
|
user := model.User{
|
||||||
|
Policy: model.Policy{MaxSize: 1024 * 1024},
|
||||||
|
}
|
||||||
|
res := BuildUserResponse(user)
|
||||||
|
asserts.Equal("1.00mb", res.Data.(User).Policy.MaxSize)
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestBuildUserStorageResponse(t *testing.T) {
|
||||||
|
asserts := assert.New(t)
|
||||||
|
|
||||||
|
{
|
||||||
|
user := model.User{
|
||||||
|
Storage: 0,
|
||||||
|
Group: model.Group{MaxStorage: 10},
|
||||||
|
}
|
||||||
|
res := BuildUserStorageResponse(user)
|
||||||
|
asserts.Equal(uint64(0), res.Data.(storage).Used)
|
||||||
|
asserts.Equal(uint64(10), res.Data.(storage).Total)
|
||||||
|
asserts.Equal(uint64(10), res.Data.(storage).Free)
|
||||||
|
}
|
||||||
|
{
|
||||||
|
user := model.User{
|
||||||
|
Storage: 6,
|
||||||
|
Group: model.Group{MaxStorage: 10},
|
||||||
|
}
|
||||||
|
res := BuildUserStorageResponse(user)
|
||||||
|
asserts.Equal(uint64(6), res.Data.(storage).Used)
|
||||||
|
asserts.Equal(uint64(10), res.Data.(storage).Total)
|
||||||
|
asserts.Equal(uint64(4), res.Data.(storage).Free)
|
||||||
|
}
|
||||||
|
{
|
||||||
|
user := model.User{
|
||||||
|
Storage: 20,
|
||||||
|
Group: model.Group{MaxStorage: 10},
|
||||||
|
}
|
||||||
|
res := BuildUserStorageResponse(user)
|
||||||
|
asserts.Equal(uint64(20), res.Data.(storage).Used)
|
||||||
|
asserts.Equal(uint64(10), res.Data.(storage).Total)
|
||||||
|
asserts.Equal(uint64(0), res.Data.(storage).Free)
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in new issue