MCPcopy
hub / github.com/stretchr/testify / Implements

Function Implements

assert/assertions.go:423–437  ·  view source on GitHub ↗

Implements asserts that an object is implemented by the specified interface. assert.Implements(t, (*MyInterface)(nil), new(MyObject))

(t TestingT, interfaceObject interface{}, object interface{}, msgAndArgs ...interface{})

Source from the content-addressed store, hash-verified

421//
422// assert.Implements(t, (*MyInterface)(nil), new(MyObject))
423func Implements(t TestingT, interfaceObject interface{}, object interface{}, msgAndArgs ...interface{}) bool {
424 if h, ok := t.(tHelper); ok {
425 h.Helper()
426 }
427 interfaceType := reflect.TypeOf(interfaceObject).Elem()
428
429 if object == nil {
430 return Fail(t, fmt.Sprintf("Cannot check if nil implements %v", interfaceType), msgAndArgs...)
431 }
432 if !reflect.TypeOf(object).Implements(interfaceType) {
433 return Fail(t, fmt.Sprintf("%T must implement %v", object, interfaceType), msgAndArgs...)
434 }
435
436 return true
437}
438
439// NotImplements asserts that an object does not implement the specified interface.
440//

Callers 4

ImplementsFunction · 0.92
ImplementsfFunction · 0.70
TestImplementsFunction · 0.70
ImplementsMethod · 0.70

Calls 3

FailFunction · 0.70
HelperMethod · 0.65
ImplementsMethod · 0.45

Tested by 1

TestImplementsFunction · 0.56