summaryrefslogtreecommitdiffstats
path: root/modules/unittestbridge/unittestbridge.go
diff options
context:
space:
mode:
Diffstat (limited to 'modules/unittestbridge/unittestbridge.go')
-rw-r--r--modules/unittestbridge/unittestbridge.go46
1 files changed, 0 insertions, 46 deletions
diff --git a/modules/unittestbridge/unittestbridge.go b/modules/unittestbridge/unittestbridge.go
deleted file mode 100644
index 273cf5e70f..0000000000
--- a/modules/unittestbridge/unittestbridge.go
+++ /dev/null
@@ -1,46 +0,0 @@
-// Copyright 2021 The Gitea Authors. All rights reserved.
-// Use of this source code is governed by a MIT-style
-// license that can be found in the LICENSE file.
-
-package unittestbridge
-
-// Usage: generally, non-unit-test code shouldn't depend on unit test code.
-// However, we have some code like models.CheckConsistencyFor, which need to do some unit test works.
-// Now we can not decouple models.CheckConsistencyFor from unit test code easily (cycle-import reasons).
-// So we introduce this `unit test bridge`:
-// * When a release binary is built, no testing/assert framework would be compiled into the binary, and CheckConsistencyFor won't run unit test related code
-// * When a unit test binary is built, the unit test code will init this bridge, then CheckConsistencyFor can run unit test related code
-//
-// Tester/Assert are intermediate interfaces, they should NOT be used in new code.
-// One day, if CheckConsistencyFor is clean enough, we can remove these intermediate interfaces.
-
-// Tester is the same as TestingT in "stretchr/testify/assert"
-// Tester can be used in non-unit-test code (ex: models.CheckConsistencyFor), it is used to isolate dependencies
-type Tester interface {
- Errorf(format string, args ...interface{})
-}
-
-// Asserter can be used in non-unit-test code (ex: models.CheckConsistencyFor), it is used to isolate dependencies
-type Asserter interface {
- Tester
- NoError(err error, msgAndArgs ...interface{}) bool
- EqualValues(expected, actual interface{}, msgAndArgs ...interface{}) bool
- Equal(expected, actual interface{}, msgAndArgs ...interface{}) bool
- True(value bool, msgAndArgs ...interface{}) bool
- False(value bool, msgAndArgs ...interface{}) bool
-}
-
-var newAsserterFunc func(t Tester) Asserter
-
-// NewAsserter returns a new asserter, only works in unit test
-func NewAsserter(t Tester) Asserter {
- if newAsserterFunc == nil {
- panic("the newAsserterFunc is not set. you can only use assert in unit test.")
- }
- return newAsserterFunc(t)
-}
-
-// SetNewAsserterFunc in unit test, the asserter must be set first
-func SetNewAsserterFunc(f func(t Tester) Asserter) {
- newAsserterFunc = f
-}