Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Xulijie Li
MathsEngine
Commits
af571a61
Commit
af571a61
authored
May 03, 2021
by
BlackAngle233
Browse files
212
parent
1d9b5391
Changes
756
Hide whitespace changes
Inline
Side-by-side
Too many changes to show.
To preserve performance only
756 of 756+
files are displayed.
Plain diff
Email patch
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/Assertions/LogScope.meta
View file @
af571a61
fileFormatVersion: 2
guid: b1d8465ba1376b148bdab58965101f47
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: b1d8465ba1376b148bdab58965101f47
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/Assertions/LogScope/ILogScope.cs
View file @
af571a61
using
System
;
using
System.Collections.Generic
;
namespace
UnityEngine.TestTools.Logging
{
internal
interface
ILogScope
:
IDisposable
{
Queue
<
LogMatch
>
ExpectedLogs
{
get
;
set
;
}
List
<
LogEvent
>
AllLogs
{
get
;
}
List
<
LogEvent
>
FailingLogs
{
get
;
}
bool
IgnoreFailingMessages
{
get
;
set
;
}
bool
IsNUnitException
{
get
;
}
bool
IsNUnitSuccessException
{
get
;
}
bool
IsNUnitInconclusiveException
{
get
;
}
bool
IsNUnitIgnoreException
{
get
;
}
string
NUnitExceptionMessage
{
get
;
}
void
AddLog
(
string
message
,
string
stacktrace
,
LogType
type
);
bool
AnyFailingLogs
();
void
ProcessExpectedLogs
();
void
NoUnexpectedReceived
();
}
}
using
System
;
using
System.Collections.Generic
;
namespace
UnityEngine.TestTools.Logging
{
internal
interface
ILogScope
:
IDisposable
{
Queue
<
LogMatch
>
ExpectedLogs
{
get
;
set
;
}
List
<
LogEvent
>
AllLogs
{
get
;
}
List
<
LogEvent
>
FailingLogs
{
get
;
}
bool
IgnoreFailingMessages
{
get
;
set
;
}
bool
IsNUnitException
{
get
;
}
bool
IsNUnitSuccessException
{
get
;
}
bool
IsNUnitInconclusiveException
{
get
;
}
bool
IsNUnitIgnoreException
{
get
;
}
string
NUnitExceptionMessage
{
get
;
}
void
AddLog
(
string
message
,
string
stacktrace
,
LogType
type
);
bool
AnyFailingLogs
();
void
ProcessExpectedLogs
();
void
NoUnexpectedReceived
();
}
}
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/Assertions/LogScope/ILogScope.cs.meta
View file @
af571a61
fileFormatVersion: 2
guid: 3504aa04cda851b44a65973f9aead6f7
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 3504aa04cda851b44a65973f9aead6f7
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/Assertions/LogScope/LogEvent.cs
View file @
af571a61
namespace
UnityEngine.TestTools.Logging
{
internal
class
LogEvent
{
public
string
Message
{
get
;
set
;
}
public
string
StackTrace
{
get
;
set
;
}
public
LogType
LogType
{
get
;
set
;
}
public
bool
IsHandled
{
get
;
set
;
}
public
override
string
ToString
()
{
return
string
.
Format
(
"[{0}] {1}"
,
LogType
,
Message
);
}
}
}
namespace
UnityEngine.TestTools.Logging
{
internal
class
LogEvent
{
public
string
Message
{
get
;
set
;
}
public
string
StackTrace
{
get
;
set
;
}
public
LogType
LogType
{
get
;
set
;
}
public
bool
IsHandled
{
get
;
set
;
}
public
override
string
ToString
()
{
return
string
.
Format
(
"[{0}] {1}"
,
LogType
,
Message
);
}
}
}
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/Assertions/LogScope/LogEvent.cs.meta
View file @
af571a61
fileFormatVersion: 2
guid: 0c56471f08a0f6846afc792f0b4205b9
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 0c56471f08a0f6846afc792f0b4205b9
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/Assertions/LogScope/LogMatch.cs
View file @
af571a61
using
System
;
using
System.Text.RegularExpressions
;
namespace
UnityEngine.TestTools.Logging
{
[
Serializable
]
internal
class
LogMatch
{
[
SerializeField
]
private
bool
m_UseRegex
;
[
SerializeField
]
private
string
m_Message
;
[
SerializeField
]
private
string
m_MessageRegex
;
[
SerializeField
]
private
string
m_LogType
;
public
string
Message
{
get
{
return
m_Message
;
}
set
{
m_Message
=
value
;
m_UseRegex
=
false
;
}
}
public
Regex
MessageRegex
{
get
{
if
(!
m_UseRegex
)
{
return
null
;
}
return
new
Regex
(
m_MessageRegex
);
}
set
{
if
(
value
!=
null
)
{
m_MessageRegex
=
value
.
ToString
();
m_UseRegex
=
true
;
}
else
{
m_MessageRegex
=
null
;
m_UseRegex
=
false
;
}
}
}
public
LogType
?
LogType
{
get
{
if
(!
string
.
IsNullOrEmpty
(
m_LogType
))
{
return
Enum
.
Parse
(
typeof
(
LogType
),
m_LogType
)
as
LogType
?
;
}
return
null
;
}
set
{
if
(
value
!=
null
)
{
m_LogType
=
value
.
Value
.
ToString
();
}
else
{
m_LogType
=
null
;
}
}
}
public
bool
Matches
(
LogEvent
log
)
{
if
(
LogType
!=
null
&&
LogType
!=
log
.
LogType
)
{
return
false
;
}
if
(
m_UseRegex
)
{
return
MessageRegex
.
IsMatch
(
log
.
Message
);
}
else
{
return
Message
.
Equals
(
log
.
Message
);
}
}
public
override
string
ToString
()
{
if
(
m_UseRegex
)
return
string
.
Format
(
"[{0}] Regex: {1}"
,
LogType
,
MessageRegex
);
else
return
string
.
Format
(
"[{0}] {1}"
,
LogType
,
Message
);
}
}
}
using
System
;
using
System.Text.RegularExpressions
;
namespace
UnityEngine.TestTools.Logging
{
[
Serializable
]
internal
class
LogMatch
{
[
SerializeField
]
private
bool
m_UseRegex
;
[
SerializeField
]
private
string
m_Message
;
[
SerializeField
]
private
string
m_MessageRegex
;
[
SerializeField
]
private
string
m_LogType
;
public
string
Message
{
get
{
return
m_Message
;
}
set
{
m_Message
=
value
;
m_UseRegex
=
false
;
}
}
public
Regex
MessageRegex
{
get
{
if
(!
m_UseRegex
)
{
return
null
;
}
return
new
Regex
(
m_MessageRegex
);
}
set
{
if
(
value
!=
null
)
{
m_MessageRegex
=
value
.
ToString
();
m_UseRegex
=
true
;
}
else
{
m_MessageRegex
=
null
;
m_UseRegex
=
false
;
}
}
}
public
LogType
?
LogType
{
get
{
if
(!
string
.
IsNullOrEmpty
(
m_LogType
))
{
return
Enum
.
Parse
(
typeof
(
LogType
),
m_LogType
)
as
LogType
?
;
}
return
null
;
}
set
{
if
(
value
!=
null
)
{
m_LogType
=
value
.
Value
.
ToString
();
}
else
{
m_LogType
=
null
;
}
}
}
public
bool
Matches
(
LogEvent
log
)
{
if
(
LogType
!=
null
&&
LogType
!=
log
.
LogType
)
{
return
false
;
}
if
(
m_UseRegex
)
{
return
MessageRegex
.
IsMatch
(
log
.
Message
);
}
else
{
return
Message
.
Equals
(
log
.
Message
);
}
}
public
override
string
ToString
()
{
if
(
m_UseRegex
)
return
string
.
Format
(
"[{0}] Regex: {1}"
,
LogType
,
MessageRegex
);
else
return
string
.
Format
(
"[{0}] {1}"
,
LogType
,
Message
);
}
}
}
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/Assertions/LogScope/LogMatch.cs.meta
View file @
af571a61
fileFormatVersion: 2
guid: 9945ffed4692c6044b6d3acf81efd694
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 9945ffed4692c6044b6d3acf81efd694
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/Assertions/LogScope/LogScope.cs
View file @
af571a61
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
UnityEngine.TestTools.TestRunner
;
namespace
UnityEngine.TestTools.Logging
{
sealed
class
LogScope
:
ILogScope
{
static
List
<
LogScope
>
s_ActiveScopes
=
new
List
<
LogScope
>();
readonly
object
m_Lock
=
new
object
();
bool
m_Disposed
;
bool
m_NeedToProcessLogs
;
public
Queue
<
LogMatch
>
ExpectedLogs
{
get
;
set
;
}
public
List
<
LogEvent
>
AllLogs
{
get
;
}
public
List
<
LogEvent
>
FailingLogs
{
get
;
}
public
bool
IgnoreFailingMessages
{
get
;
set
;
}
public
bool
IsNUnitException
{
get
;
private
set
;
}
public
bool
IsNUnitSuccessException
{
get
;
private
set
;
}
public
bool
IsNUnitInconclusiveException
{
get
;
private
set
;
}
public
bool
IsNUnitIgnoreException
{
get
;
private
set
;
}
public
string
NUnitExceptionMessage
{
get
;
private
set
;
}
public
static
LogScope
Current
{
get
{
if
(
s_ActiveScopes
.
Count
==
0
)
throw
new
InvalidOperationException
(
"No log scope is available"
);
return
s_ActiveScopes
[
0
];
}
}
public
static
bool
HasCurrentLogScope
()
{
return
s_ActiveScopes
.
Count
>
0
;
}
public
LogScope
()
{
AllLogs
=
new
List
<
LogEvent
>();
FailingLogs
=
new
List
<
LogEvent
>();
ExpectedLogs
=
new
Queue
<
LogMatch
>();
IgnoreFailingMessages
=
false
;
Activate
();
}
void
Activate
()
{
s_ActiveScopes
.
Insert
(
0
,
this
);
RegisterScope
(
this
);
Application
.
logMessageReceivedThreaded
-=
AddLog
;
Application
.
logMessageReceivedThreaded
+=
AddLog
;
}
void
Deactivate
()
{
Application
.
logMessageReceivedThreaded
-=
AddLog
;
s_ActiveScopes
.
Remove
(
this
);
UnregisterScope
(
this
);
}
static
void
RegisterScope
(
LogScope
logScope
)
{
Application
.
logMessageReceivedThreaded
+=
logScope
.
AddLog
;
}
static
void
UnregisterScope
(
LogScope
logScope
)
{
Application
.
logMessageReceivedThreaded
-=
logScope
.
AddLog
;
}
public
void
AddLog
(
string
message
,
string
stacktrace
,
LogType
type
)
{
lock
(
m_Lock
)
{
m_NeedToProcessLogs
=
true
;
var
log
=
new
LogEvent
{
LogType
=
type
,
Message
=
message
,
StackTrace
=
stacktrace
,
};
AllLogs
.
Add
(
log
);
if
(
IsNUnitResultStateException
(
stacktrace
,
type
))
{
if
(
message
.
StartsWith
(
"SuccessException"
))
{
IsNUnitException
=
true
;
IsNUnitSuccessException
=
true
;
if
(
message
.
StartsWith
(
"SuccessException: "
))
{
NUnitExceptionMessage
=
message
.
Substring
(
"SuccessException: "
.
Length
);
return
;
}
}
else
if
(
message
.
StartsWith
(
"InconclusiveException"
))
{
IsNUnitException
=
true
;
IsNUnitInconclusiveException
=
true
;
if
(
message
.
StartsWith
(
"InconclusiveException: "
))
{
NUnitExceptionMessage
=
message
.
Substring
(
"InconclusiveException: "
.
Length
);
return
;
}
}
else
if
(
message
.
StartsWith
(
"IgnoreException"
))
{
IsNUnitException
=
true
;
IsNUnitIgnoreException
=
true
;
if
(
message
.
StartsWith
(
"IgnoreException: "
))
{
NUnitExceptionMessage
=
message
.
Substring
(
"IgnoreException: "
.
Length
);
return
;
}
}
}
if
(
IsFailingLog
(
type
)
&&
!
IgnoreFailingMessages
)
{
FailingLogs
.
Add
(
log
);
}
}
}
static
bool
IsNUnitResultStateException
(
string
stacktrace
,
LogType
logType
)
{
if
(
logType
!=
LogType
.
Exception
)
return
false
;
return
string
.
IsNullOrEmpty
(
stacktrace
)
||
stacktrace
.
StartsWith
(
"NUnit.Framework.Assert."
);
}
static
bool
IsFailingLog
(
LogType
type
)
{
switch
(
type
)
{
case
LogType
.
Assert
:
case
LogType
.
Error
:
case
LogType
.
Exception
:
return
true
;
default
:
return
false
;
}
}
public
void
Dispose
()
{
Dispose
(
true
);
GC
.
SuppressFinalize
(
this
);
}
void
Dispose
(
bool
disposing
)
{
if
(
m_Disposed
)
{
return
;
}
m_Disposed
=
true
;
if
(
disposing
)
{
Deactivate
();
}
}
public
bool
AnyFailingLogs
()
{
ProcessExpectedLogs
();
return
FailingLogs
.
Any
();
}
public
void
ProcessExpectedLogs
()
{
lock
(
m_Lock
)
{
if
(!
m_NeedToProcessLogs
||
!
ExpectedLogs
.
Any
())
return
;
LogMatch
expectedLog
=
null
;
foreach
(
var
logEvent
in
AllLogs
)
{
if
(!
ExpectedLogs
.
Any
())
break
;
if
(
expectedLog
==
null
&&
ExpectedLogs
.
Any
())
expectedLog
=
ExpectedLogs
.
Peek
();
if
(
expectedLog
!=
null
&&
expectedLog
.
Matches
(
logEvent
))
{
ExpectedLogs
.
Dequeue
();
logEvent
.
IsHandled
=
true
;
if
(
FailingLogs
.
Any
(
expectedLog
.
Matches
))
{
var
failingLog
=
FailingLogs
.
First
(
expectedLog
.
Matches
);
FailingLogs
.
Remove
(
failingLog
);
}
expectedLog
=
null
;
}
}
m_NeedToProcessLogs
=
false
;
}
}
public
void
NoUnexpectedReceived
()
{
lock
(
m_Lock
)
{
ProcessExpectedLogs
();
var
unhandledLog
=
AllLogs
.
FirstOrDefault
(
x
=>
!
x
.
IsHandled
);
if
(
unhandledLog
!=
null
)
{
throw
new
UnhandledLogMessageException
(
unhandledLog
);
}
}
}
}
}
using
System
;
using
System.Collections.Generic
;
using
System.Linq
;
using
UnityEngine.TestTools.TestRunner
;
namespace
UnityEngine.TestTools.Logging
{
sealed
class
LogScope
:
ILogScope
{
static
List
<
LogScope
>
s_ActiveScopes
=
new
List
<
LogScope
>();
readonly
object
m_Lock
=
new
object
();
bool
m_Disposed
;
bool
m_NeedToProcessLogs
;
public
Queue
<
LogMatch
>
ExpectedLogs
{
get
;
set
;
}
public
List
<
LogEvent
>
AllLogs
{
get
;
}
public
List
<
LogEvent
>
FailingLogs
{
get
;
}
public
bool
IgnoreFailingMessages
{
get
;
set
;
}
public
bool
IsNUnitException
{
get
;
private
set
;
}
public
bool
IsNUnitSuccessException
{
get
;
private
set
;
}
public
bool
IsNUnitInconclusiveException
{
get
;
private
set
;
}
public
bool
IsNUnitIgnoreException
{
get
;
private
set
;
}
public
string
NUnitExceptionMessage
{
get
;
private
set
;
}
public
static
LogScope
Current
{
get
{
if
(
s_ActiveScopes
.
Count
==
0
)
throw
new
InvalidOperationException
(
"No log scope is available"
);
return
s_ActiveScopes
[
0
];
}
}
public
static
bool
HasCurrentLogScope
()
{
return
s_ActiveScopes
.
Count
>
0
;
}
public
LogScope
()
{
AllLogs
=
new
List
<
LogEvent
>();
FailingLogs
=
new
List
<
LogEvent
>();
ExpectedLogs
=
new
Queue
<
LogMatch
>();
IgnoreFailingMessages
=
false
;
Activate
();
}
void
Activate
()
{
s_ActiveScopes
.
Insert
(
0
,
this
);
RegisterScope
(
this
);
Application
.
logMessageReceivedThreaded
-=
AddLog
;
Application
.
logMessageReceivedThreaded
+=
AddLog
;
}
void
Deactivate
()
{
Application
.
logMessageReceivedThreaded
-=
AddLog
;
s_ActiveScopes
.
Remove
(
this
);
UnregisterScope
(
this
);
}
static
void
RegisterScope
(
LogScope
logScope
)
{
Application
.
logMessageReceivedThreaded
+=
logScope
.
AddLog
;
}
static
void
UnregisterScope
(
LogScope
logScope
)
{
Application
.
logMessageReceivedThreaded
-=
logScope
.
AddLog
;
}
public
void
AddLog
(
string
message
,
string
stacktrace
,
LogType
type
)
{
lock
(
m_Lock
)
{
m_NeedToProcessLogs
=
true
;
var
log
=
new
LogEvent
{
LogType
=
type
,
Message
=
message
,
StackTrace
=
stacktrace
,
};
AllLogs
.
Add
(
log
);
if
(
IsNUnitResultStateException
(
stacktrace
,
type
))
{
if
(
message
.
StartsWith
(
"SuccessException"
))
{
IsNUnitException
=
true
;
IsNUnitSuccessException
=
true
;
if
(
message
.
StartsWith
(
"SuccessException: "
))
{
NUnitExceptionMessage
=
message
.
Substring
(
"SuccessException: "
.
Length
);
return
;
}
}
else
if
(
message
.
StartsWith
(
"InconclusiveException"
))
{
IsNUnitException
=
true
;
IsNUnitInconclusiveException
=
true
;
if
(
message
.
StartsWith
(
"InconclusiveException: "
))
{
NUnitExceptionMessage
=
message
.
Substring
(
"InconclusiveException: "
.
Length
);
return
;
}
}
else
if
(
message
.
StartsWith
(
"IgnoreException"
))
{
IsNUnitException
=
true
;
IsNUnitIgnoreException
=
true
;
if
(
message
.
StartsWith
(
"IgnoreException: "
))
{
NUnitExceptionMessage
=
message
.
Substring
(
"IgnoreException: "
.
Length
);
return
;
}
}
}
if
(
IsFailingLog
(
type
)
&&
!
IgnoreFailingMessages
)
{
FailingLogs
.
Add
(
log
);
}
}
}
static
bool
IsNUnitResultStateException
(
string
stacktrace
,
LogType
logType
)
{
if
(
logType
!=
LogType
.
Exception
)
return
false
;
return
string
.
IsNullOrEmpty
(
stacktrace
)
||
stacktrace
.
StartsWith
(
"NUnit.Framework.Assert."
);
}
static
bool
IsFailingLog
(
LogType
type
)
{
switch
(
type
)
{
case
LogType
.
Assert
:
case
LogType
.
Error
:
case
LogType
.
Exception
:
return
true
;
default
:
return
false
;
}
}
public
void
Dispose
()
{
Dispose
(
true
);
GC
.
SuppressFinalize
(
this
);
}
void
Dispose
(
bool
disposing
)
{
if
(
m_Disposed
)
{
return
;
}
m_Disposed
=
true
;
if
(
disposing
)
{
Deactivate
();
}
}
public
bool
AnyFailingLogs
()
{
ProcessExpectedLogs
();
return
FailingLogs
.
Any
();
}
public
void
ProcessExpectedLogs
()
{
lock
(
m_Lock
)
{
if
(!
m_NeedToProcessLogs
||
!
ExpectedLogs
.
Any
())
return
;
LogMatch
expectedLog
=
null
;
foreach
(
var
logEvent
in
AllLogs
)
{
if
(!
ExpectedLogs
.
Any
())
break
;
if
(
expectedLog
==
null
&&
ExpectedLogs
.
Any
())
expectedLog
=
ExpectedLogs
.
Peek
();
if
(
expectedLog
!=
null
&&
expectedLog
.
Matches
(
logEvent
))
{
ExpectedLogs
.
Dequeue
();
logEvent
.
IsHandled
=
true
;
if
(
FailingLogs
.
Any
(
expectedLog
.
Matches
))
{
var
failingLog
=
FailingLogs
.
First
(
expectedLog
.
Matches
);
FailingLogs
.
Remove
(
failingLog
);
}
expectedLog
=
null
;
}
}
m_NeedToProcessLogs
=
false
;
}
}
public
void
NoUnexpectedReceived
()
{
lock
(
m_Lock
)
{
ProcessExpectedLogs
();
var
unhandledLog
=
AllLogs
.
FirstOrDefault
(
x
=>
!
x
.
IsHandled
);
if
(
unhandledLog
!=
null
)
{
throw
new
UnhandledLogMessageException
(
unhandledLog
);
}
}
}
}
}
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/Assertions/LogScope/LogScope.cs.meta
View file @
af571a61
fileFormatVersion: 2
guid: 4bbc17b35884fdf468e4b52ae4222882
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 4bbc17b35884fdf468e4b52ae4222882
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/Assertions/UnexpectedLogMessageException.cs
View file @
af571a61
using
NUnit.Framework
;
using
NUnit.Framework.Interfaces
;
using
UnityEngine.TestTools.Logging
;
namespace
UnityEngine.TestTools.TestRunner
{
internal
class
UnexpectedLogMessageException
:
ResultStateException
{
public
LogMatch
LogEvent
;
public
UnexpectedLogMessageException
(
LogMatch
log
)
:
base
(
BuildMessage
(
log
))
{
LogEvent
=
log
;
}
private
static
string
BuildMessage
(
LogMatch
log
)
{
return
string
.
Format
(
"Expected log did not appear: {0}"
,
log
);
}
public
override
ResultState
ResultState
{
get
{
return
ResultState
.
Failure
;
}
}
public
override
string
StackTrace
{
get
{
return
null
;
}
}
}
}
using
NUnit.Framework
;
using
NUnit.Framework.Interfaces
;
using
UnityEngine.TestTools.Logging
;
namespace
UnityEngine.TestTools.TestRunner
{
internal
class
UnexpectedLogMessageException
:
ResultStateException
{
public
LogMatch
LogEvent
;
public
UnexpectedLogMessageException
(
LogMatch
log
)
:
base
(
BuildMessage
(
log
))
{
LogEvent
=
log
;
}
private
static
string
BuildMessage
(
LogMatch
log
)
{
return
string
.
Format
(
"Expected log did not appear: {0}"
,
log
);
}
public
override
ResultState
ResultState
{
get
{
return
ResultState
.
Failure
;
}
}
public
override
string
StackTrace
{
get
{
return
null
;
}
}
}
}
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/Assertions/UnexpectedLogMessageException.cs.meta
View file @
af571a61
fileFormatVersion: 2
guid: 5b2eeca598284bd4abb4a15c30df1576
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 5b2eeca598284bd4abb4a15c30df1576
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/Assertions/UnhandledLogMessageException.cs
View file @
af571a61
using
NUnit.Framework
;
using
NUnit.Framework.Interfaces
;
using
UnityEngine.TestTools.Logging
;
using
UnityEngine.TestTools.Utils
;
namespace
UnityEngine.TestTools.TestRunner
{
internal
class
UnhandledLogMessageException
:
ResultStateException
{
public
LogEvent
LogEvent
;
private
readonly
string
m_CustomStackTrace
;
public
UnhandledLogMessageException
(
LogEvent
log
)
:
base
(
BuildMessage
(
log
))
{
LogEvent
=
log
;
m_CustomStackTrace
=
StackTraceFilter
.
Filter
(
log
.
StackTrace
);
}
private
static
string
BuildMessage
(
LogEvent
log
)
{
return
string
.
Format
(
"Unhandled log message: '{0}'. Use UnityEngine.TestTools.LogAssert.Expect"
,
log
);
}
public
override
ResultState
ResultState
{
get
{
return
ResultState
.
Failure
;
}
}
public
override
string
StackTrace
{
get
{
return
m_CustomStackTrace
;
}
}
}
}
using
NUnit.Framework
;
using
NUnit.Framework.Interfaces
;
using
UnityEngine.TestTools.Logging
;
using
UnityEngine.TestTools.Utils
;
namespace
UnityEngine.TestTools.TestRunner
{
internal
class
UnhandledLogMessageException
:
ResultStateException
{
public
LogEvent
LogEvent
;
private
readonly
string
m_CustomStackTrace
;
public
UnhandledLogMessageException
(
LogEvent
log
)
:
base
(
BuildMessage
(
log
))
{
LogEvent
=
log
;
m_CustomStackTrace
=
StackTraceFilter
.
Filter
(
log
.
StackTrace
);
}
private
static
string
BuildMessage
(
LogEvent
log
)
{
return
string
.
Format
(
"Unhandled log message: '{0}'. Use UnityEngine.TestTools.LogAssert.Expect"
,
log
);
}
public
override
ResultState
ResultState
{
get
{
return
ResultState
.
Failure
;
}
}
public
override
string
StackTrace
{
get
{
return
m_CustomStackTrace
;
}
}
}
}
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/Assertions/UnhandledLogMessageException.cs.meta
View file @
af571a61
fileFormatVersion: 2
guid: a8ed4063f2beecd41a234a582202f3c4
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: a8ed4063f2beecd41a234a582202f3c4
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/Assertions/UnityTestTimeoutException.cs
View file @
af571a61
using
NUnit.Framework
;
using
NUnit.Framework.Interfaces
;
namespace
UnityEngine.TestTools.TestRunner
{
internal
class
UnityTestTimeoutException
:
ResultStateException
{
public
UnityTestTimeoutException
(
int
timeout
)
:
base
(
BuildMessage
(
timeout
))
{
}
private
static
string
BuildMessage
(
int
timeout
)
{
return
string
.
Format
(
"UnityTest exceeded Timeout value of {0}ms"
,
timeout
);
}
public
override
ResultState
ResultState
{
get
{
return
ResultState
.
Failure
;
}
}
public
override
string
StackTrace
{
get
{
return
""
;
}
}
}
}
using
NUnit.Framework
;
using
NUnit.Framework.Interfaces
;
namespace
UnityEngine.TestTools.TestRunner
{
internal
class
UnityTestTimeoutException
:
ResultStateException
{
public
UnityTestTimeoutException
(
int
timeout
)
:
base
(
BuildMessage
(
timeout
))
{
}
private
static
string
BuildMessage
(
int
timeout
)
{
return
string
.
Format
(
"UnityTest exceeded Timeout value of {0}ms"
,
timeout
);
}
public
override
ResultState
ResultState
{
get
{
return
ResultState
.
Failure
;
}
}
public
override
string
StackTrace
{
get
{
return
""
;
}
}
}
}
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/Assertions/UnityTestTimeoutException.cs.meta
View file @
af571a61
fileFormatVersion: 2
guid: ffb335140c799c4408411d81789fb05c
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: ffb335140c799c4408411d81789fb05c
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/NUnitExtensions.meta
View file @
af571a61
fileFormatVersion: 2
guid: 3e8d6af343b383544ba5743d119f4062
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 3e8d6af343b383544ba5743d119f4062
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/NUnitExtensions/ActionDelegator.cs
View file @
af571a61
using
System
;
using
System.Linq
;
using
UnityEngine.TestRunner.NUnitExtensions.Runner
;
using
UnityEngine.TestTools.Logging
;
using
UnityEngine.TestTools.TestRunner
;
namespace
UnityEngine.TestTools.NUnitExtensions
{
/// <summary>
/// This class delegates actions from the NUnit thread that should be executed on the main thread.
/// NUnit thread calls Delegate which blocks the execution on the thread until the action is executed.
/// The main thread will poll for awaiting actions (HasAction) and invoke them (Execute).
/// Once the action is executed, the main thread releases the lock and executino on the NUnit thread is continued.
/// </summary>
internal
class
ActionDelegator
:
BaseDelegator
{
private
Func
<
object
>
m_Action
;
public
object
Delegate
(
Action
action
)
{
return
Delegate
(()
=>
{
action
();
return
null
;
});
}
public
object
Delegate
(
Func
<
object
>
action
)
{
if
(
m_Aborted
)
{
return
null
;
}
AssertState
();
m_Context
=
UnityTestExecutionContext
.
CurrentContext
;
m_Signal
.
Reset
();
m_Action
=
action
;
WaitForSignal
();
return
HandleResult
();
}
private
void
AssertState
()
{
if
(
m_Action
!=
null
)
{
throw
new
Exception
(
"Action not executed yet"
);
}
}
public
bool
HasAction
()
{
return
m_Action
!=
null
;
}
public
void
Execute
(
LogScope
logScope
)
{
try
{
SetCurrentTestContext
();
m_Result
=
m_Action
();
if
(
logScope
.
AnyFailingLogs
())
{
var
failingLog
=
logScope
.
FailingLogs
.
First
();
throw
new
UnhandledLogMessageException
(
failingLog
);
}
if
(
logScope
.
ExpectedLogs
.
Any
())
throw
new
UnexpectedLogMessageException
(
LogScope
.
Current
.
ExpectedLogs
.
Peek
());
}
catch
(
Exception
e
)
{
m_Exception
=
e
;
}
finally
{
m_Action
=
null
;
m_Signal
.
Set
();
}
}
}
}
using
System
;
using
System.Linq
;
using
UnityEngine.TestRunner.NUnitExtensions.Runner
;
using
UnityEngine.TestTools.Logging
;
using
UnityEngine.TestTools.TestRunner
;
namespace
UnityEngine.TestTools.NUnitExtensions
{
/// <summary>
/// This class delegates actions from the NUnit thread that should be executed on the main thread.
/// NUnit thread calls Delegate which blocks the execution on the thread until the action is executed.
/// The main thread will poll for awaiting actions (HasAction) and invoke them (Execute).
/// Once the action is executed, the main thread releases the lock and executino on the NUnit thread is continued.
/// </summary>
internal
class
ActionDelegator
:
BaseDelegator
{
private
Func
<
object
>
m_Action
;
public
object
Delegate
(
Action
action
)
{
return
Delegate
(()
=>
{
action
();
return
null
;
});
}
public
object
Delegate
(
Func
<
object
>
action
)
{
if
(
m_Aborted
)
{
return
null
;
}
AssertState
();
m_Context
=
UnityTestExecutionContext
.
CurrentContext
;
m_Signal
.
Reset
();
m_Action
=
action
;
WaitForSignal
();
return
HandleResult
();
}
private
void
AssertState
()
{
if
(
m_Action
!=
null
)
{
throw
new
Exception
(
"Action not executed yet"
);
}
}
public
bool
HasAction
()
{
return
m_Action
!=
null
;
}
public
void
Execute
(
LogScope
logScope
)
{
try
{
SetCurrentTestContext
();
m_Result
=
m_Action
();
if
(
logScope
.
AnyFailingLogs
())
{
var
failingLog
=
logScope
.
FailingLogs
.
First
();
throw
new
UnhandledLogMessageException
(
failingLog
);
}
if
(
logScope
.
ExpectedLogs
.
Any
())
throw
new
UnexpectedLogMessageException
(
LogScope
.
Current
.
ExpectedLogs
.
Peek
());
}
catch
(
Exception
e
)
{
m_Exception
=
e
;
}
finally
{
m_Action
=
null
;
m_Signal
.
Set
();
}
}
}
}
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/NUnitExtensions/ActionDelegator.cs.meta
View file @
af571a61
fileFormatVersion: 2
guid: 4f939b9e23a0946439b812551e07ac81
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 4f939b9e23a0946439b812551e07ac81
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/NUnitExtensions/Attributes.meta
View file @
af571a61
fileFormatVersion: 2
guid: 0cb14878543cf3d4f8472b15f7ecf0e3
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 0cb14878543cf3d4f8472b15f7ecf0e3
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
MathTec/Library/PackageCache/com.unity.test-framework@1.1.14/UnityEngine.TestRunner/NUnitExtensions/Attributes/ConditionalIgnoreAttribute.cs
View file @
af571a61
using
System.Collections.Generic
;
using
NUnit.Framework
;
using
NUnit.Framework.Interfaces
;
using
NUnit.Framework.Internal
;
namespace
UnityEngine.TestTools
{
public
class
ConditionalIgnoreAttribute
:
NUnitAttribute
,
IApplyToTest
{
string
m_ConditionKey
;
string
m_IgnoreReason
;
public
ConditionalIgnoreAttribute
(
string
conditionKey
,
string
ignoreReason
)
{
m_ConditionKey
=
conditionKey
;
m_IgnoreReason
=
ignoreReason
;
}
public
void
ApplyToTest
(
Test
test
)
{
var
key
=
m_ConditionKey
.
ToLowerInvariant
();
if
(
m_ConditionMap
.
ContainsKey
(
key
)
&&
m_ConditionMap
[
key
])
{
test
.
RunState
=
RunState
.
Ignored
;
string
skipReason
=
string
.
Format
(
m_IgnoreReason
);
test
.
Properties
.
Add
(
PropertyNames
.
SkipReason
,
skipReason
);
}
}
static
Dictionary
<
string
,
bool
>
m_ConditionMap
=
new
Dictionary
<
string
,
bool
>();
public
static
void
AddConditionalIgnoreMapping
(
string
key
,
bool
value
)
{
m_ConditionMap
.
Add
(
key
.
ToLowerInvariant
(),
value
);
}
}
using
System.Collections.Generic
;
using
NUnit.Framework
;
using
NUnit.Framework.Interfaces
;
using
NUnit.Framework.Internal
;
namespace
UnityEngine.TestTools
{
public
class
ConditionalIgnoreAttribute
:
NUnitAttribute
,
IApplyToTest
{
string
m_ConditionKey
;
string
m_IgnoreReason
;
public
ConditionalIgnoreAttribute
(
string
conditionKey
,
string
ignoreReason
)
{
m_ConditionKey
=
conditionKey
;
m_IgnoreReason
=
ignoreReason
;
}
public
void
ApplyToTest
(
Test
test
)
{
var
key
=
m_ConditionKey
.
ToLowerInvariant
();
if
(
m_ConditionMap
.
ContainsKey
(
key
)
&&
m_ConditionMap
[
key
])
{
test
.
RunState
=
RunState
.
Ignored
;
string
skipReason
=
string
.
Format
(
m_IgnoreReason
);
test
.
Properties
.
Add
(
PropertyNames
.
SkipReason
,
skipReason
);
}
}
static
Dictionary
<
string
,
bool
>
m_ConditionMap
=
new
Dictionary
<
string
,
bool
>();
public
static
void
AddConditionalIgnoreMapping
(
string
key
,
bool
value
)
{
m_ConditionMap
.
Add
(
key
.
ToLowerInvariant
(),
value
);
}
}
}
\ No newline at end of file
Prev
1
…
28
29
30
31
32
33
34
35
36
…
38
Next
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment