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