File tree 1 file changed +21
-3
lines changed
1 file changed +21
-3
lines changed Original file line number Diff line number Diff line change @@ -1065,14 +1065,32 @@ func SetDefault(i Asserter) (old Asserter) {
1065
1065
// function:
1066
1066
//
1067
1067
// defer assert.PushAsserter(assert.Plain)()
1068
- func PushAsserter (i Asserter ) func () {
1068
+ func PushAsserter (i Asserter ) (retFn function ) {
1069
+ var (
1070
+ prevFound bool
1071
+ prevAsserter asserter
1072
+ )
1073
+
1069
1074
// get pkg lvl asserter
1070
1075
curAsserter := defAsserter [def ]
1071
1076
// .. to check if we are doing unit tests
1072
1077
if ! curAsserter .isUnitTesting () {
1073
- // .. allow TLS specific asserter. NOTE see current()
1078
+ // .. allow GLS specific asserter. NOTE see current()
1074
1079
curGoRID := goid ()
1075
- asserterMap .Set (curGoRID , defAsserter [i ])
1080
+ //asserterMap.Set(curGoRID, defAsserter[i])
1081
+ asserterMap .Tx (func (m map [int ]asserter ) {
1082
+ cur , found := m [curGoRID ]
1083
+ if found {
1084
+ prevAsserter = cur
1085
+ prevFound = found
1086
+ }
1087
+ m [curGoRID ] = defAsserter [i ]
1088
+ })
1089
+ }
1090
+ if prevFound {
1091
+ return func () {
1092
+ asserterMap .Set (goid (), prevAsserter )
1093
+ }
1076
1094
}
1077
1095
return PopAsserter
1078
1096
}
You can’t perform that action at this time.
0 commit comments