// Code generated by testifylint/internal/testgen. DO NOT EDIT.

package suiteextraassertcall

import (
	"testing"

	"github.com/stretchr/testify/assert"
	"github.com/stretchr/testify/require"
	"github.com/stretchr/testify/suite"
)

type SuiteExtraAssertCallCheckerSuite struct {
	suite.Suite
}

func TestSuiteExtraAssertCallCheckerSuite(t *testing.T) {
	suite.Run(t, new(SuiteExtraAssertCallCheckerSuite))
}

func (suite *SuiteExtraAssertCallCheckerSuite) TestAll() {
	var b bool
	suite.True(b)                                   // want "suite-extra-assert-call: use an explicit suite\\.Assert\\(\\)\\.True"
	suite.True(b, "msg")                            // want "suite-extra-assert-call: use an explicit suite\\.Assert\\(\\)\\.True"
	suite.True(b, "msg with arg %d", 42)            // want "suite-extra-assert-call: use an explicit suite\\.Assert\\(\\)\\.True"
	suite.True(b, "msg with args %d %s", 42, "42")  // want "suite-extra-assert-call: use an explicit suite\\.Assert\\(\\)\\.True"
	suite.Truef(b, "msg")                           // want "suite-extra-assert-call: use an explicit suite\\.Assert\\(\\)\\.Truef"
	suite.Truef(b, "msg with arg %d", 42)           // want "suite-extra-assert-call: use an explicit suite\\.Assert\\(\\)\\.Truef"
	suite.Truef(b, "msg with args %d %s", 42, "42") // want "suite-extra-assert-call: use an explicit suite\\.Assert\\(\\)\\.Truef"
}

func (s *SuiteExtraAssertCallCheckerSuite) TestIgnored() {
	var b bool

	t := s.T()
	assObj, reqObj := assert.New(t), require.New(t)
	assObjS, reqObjS := s.Assert(), s.Require()

	assert.True(t, b)
	assert.Truef(t, b, "msg with args %d %s", 42, "42")
	require.True(t, b)
	require.Truef(t, b, "msg with args %d %s", 42, "42")
	assObj.True(b)
	assObj.Truef(b, "msg with args %d %s", 42, "42")
	reqObj.True(b)
	reqObj.Truef(b, "msg with args %d %s", 42, "42")
	assObjS.True(b)
	assObjS.Truef(b, "msg with args %d %s", 42, "42")
	reqObjS.True(b)
	reqObjS.Truef(b, "msg with args %d %s", 42, "42")
	s.Assert().True(b)
	s.Assert().Truef(b, "msg with args %d %s", 42, "42")
	s.Require().True(b)
	s.Require().Truef(b, "msg with args %d %s", 42, "42")
}
