0
Fork 0
mirror of https://github.com/willnorris/imageproxy.git synced 2024-12-16 21:56:43 -05:00

add newer flags to Options string

This commit is contained in:
Will Norris 2013-12-26 12:50:22 -08:00
parent fc8552e6b4
commit 9c911bef14
2 changed files with 52 additions and 1 deletions

View file

@ -16,6 +16,7 @@
package proxy package proxy
import ( import (
"bytes"
"fmt" "fmt"
"net/url" "net/url"
"strconv" "strconv"
@ -41,7 +42,21 @@ type Options struct {
} }
func (o Options) String() string { func (o Options) String() string {
return fmt.Sprintf("%vx%v", o.Width, o.Height) buf := new(bytes.Buffer)
fmt.Fprintf(buf, "%vx%v", o.Width, o.Height)
if o.Fit {
buf.WriteString(",fit")
}
if o.Rotate != 0 {
fmt.Fprintf(buf, ",r%d", o.Rotate)
}
if o.FlipVertical {
buf.WriteString(",fv")
}
if o.FlipHorizontal {
buf.WriteString(",fh")
}
return buf.String()
} }
func ParseOptions(str string) *Options { func ParseOptions(str string) *Options {

36
proxy/data_test.go Normal file
View file

@ -0,0 +1,36 @@
// Copyright 2013 Google Inc. All rights reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package proxy
import "testing"
func TestOptions_String(t *testing.T) {
tests := []struct {
Options *Options
String string
}{
{emptyOptions, "0x0"},
{
&Options{1, 2, true, 90, true, true},
"1x2,fit,r90,fv,fh",
},
}
for i, tt := range tests {
if got, want := tt.Options.String(), tt.String; got != want {
t.Errorf("%d. Options.String returned %v, want %v", i, got, want)
}
}
}