public void CreateBuildWithReportMarker() { MobileBuildReportSettingsManager.settings.LabelBuildsEnabled = true; MobileBuildReportSettingsManager.settings.ShowReport = false; PlayerSettings.SetScriptingBackend(BuildPipeline.GetBuildTargetGroup(Target), ScriptingRuntime); PreBuildSetup(); var unityReport = BuildPipeline.BuildPlayer(new string[] { "Assets/MobileReportScene.unity" }, BuildLocation, Target, Options); PostBuildCleanup(); ReportLocation = Path.Combine(ArtifactDirectory, "report.json"); Report = MobileBuildReportHelper.Generate(unityReport.summary.outputPath, ReportLocation); }
public void ReportDeserializesCorrectly() { var loadedReport = MobileBuildReport.Load(ReportLocation); Assert.AreEqual(Report.Platform.ToString(), loadedReport.Platform.ToString()); Assert.AreEqual(Report.Options.ToString(), Report.Options.ToString()); Assert.AreEqual(Report.OutputPath, loadedReport.OutputPath); Assert.AreEqual(Report.BuildEndedAt, loadedReport.BuildEndedAt); Assert.AreEqual(Report.BuildStartedAt, loadedReport.BuildStartedAt); Assert.AreEqual(Report.TotalTime, loadedReport.TotalTime); Assert.AreEqual(Report.TotalSize, loadedReport.TotalSize); for (int i = 0; i < Report.PlatformData.Length; i++) { Assert.AreEqual(Report.PlatformData[i].Architecture, loadedReport.PlatformData[i].Architecture); Assert.AreEqual(Report.PlatformData[i].DownloadSize, loadedReport.PlatformData[i].DownloadSize); if (Report.PlatformData[i].Segments != null) { foreach (var item in Report.PlatformData[i].Segments) { Assert.That(loadedReport.PlatformData[i].Segments.ContainsKey(item.Key)); Assert.AreEqual(loadedReport.PlatformData[i].Segments[item.Key], Report.PlatformData[i].Segments[item.Key]); } } } for (var i = 0; i < Report.Assets.Length; i++) { Assert.AreEqual(Report.Assets[i].DataPath, loadedReport.Assets[i].DataPath); Assert.AreEqual(Report.Assets[i].Overhead, loadedReport.Assets[i].Overhead); for (var j = 0; j < Report.Assets[i].Contents.Length; j++) { Assert.AreEqual(Report.Assets[i].Contents[j].Id, loadedReport.Assets[i].Contents[j].Id); Assert.AreEqual(Report.Assets[i].Contents[j].Offset, loadedReport.Assets[i].Contents[j].Offset); Assert.AreEqual(Report.Assets[i].Contents[j].Size, loadedReport.Assets[i].Contents[j].Size); Assert.AreEqual(Report.Assets[i].Contents[j].EstimatedSize, loadedReport.Assets[i].Contents[j].EstimatedSize); Assert.AreEqual(Report.Assets[i].Contents[j].SourceAssetGUID, loadedReport.Assets[i].Contents[j].SourceAssetGUID); Assert.AreEqual(Report.Assets[i].Contents[j].SourceAssetPath, loadedReport.Assets[i].Contents[j].SourceAssetPath); Assert.AreEqual(Report.Assets[i].Contents[j].Type, loadedReport.Assets[i].Contents[j].Type); } } }