diff options
Diffstat (limited to 'Xamarin.Forms.Core.iOS.UITests/Utilities/Logger.cs')
-rw-r--r-- | Xamarin.Forms.Core.iOS.UITests/Utilities/Logger.cs | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/Xamarin.Forms.Core.iOS.UITests/Utilities/Logger.cs b/Xamarin.Forms.Core.iOS.UITests/Utilities/Logger.cs new file mode 100644 index 00000000..ed0041ae --- /dev/null +++ b/Xamarin.Forms.Core.iOS.UITests/Utilities/Logger.cs @@ -0,0 +1,71 @@ +using System; +using System.IO; +using System.Reflection; + +using Xamarin.UITest.Queries; + +namespace Xamarin.Forms.Core.UITests +{ + internal static class Logger + { + static StreamWriter queryWriter; + + public static void Init () + { + queryWriter = new StreamWriter ("../../Xamarin.Forms.Core-UITest-queries.log", false); + } + + public static void Log (string text) + { + queryWriter.Write (text); + } + + public static void LogLine (string text = "") + { + queryWriter.WriteLine (text); + } + + public static void Close () + { + queryWriter.Flush (); + queryWriter.Close (); + } + + public static void LogQueryResult (AppResult[] resultsForQuery) + { + foreach (AppResult result in resultsForQuery) + WriteAppResult (result); + } + + static void WriteAppResult (AppResult appResult) + { + var classText = string.Format (" {0, -10} : {1}", "Class", appResult.Class); + var descriptionText = string.Format (" {0, -10} : {1}", "Description", appResult.Description); + var enabledText = string.Format (" {0, -10} : {1}", "Enabled", appResult.Enabled); + var idText = string.Format (" {0, -10} : {1}", "Id", appResult.Id); + var labelText = string.Format (" {0, -10} : {1}", "Label", appResult.Id); + var textText = string.Format (" {0, -10} : {1}", "Text", appResult.Text); + + var rectText = string.Format (" {0, -10}", "Rect"); + var rectContentsText = string.Format (" [X:{0} Y:{1} W:{2} H:{3}] [CX:{4} CY:{5}]", + appResult.Rect.X, + appResult.Rect.Y, + appResult.Rect.Width, + appResult.Rect.Height, + appResult.Rect.CenterX, + appResult.Rect.CenterY + ); + + queryWriter.WriteLine (classText); + queryWriter.WriteLine (descriptionText); + queryWriter.WriteLine (enabledText); + queryWriter.WriteLine (idText); + queryWriter.WriteLine (labelText); + queryWriter.WriteLine (textText); + queryWriter.WriteLine (rectText); + queryWriter.WriteLine (rectContentsText); + queryWriter.WriteLine(); + } + + } +}
\ No newline at end of file |