mirror of
				https://github.com/go-gitea/gitea
				synced 2025-10-31 03:18:24 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			576 lines
		
	
	
		
			18 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			576 lines
		
	
	
		
			18 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| # assertions
 | |
| --
 | |
|     import "github.com/smartystreets/assertions"
 | |
| 
 | |
| Package assertions contains the implementations for all assertions which are
 | |
| referenced in goconvey's `convey` package
 | |
| (github.com/smartystreets/goconvey/convey) and gunit
 | |
| (github.com/smartystreets/gunit) for use with the So(...) method. They can also
 | |
| be used in traditional Go test functions and even in applications.
 | |
| 
 | |
| Many of the assertions lean heavily on work done by Aaron Jacobs in his
 | |
| excellent oglematchers library. (https://github.com/jacobsa/oglematchers) The
 | |
| ShouldResemble assertion leans heavily on work done by Daniel Jacques in his
 | |
| very helpful go-render library. (https://github.com/luci/go-render)
 | |
| 
 | |
| ## Usage
 | |
| 
 | |
| #### func  GoConveyMode
 | |
| 
 | |
| ```go
 | |
| func GoConveyMode(yes bool)
 | |
| ```
 | |
| GoConveyMode provides control over JSON serialization of failures. When using
 | |
| the assertions in this package from the convey package JSON results are very
 | |
| helpful and can be rendered in a DIFF view. In that case, this function will be
 | |
| called with a true value to enable the JSON serialization. By default, the
 | |
| assertions in this package will not serializer a JSON result, making standalone
 | |
| ussage more convenient.
 | |
| 
 | |
| #### func  ShouldAlmostEqual
 | |
| 
 | |
| ```go
 | |
| func ShouldAlmostEqual(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldAlmostEqual makes sure that two parameters are close enough to being
 | |
| equal. The acceptable delta may be specified with a third argument, or a very
 | |
| small default delta will be used.
 | |
| 
 | |
| #### func  ShouldBeBetween
 | |
| 
 | |
| ```go
 | |
| func ShouldBeBetween(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldBeBetween receives exactly three parameters: an actual value, a lower
 | |
| bound, and an upper bound. It ensures that the actual value is between both
 | |
| bounds (but not equal to either of them).
 | |
| 
 | |
| #### func  ShouldBeBetweenOrEqual
 | |
| 
 | |
| ```go
 | |
| func ShouldBeBetweenOrEqual(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldBeBetweenOrEqual receives exactly three parameters: an actual value, a
 | |
| lower bound, and an upper bound. It ensures that the actual value is between
 | |
| both bounds or equal to one of them.
 | |
| 
 | |
| #### func  ShouldBeBlank
 | |
| 
 | |
| ```go
 | |
| func ShouldBeBlank(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldBeBlank receives exactly 1 string parameter and ensures that it is equal
 | |
| to "".
 | |
| 
 | |
| #### func  ShouldBeChronological
 | |
| 
 | |
| ```go
 | |
| func ShouldBeChronological(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldBeChronological receives a []time.Time slice and asserts that the are in
 | |
| chronological order starting with the first time.Time as the earliest.
 | |
| 
 | |
| #### func  ShouldBeEmpty
 | |
| 
 | |
| ```go
 | |
| func ShouldBeEmpty(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldBeEmpty receives a single parameter (actual) and determines whether or not
 | |
| calling len(actual) would return `0`. It obeys the rules specified by the len
 | |
| function for determining length: http://golang.org/pkg/builtin/#len
 | |
| 
 | |
| #### func  ShouldBeFalse
 | |
| 
 | |
| ```go
 | |
| func ShouldBeFalse(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldBeFalse receives a single parameter and ensures that it is false.
 | |
| 
 | |
| #### func  ShouldBeGreaterThan
 | |
| 
 | |
| ```go
 | |
| func ShouldBeGreaterThan(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldBeGreaterThan receives exactly two parameters and ensures that the first
 | |
| is greater than the second.
 | |
| 
 | |
| #### func  ShouldBeGreaterThanOrEqualTo
 | |
| 
 | |
| ```go
 | |
| func ShouldBeGreaterThanOrEqualTo(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldBeGreaterThanOrEqualTo receives exactly two parameters and ensures that
 | |
| the first is greater than or equal to the second.
 | |
| 
 | |
| #### func  ShouldBeIn
 | |
| 
 | |
| ```go
 | |
| func ShouldBeIn(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldBeIn receives at least 2 parameters. The first is a proposed member of the
 | |
| collection that is passed in either as the second parameter, or of the
 | |
| collection that is comprised of all the remaining parameters. This assertion
 | |
| ensures that the proposed member is in the collection (using ShouldEqual).
 | |
| 
 | |
| #### func  ShouldBeLessThan
 | |
| 
 | |
| ```go
 | |
| func ShouldBeLessThan(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldBeLessThan receives exactly two parameters and ensures that the first is
 | |
| less than the second.
 | |
| 
 | |
| #### func  ShouldBeLessThanOrEqualTo
 | |
| 
 | |
| ```go
 | |
| func ShouldBeLessThanOrEqualTo(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldBeLessThan receives exactly two parameters and ensures that the first is
 | |
| less than or equal to the second.
 | |
| 
 | |
| #### func  ShouldBeNil
 | |
| 
 | |
| ```go
 | |
| func ShouldBeNil(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldBeNil receives a single parameter and ensures that it is nil.
 | |
| 
 | |
| #### func  ShouldBeTrue
 | |
| 
 | |
| ```go
 | |
| func ShouldBeTrue(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldBeTrue receives a single parameter and ensures that it is true.
 | |
| 
 | |
| #### func  ShouldBeZeroValue
 | |
| 
 | |
| ```go
 | |
| func ShouldBeZeroValue(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldBeZeroValue receives a single parameter and ensures that it is the Go
 | |
| equivalent of the default value, or "zero" value.
 | |
| 
 | |
| #### func  ShouldContain
 | |
| 
 | |
| ```go
 | |
| func ShouldContain(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldContain receives exactly two parameters. The first is a slice and the
 | |
| second is a proposed member. Membership is determined using ShouldEqual.
 | |
| 
 | |
| #### func  ShouldContainKey
 | |
| 
 | |
| ```go
 | |
| func ShouldContainKey(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldContainKey receives exactly two parameters. The first is a map and the
 | |
| second is a proposed key. Keys are compared with a simple '=='.
 | |
| 
 | |
| #### func  ShouldContainSubstring
 | |
| 
 | |
| ```go
 | |
| func ShouldContainSubstring(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldContainSubstring receives exactly 2 string parameters and ensures that the
 | |
| first contains the second as a substring.
 | |
| 
 | |
| #### func  ShouldEndWith
 | |
| 
 | |
| ```go
 | |
| func ShouldEndWith(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldEndWith receives exactly 2 string parameters and ensures that the first
 | |
| ends with the second.
 | |
| 
 | |
| #### func  ShouldEqual
 | |
| 
 | |
| ```go
 | |
| func ShouldEqual(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldEqual receives exactly two parameters and does an equality check.
 | |
| 
 | |
| #### func  ShouldEqualTrimSpace
 | |
| 
 | |
| ```go
 | |
| func ShouldEqualTrimSpace(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldEqualTrimSpace receives exactly 2 string parameters and ensures that the
 | |
| first is equal to the second after removing all leading and trailing whitespace
 | |
| using strings.TrimSpace(first).
 | |
| 
 | |
| #### func  ShouldEqualWithout
 | |
| 
 | |
| ```go
 | |
| func ShouldEqualWithout(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldEqualWithout receives exactly 3 string parameters and ensures that the
 | |
| first is equal to the second after removing all instances of the third from the
 | |
| first using strings.Replace(first, third, "", -1).
 | |
| 
 | |
| #### func  ShouldHappenAfter
 | |
| 
 | |
| ```go
 | |
| func ShouldHappenAfter(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldHappenAfter receives exactly 2 time.Time arguments and asserts that the
 | |
| first happens after the second.
 | |
| 
 | |
| #### func  ShouldHappenBefore
 | |
| 
 | |
| ```go
 | |
| func ShouldHappenBefore(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldHappenBefore receives exactly 2 time.Time arguments and asserts that the
 | |
| first happens before the second.
 | |
| 
 | |
| #### func  ShouldHappenBetween
 | |
| 
 | |
| ```go
 | |
| func ShouldHappenBetween(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldHappenBetween receives exactly 3 time.Time arguments and asserts that the
 | |
| first happens between (not on) the second and third.
 | |
| 
 | |
| #### func  ShouldHappenOnOrAfter
 | |
| 
 | |
| ```go
 | |
| func ShouldHappenOnOrAfter(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldHappenOnOrAfter receives exactly 2 time.Time arguments and asserts that
 | |
| the first happens on or after the second.
 | |
| 
 | |
| #### func  ShouldHappenOnOrBefore
 | |
| 
 | |
| ```go
 | |
| func ShouldHappenOnOrBefore(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldHappenOnOrBefore receives exactly 2 time.Time arguments and asserts that
 | |
| the first happens on or before the second.
 | |
| 
 | |
| #### func  ShouldHappenOnOrBetween
 | |
| 
 | |
| ```go
 | |
| func ShouldHappenOnOrBetween(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldHappenOnOrBetween receives exactly 3 time.Time arguments and asserts that
 | |
| the first happens between or on the second and third.
 | |
| 
 | |
| #### func  ShouldHappenWithin
 | |
| 
 | |
| ```go
 | |
| func ShouldHappenWithin(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldHappenWithin receives a time.Time, a time.Duration, and a time.Time (3
 | |
| arguments) and asserts that the first time.Time happens within or on the
 | |
| duration specified relative to the other time.Time.
 | |
| 
 | |
| #### func  ShouldHaveLength
 | |
| 
 | |
| ```go
 | |
| func ShouldHaveLength(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldHaveLength receives 2 parameters. The first is a collection to check the
 | |
| length of, the second being the expected length. It obeys the rules specified by
 | |
| the len function for determining length: http://golang.org/pkg/builtin/#len
 | |
| 
 | |
| #### func  ShouldHaveSameTypeAs
 | |
| 
 | |
| ```go
 | |
| func ShouldHaveSameTypeAs(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldHaveSameTypeAs receives exactly two parameters and compares their
 | |
| underlying types for equality.
 | |
| 
 | |
| #### func  ShouldImplement
 | |
| 
 | |
| ```go
 | |
| func ShouldImplement(actual interface{}, expectedList ...interface{}) string
 | |
| ```
 | |
| ShouldImplement receives exactly two parameters and ensures that the first
 | |
| implements the interface type of the second.
 | |
| 
 | |
| #### func  ShouldNotAlmostEqual
 | |
| 
 | |
| ```go
 | |
| func ShouldNotAlmostEqual(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldNotAlmostEqual is the inverse of ShouldAlmostEqual
 | |
| 
 | |
| #### func  ShouldNotBeBetween
 | |
| 
 | |
| ```go
 | |
| func ShouldNotBeBetween(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldNotBeBetween receives exactly three parameters: an actual value, a lower
 | |
| bound, and an upper bound. It ensures that the actual value is NOT between both
 | |
| bounds.
 | |
| 
 | |
| #### func  ShouldNotBeBetweenOrEqual
 | |
| 
 | |
| ```go
 | |
| func ShouldNotBeBetweenOrEqual(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldNotBeBetweenOrEqual receives exactly three parameters: an actual value, a
 | |
| lower bound, and an upper bound. It ensures that the actual value is nopt
 | |
| between the bounds nor equal to either of them.
 | |
| 
 | |
| #### func  ShouldNotBeBlank
 | |
| 
 | |
| ```go
 | |
| func ShouldNotBeBlank(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldNotBeBlank receives exactly 1 string parameter and ensures that it is
 | |
| equal to "".
 | |
| 
 | |
| #### func  ShouldNotBeEmpty
 | |
| 
 | |
| ```go
 | |
| func ShouldNotBeEmpty(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldNotBeEmpty receives a single parameter (actual) and determines whether or
 | |
| not calling len(actual) would return a value greater than zero. It obeys the
 | |
| rules specified by the `len` function for determining length:
 | |
| http://golang.org/pkg/builtin/#len
 | |
| 
 | |
| #### func  ShouldNotBeIn
 | |
| 
 | |
| ```go
 | |
| func ShouldNotBeIn(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldNotBeIn receives at least 2 parameters. The first is a proposed member of
 | |
| the collection that is passed in either as the second parameter, or of the
 | |
| collection that is comprised of all the remaining parameters. This assertion
 | |
| ensures that the proposed member is NOT in the collection (using ShouldEqual).
 | |
| 
 | |
| #### func  ShouldNotBeNil
 | |
| 
 | |
| ```go
 | |
| func ShouldNotBeNil(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldNotBeNil receives a single parameter and ensures that it is not nil.
 | |
| 
 | |
| #### func  ShouldNotContain
 | |
| 
 | |
| ```go
 | |
| func ShouldNotContain(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldNotContain receives exactly two parameters. The first is a slice and the
 | |
| second is a proposed member. Membership is determinied using ShouldEqual.
 | |
| 
 | |
| #### func  ShouldNotContainKey
 | |
| 
 | |
| ```go
 | |
| func ShouldNotContainKey(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldNotContainKey receives exactly two parameters. The first is a map and the
 | |
| second is a proposed absent key. Keys are compared with a simple '=='.
 | |
| 
 | |
| #### func  ShouldNotContainSubstring
 | |
| 
 | |
| ```go
 | |
| func ShouldNotContainSubstring(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldNotContainSubstring receives exactly 2 string parameters and ensures that
 | |
| the first does NOT contain the second as a substring.
 | |
| 
 | |
| #### func  ShouldNotEndWith
 | |
| 
 | |
| ```go
 | |
| func ShouldNotEndWith(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldEndWith receives exactly 2 string parameters and ensures that the first
 | |
| does not end with the second.
 | |
| 
 | |
| #### func  ShouldNotEqual
 | |
| 
 | |
| ```go
 | |
| func ShouldNotEqual(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldNotEqual receives exactly two parameters and does an inequality check.
 | |
| 
 | |
| #### func  ShouldNotHappenOnOrBetween
 | |
| 
 | |
| ```go
 | |
| func ShouldNotHappenOnOrBetween(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldNotHappenOnOrBetween receives exactly 3 time.Time arguments and asserts
 | |
| that the first does NOT happen between or on the second or third.
 | |
| 
 | |
| #### func  ShouldNotHappenWithin
 | |
| 
 | |
| ```go
 | |
| func ShouldNotHappenWithin(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldNotHappenWithin receives a time.Time, a time.Duration, and a time.Time (3
 | |
| arguments) and asserts that the first time.Time does NOT happen within or on the
 | |
| duration specified relative to the other time.Time.
 | |
| 
 | |
| #### func  ShouldNotHaveSameTypeAs
 | |
| 
 | |
| ```go
 | |
| func ShouldNotHaveSameTypeAs(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldNotHaveSameTypeAs receives exactly two parameters and compares their
 | |
| underlying types for inequality.
 | |
| 
 | |
| #### func  ShouldNotImplement
 | |
| 
 | |
| ```go
 | |
| func ShouldNotImplement(actual interface{}, expectedList ...interface{}) string
 | |
| ```
 | |
| ShouldNotImplement receives exactly two parameters and ensures that the first
 | |
| does NOT implement the interface type of the second.
 | |
| 
 | |
| #### func  ShouldNotPanic
 | |
| 
 | |
| ```go
 | |
| func ShouldNotPanic(actual interface{}, expected ...interface{}) (message string)
 | |
| ```
 | |
| ShouldNotPanic receives a void, niladic function and expects to execute the
 | |
| function without any panic.
 | |
| 
 | |
| #### func  ShouldNotPanicWith
 | |
| 
 | |
| ```go
 | |
| func ShouldNotPanicWith(actual interface{}, expected ...interface{}) (message string)
 | |
| ```
 | |
| ShouldNotPanicWith receives a void, niladic function and expects to recover a
 | |
| panic whose content differs from the second argument.
 | |
| 
 | |
| #### func  ShouldNotPointTo
 | |
| 
 | |
| ```go
 | |
| func ShouldNotPointTo(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldNotPointTo receives exactly two parameters and checks to see that they
 | |
| point to different addresess.
 | |
| 
 | |
| #### func  ShouldNotResemble
 | |
| 
 | |
| ```go
 | |
| func ShouldNotResemble(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldNotResemble receives exactly two parameters and does an inverse deep equal
 | |
| check (see reflect.DeepEqual)
 | |
| 
 | |
| #### func  ShouldNotStartWith
 | |
| 
 | |
| ```go
 | |
| func ShouldNotStartWith(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldNotStartWith receives exactly 2 string parameters and ensures that the
 | |
| first does not start with the second.
 | |
| 
 | |
| #### func  ShouldPanic
 | |
| 
 | |
| ```go
 | |
| func ShouldPanic(actual interface{}, expected ...interface{}) (message string)
 | |
| ```
 | |
| ShouldPanic receives a void, niladic function and expects to recover a panic.
 | |
| 
 | |
| #### func  ShouldPanicWith
 | |
| 
 | |
| ```go
 | |
| func ShouldPanicWith(actual interface{}, expected ...interface{}) (message string)
 | |
| ```
 | |
| ShouldPanicWith receives a void, niladic function and expects to recover a panic
 | |
| with the second argument as the content.
 | |
| 
 | |
| #### func  ShouldPointTo
 | |
| 
 | |
| ```go
 | |
| func ShouldPointTo(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldPointTo receives exactly two parameters and checks to see that they point
 | |
| to the same address.
 | |
| 
 | |
| #### func  ShouldResemble
 | |
| 
 | |
| ```go
 | |
| func ShouldResemble(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldResemble receives exactly two parameters and does a deep equal check (see
 | |
| reflect.DeepEqual)
 | |
| 
 | |
| #### func  ShouldStartWith
 | |
| 
 | |
| ```go
 | |
| func ShouldStartWith(actual interface{}, expected ...interface{}) string
 | |
| ```
 | |
| ShouldStartWith receives exactly 2 string parameters and ensures that the first
 | |
| starts with the second.
 | |
| 
 | |
| #### func  So
 | |
| 
 | |
| ```go
 | |
| func So(actual interface{}, assert assertion, expected ...interface{}) (bool, string)
 | |
| ```
 | |
| So is a convenience function (as opposed to an inconvenience function?) for
 | |
| running assertions on arbitrary arguments in any context, be it for testing or
 | |
| even application logging. It allows you to perform assertion-like behavior (and
 | |
| get nicely formatted messages detailing discrepancies) but without the program
 | |
| blowing up or panicking. All that is required is to import this package and call
 | |
| `So` with one of the assertions exported by this package as the second
 | |
| parameter. The first return parameter is a boolean indicating if the assertion
 | |
| was true. The second return parameter is the well-formatted message showing why
 | |
| an assertion was incorrect, or blank if the assertion was correct.
 | |
| 
 | |
| Example:
 | |
| 
 | |
|     if ok, message := So(x, ShouldBeGreaterThan, y); !ok {
 | |
|          log.Println(message)
 | |
|     }
 | |
| 
 | |
| #### type Assertion
 | |
| 
 | |
| ```go
 | |
| type Assertion struct {
 | |
| }
 | |
| ```
 | |
| 
 | |
| 
 | |
| #### func  New
 | |
| 
 | |
| ```go
 | |
| func New(t testingT) *Assertion
 | |
| ```
 | |
| New swallows the *testing.T struct and prints failed assertions using t.Error.
 | |
| Example: assertions.New(t).So(1, should.Equal, 1)
 | |
| 
 | |
| #### func (*Assertion) Failed
 | |
| 
 | |
| ```go
 | |
| func (this *Assertion) Failed() bool
 | |
| ```
 | |
| Failed reports whether any calls to So (on this Assertion instance) have failed.
 | |
| 
 | |
| #### func (*Assertion) So
 | |
| 
 | |
| ```go
 | |
| func (this *Assertion) So(actual interface{}, assert assertion, expected ...interface{}) bool
 | |
| ```
 | |
| So calls the standalone So function and additionally, calls t.Error in failure
 | |
| scenarios.
 | |
| 
 | |
| #### type FailureView
 | |
| 
 | |
| ```go
 | |
| type FailureView struct {
 | |
| 	Message  string `json:"Message"`
 | |
| 	Expected string `json:"Expected"`
 | |
| 	Actual   string `json:"Actual"`
 | |
| }
 | |
| ```
 | |
| 
 | |
| This struct is also declared in
 | |
| github.com/smartystreets/goconvey/convey/reporting. The json struct tags should
 | |
| be equal in both declarations.
 | |
| 
 | |
| #### type Serializer
 | |
| 
 | |
| ```go
 | |
| type Serializer interface {
 | |
| 	// contains filtered or unexported methods
 | |
| }
 | |
| ```
 |