}
}
-#if !NET_2_1
+#if !MOBILE
class ProcessTester: ITester
{
ProcessStartInfo pi;
string[] test_args;
if (test.CompilerOptions != null) {
- test_args = new string[2 + test.CompilerOptions.Length];
+ test_args = new string[1 + test.CompilerOptions.Length];
test.CompilerOptions.CopyTo (test_args, 0);
} else {
- test_args = new string[2];
+ test_args = new string[1];
}
- test_args[test_args.Length - 2] = test_args[0];
- test_args[test_args.Length - 1] = "-debug";
+ test_args[test_args.Length - 1] = test_args[0];
test_args[0] = test.FileName;
return tester.Invoke (test_args);
log_file.WriteLine (msg, rest);
}
- public void LogFileLine (string file, string msg, params object [] args)
+ public void LogFileLine (string file, string msg)
{
- string s = verbose ?
- string.Format (msg, args) :
- file + "...\t" + string.Format (msg, args);
+ string s = verbose ? msg : file + "...\t" + msg;
Console.WriteLine (s);
if (log_file != null)
bool update_verif_file;
Hashtable verif_data;
-#if !NET_2_1
+#if !MOBILE
ProcessStartInfo pi;
#endif
readonly string mono;
files_folder = Directory.GetCurrentDirectory ();
this.verif_file = verif_file;
-#if !NET_2_1
+#if !MOBILE
pi = new ProcessStartInfo ();
pi.CreateNoWindow = true;
pi.WindowStyle = ProcessWindowStyle.Hidden;
if (md.MethodAttributes != (int) mi.Attributes) {
checker.HandleFailure (test.FileName, PositiveChecker.TestResult.MethodAttributesError,
- string.Format ("{0} ({1} -> {2})", decl_type + ": " + m_name, md.MethodAttributes, mi.Attributes));
+ string.Format ("{0} ({1} -> {2})", decl_type + ": " + m_name, (MethodAttributes) md.MethodAttributes, mi.Attributes));
}
md.MethodAttributes = (int) mi.Attributes;
return true;
if (md.ILSize > il_size) {
- checker.LogFileLine (test.FileName, "{0} (code size reduction {1} -> {2})", decl_type + ": " + m_name, md.ILSize, il_size);
+ checker.LogFileLine (test.FileName, string.Format ("{0} (code size reduction {1} -> {2})", decl_type + ": " + m_name, md.ILSize, il_size));
md.ILSize = il_size;
return true;
}
string filename = test.FileName;
AppDomain domain = null;
-#if !NET_2_1
+#if !MOBILE
if (safe_execution) {
// Create a new AppDomain, with the current directory as the base.
AppDomainSetup setupInfo = new AppDomainSetup ();
try {
DomainTester tester;
try {
-#if !NET_2_1
+#if !MOBILE
if (domain != null)
tester = (DomainTester) domain.CreateInstanceAndUnwrap (typeof (PositiveChecker).Assembly.FullName, typeof (DomainTester).FullName);
else
if (doc_output != null) {
string ref_file = filename.Replace (".cs", "-ref.xml");
try {
-#if !NET_2_1
+#if !MOBILE
new XmlComparer ("doc").Compare (ref_file, doc_output);
#endif
} catch (Exception e) {
static bool TryToMatchErrorMessage (string actual, string expected)
{
- var path_mask_start = expected.IndexOf ("*PATH*");
+ actual = actual.Replace ("\\", "/");
+ var path_mask_start = expected.IndexOf ("*PATH*", StringComparison.Ordinal);
if (path_mask_start > 0 && actual.Length > path_mask_start) {
- var path_mask_continue = expected.Substring (path_mask_start + 6);
- var expected_continue = actual.IndexOf (path_mask_continue, path_mask_start);
- if (expected_continue > 0) {
- var path = actual.Substring (path_mask_start, expected_continue - path_mask_start);
- if (actual == expected.Replace ("*PATH*", path))
- return true;
-
- throw new ApplicationException (expected.Replace ("*PATH*", path));
+ var parts = expected.Split (new [] { "*PATH*" }, StringSplitOptions.None);
+ foreach (var part in parts) {
+ if (!actual.Contains (part))
+ return false;
}
+
+ return true;
}
return false;