private BuildViewModel ConvertToViewModel(Build build, BuildViewModel buildVm) { if (buildVm == null) { buildVm = new BuildViewModel(); } // if the view model has already been set to finished, do not change any properties. if (buildVm.FinishedDateTime.HasValue) { return(buildVm); } buildVm.Id = build.Id; buildVm.Project = build.Project.Name; buildVm.Definition = build.Definition.Name; buildVm.RequestedBy = build.RequestedBy?.DisplayName; buildVm.RequestedFor = build.RequestedFor?.DisplayName; buildVm.RequestedByShort = build.RequestedBy?.UniqueName; buildVm.RequestedForShort = build.RequestedFor?.UniqueName; buildVm.QueuedDateTime = build.QueueTime.ToLocalTime().DateTime; buildVm.StartedDateTime = build.StartTime?.ToLocalTime().DateTime; buildVm.FinishedDateTime = build.FinishTime?.ToLocalTime().DateTime; buildVm.Status = GetVmBuildStatus(build.Status, build.Result); buildVm.WebUrl = build.Links?.Web?.Href; return(buildVm); }
public void StartBuild(FilePackageGenerator.Context context) { BuildViewModel buildViewModel = new BuildViewModel(context); buildViewModel.CloseMode = _commandLine.IsGenerateMode ? CloseMode.AlwaysClose : CloseMode.CloseOnlyWhenSuccess; if (_commandLine.IsGenerateMode) { buildViewModel.Messages.CollectionChanged += Messages_CollectionChanged; } RunMode mode = _commandLine.IsGenerateMode && !_commandLine.ShowProgressUi ? RunMode.Blocking : RunMode.Async; buildViewModel.Start(mode); if (mode == RunMode.Async) { BuildView buildView = new BuildView(); buildView.DataContext = buildViewModel; buildView.ShowDialog(); } buildViewModel.Detach(); if (_commandLine.IsGenerateMode) { buildViewModel.Messages.CollectionChanged -= Messages_CollectionChanged; } }
public async Task <ActionResult> AddEdit(int?id) { var model = new BuildViewModel(); if (id.HasValue) { model = await ApiUtility.GetAsyncById <BuildViewModel>(Services.Builds, id.Value); if (!model.IsNew) { var project = await ApiUtility.GetAsyncById <ProjectModel>(Services.Projects, model.ProjectId); if (project != null) { model.ProjectName = project.Name; model.Projects.Add(project); } } } else { var projects = await ApiUtility.GetAsync <ProjectModel>(Services.Projects); model.Projects.AddRange(projects); } return(View(model)); }
public IActionResult Build(BuildViewModel Model) { // Check if the model is valid if (!ModelState.IsValid) { Model.createdWork = new CreatedWork() { SelectFromList = DatabaseConnector.GetWorkset(Model.WorkSetID).ExamStyle, CatagoryTypes = GetAllQuestions() }; return(View(Model)); } // Delete any work that may already exist for that workset DatabaseConnector.DeleteWork(Model.WorkSetID); // Add each piece of work to the database foreach (var work in Model.Work) { DatabaseConnector.AddWork(new Work() { Difficulty = 1, QuestionType = work.TypeID, Seed = work.Seed, WorkSetID = Model.WorkSetID }); } // Commit any changes to the database DatabaseConnector.PushChanges(); return(Redirect("~/Work/Set")); }
private (PipProcessErrorEventFields pipProcessError, string expectingConsoleLog, MockConsole console, BuildViewModel viewModel) CreatePipProcessErrorTestElement() { var pipProcessError = new PipProcessErrorEventFields( (long)24, "my cool pip", @"specs\mypip.dsc", @"specs\workingDir", "coolpip.exe", "Failure message Line1\r\nFailure message Line2\rFailure message Line3\n", "Find output file in following path:", @"specs\workingDir\out.txt", -1, "what does this do?", "my pip"); var processedOutputToLog = "Failure message Line1%0D%0A##[error]Failure message Line2%0D##[error]Failure message Line3%0A##[error]"; var expectingConsoleLog = @$ "##vso[task.logIssue type=error;][Pip0000000000000018, {pipProcessError.ShortPipDescription}, {pipProcessError.PipSpecPath}] - failed with exit code {pipProcessError.ExitCode}, {pipProcessError.OptionalMessage}%0D%0A##[error]{processedOutputToLog}%0D%0A##[error]{pipProcessError.MessageAboutPathsToLog}%0D%0A##[error]{pipProcessError.PathsToLog}"; var console = new MockConsole(); var viewModel = new BuildViewModel(); var buildSummaryFilePath = Path.Combine(TestOutputDirectory, "test.md"); viewModel.BuildSummary = new BuildSummary(buildSummaryFilePath); return(pipProcessError, expectingConsoleLog, console, viewModel); }
private async Task SaveBuild(BuildViewModel build) { var poeBuild = build.Build; if (!poeBuild.CanRevert && poeBuild.IsDirty) { // Build was created in this program run and was not yet saved. // Thus it needs a name. var name = await _dialogCoordinator.ShowValidatingInputDialogAsync(this, L10n.Message("Saving new Build"), L10n.Message("Enter the name of the build."), poeBuild.Name, s => _buildValidator.ValidateExistingFileName(s, build)); if (string.IsNullOrEmpty(name)) { return; } poeBuild.Name = name; } poeBuild.LastUpdated = DateTime.Now; await SaveBuildToFile(build); // Save parent folder to retain ordering information when renaming await SaveBuildToFile(build.Parent); }
public void TestUpdataBuild_OK2() { BuildSetService service = new BuildSetService(); BuildSetViewModel ViewModel = service.GetAllBuilds(); BuildViewModel lasstbuild = ViewModel.Builds.Last(); string buildID = "000001G008"; string buildName = "test8"; string buildAddr = "test addr 8"; decimal buildLong = 123; decimal buildLat = 45; decimal totalArea = 789; int numberOfPeople = 1234; int transCount = 45; int installCapacity = 78; int operateCapacity = 90; int designMeters = 100; ViewModel = service.UpdatePartBuildInfo(buildID, buildName, buildAddr, buildLong, buildLat, totalArea, numberOfPeople, transCount, installCapacity, operateCapacity, designMeters ); Console.WriteLine(UtilTest.GetJson(ViewModel)); }
public FTPWriter(BuildViewModel _BVM) { if (Properties.Settings.Default.FTPValid) { BVM = _BVM; Adress = Properties.Settings.Default.FTPAddress.Split(':')[0]; Port = Properties.Settings.Default.FTPAddress.Split(':')[1]; Username = Properties.Settings.Default.FTPUN; Password = Properties.Settings.Default.FTPPW; Client = new FtpClient(Adress); Client.Port = int.Parse(Port); Client.ConnectTimeout = 3000; if (Username != "") { Client.Credentials = new System.Net.NetworkCredential(Username, Password); } Client.RecursiveList = true; Progress = delegate(FtpProgress p) { if (p.Progress != 100) { BVM.SetSpeed(String.Format("{0}/s, {1}%", WriterOperations.BytesToString(p.TransferSpeed), p.Progress.ToString().Substring(0, 2))); } }; } }
public ActionResult Index() { HttpCookie Cookie = AuthorizeCookie(); var CustomerCart = new Cart { Blade = _database.Blades.Find(StringToInt(Cookie.Values["Blade"])), Handle = _database.Handles.Find(StringToInt(Cookie.Values["Handle"])), ReelSeat = _database.ReelSeats.Find(StringToInt(Cookie.Values["ReelSeat"])) }; var Model = new BuildViewModel { Blades = _database.Blades.ToList(), Handles = _database.Handles.ToList(), ReelSeats = _database.ReelSeats.ToList(), InfoHeader = _database.Texts.Find("InfoHeader"), InfoBladesHeader = _database.Texts.Find("InfoBladesHeader"), InfoHandlesHeader = _database.Texts.Find("InfoHandlesHeader"), InfoReelsHeader = _database.Texts.Find("InfoReelsHeader"), InfoBody = _database.Texts.Find("InfoBody"), InfoBladesBody = _database.Texts.Find("InfoBladesBody"), InfoHandlesBody = _database.Texts.Find("InfoHandlesBody"), InfoReelsBody = _database.Texts.Find("InfoReelsBody"), Cart = CustomerCart }; return(View(Model)); }
private async Task Paste(IBuildViewModel target) { var targetFolder = target as IBuildFolderViewModel ?? target.Parent; IBuildViewModel pasted; if (_clipboardIsCopy) { var newBuild = _buildClipboard.Build.DeepClone() as PoEBuild; if (newBuild == null) { throw new InvalidOperationException("Can only copy builds, not folders."); } newBuild.Name = Util.FindDistinctName(newBuild.Name, targetFolder.Children.Select(b => b.Build.Name)); pasted = new BuildViewModel(newBuild, Filter); } else { pasted = _buildClipboard; _buildClipboard = null; } targetFolder.Children.Add(pasted); // Folders and non-dirty builds need to be saved to create the new file. var build = pasted.Build as PoEBuild; if (build == null || !build.IsDirty) { await SaveBuildToFile(pasted); } }
private async Task SaveBuildAs(BuildViewModel vm) { var build = vm.Build; var name = await _dialogCoordinator.ShowInputAsync(this, L10n.Message("Save as"), L10n.Message("Enter the new name of the build"), build.Name); if (string.IsNullOrWhiteSpace(name)) { return; } var newBuild = build.DeepClone(); newBuild.Name = name; var newVm = new BuildViewModel(newBuild, Filter); var builds = vm.Parent.Children; if (build.CanRevert) { // The original build exists in the file system. build.RevertChanges(); builds.Insert(builds.IndexOf(vm), newVm); } else { // The original build does not exist in the file system // It will be replaced by the new one. var i = builds.IndexOf(vm); builds.RemoveAt(i); builds.Insert(i, newVm); } CurrentBuild = newVm; await SaveBuild(newVm); }
/// <summary> /// Gets all build view models. /// </summary> /// <returns>Returns the build view models.</returns> public IEnumerable <BuildViewModel> GetBuildViewModels() { var builds = this.QueryBuilds(); foreach (var build in builds) { var model = new BuildViewModel { BuildDefinition = build.Definition.Name, BuildId = build.Id, BuildStatus = build.Status.HasValue ? build.Status.Value : BuildStatus.None, BuildResult = build.Result.GetValueOrDefault(BuildResult.None), Finished = build.FinishTime.GetValueOrDefault(DateTime.Now).ToLocalTime(), QueueCount = build.QueuePosition.GetValueOrDefault(0), Queued = build.QueueTime.GetValueOrDefault(DateTime.Now), RequestedBy = build.RequestedBy.DisplayName, RequestedByProfilePicture = build.RequestedBy.GetProfilePath(), SourceBranch = build.SourceBranch, SourceVersionCommit = this.GetCommitText(build.SourceVersion, build.Repository.Id), Started = build.StartTime.GetValueOrDefault(DateTime.Now).ToLocalTime(), Timeline = !this.Configuration.CompactMode ? this.GetTimeline(build) : Enumerable.Empty <BuildTimeLineElementViewModel>() }; yield return(model); } }
public void ForwardedErrorOrWarningTest() { const string ErrorName = "MyTestErrorEvent"; const string ErrorText = "Error Event logged from worker"; const string WarningName = "MyTestWarningEvent"; const string WarningText = "Warning Event logged from worker"; var console = new MockConsole(); BuildViewModel viewModel = new BuildViewModel(); using (AzureDevOpsListener listener = new AzureDevOpsListener(Events.Log, console, DateTime.Now, viewModel, false, null)) { listener.RegisterEventSource(global::BuildXL.Engine.ETWLogger.Log); global::BuildXL.Engine.Tracing.Logger.Log.DistributionWorkerForwardedError(LoggingContext, new WorkerForwardedEvent() { EventId = 100, EventName = ErrorName, EventKeywords = (int)global::BuildXL.Utilities.Instrumentation.Common.Keywords.UserError, Text = ErrorText, }); console.ValidateCall(MessageLevel.Info, ErrorText); global::BuildXL.Engine.Tracing.Logger.Log.DistributionWorkerForwardedWarning(LoggingContext, new WorkerForwardedEvent() { EventId = 200, EventName = WarningName, EventKeywords = (int)global::BuildXL.Utilities.Instrumentation.Common.Keywords.UserError, Text = WarningText, }); console.ValidateCall(MessageLevel.Info, WarningText); } }
public void TestAddBuild_OK2() { BuildSetService service = new BuildSetService(); BuildSetViewModel ViewModel = service.GetAllBuilds(); BuildViewModel lasstbuild = ViewModel.Builds.Last(); BuildInfoSet buildInfoSet = new BuildInfoSet(); buildInfoSet.BuildName = "TestName" + (DateTime.Now).ToString(); buildInfoSet.AliasName = "TestName" + (DateTime.Now).ToString(); buildInfoSet.BuildOwner = "TestOwner" + (DateTime.Now).ToString(); //BuildID,DataCenterID,BuildName,AliasName,BuildOwner //,DistrictCode,BuildAddr,BuildLong,BuildLat,BuildYear //,UpFloor,DownFloor,BuildFunc,TotalArea,AirArea //,DesignDept,WorkDept,CreateTime,CreateUser,MonitorDate //,AcceptDate,NumberOfPeople,SPArea,Image,TransCount //,InstallCapacity,OperateCapacity,DesignMeters,Mobiles ViewModel = service.AddBuild(buildInfoSet); Console.WriteLine(UtilTest.GetJson(ViewModel)); }
/// <summary> /// If you want to edit a workset it has to be reloaded into the page /// this is what this function does /// it also then generates the models for that work. /// </summary> /// <param name="setID"></param> /// <returns></returns> public IActionResult Build(int setID) { // See if (setID == 0) { return(Unauthorized()); } if (UserHelper.OwnsWorkset(UserHelper.GetUserId(HttpContext.Session), setID) || (UserHelper.UserInRole(UserHelper.GetUserId(HttpContext.Session), UserHelper.ROLE_ADMIN) && UserHelper.InSameOrganisation(UserHelper.GetUserId(HttpContext.Session), setID))) { // Gets the workset information from the database var workset = DatabaseConnector.GetWorkset(setID); if (workset == null) { return(NotFound()); } //Sets up the array of work components List <WorkPartial> currentwork = new List <WorkPartial>(); // Get the work already in this sheet from the database var current = DatabaseConnector.GetWhere <Work>($"WorkSetID={setID}"); // Iterates through every piece of work currently avaliable. foreach (var piece in current) { // Gets the information about the question. var workPartial = new WorkPartial() { TypeName = DatabaseConnector.Get <QuestionTypes>().FirstOrDefault(x => x.TypeID == piece.QuestionType).Type_Name, TypeID = piece.QuestionType, Seed = piece.Seed, Answer = "" }; // If the work is supposed to have a set answer do this if (workset.ExamStyle) { workPartial.Answer = Interpreter.GenerateQuestion(AppContext.BaseDirectory + @"wwwroot\lib\Python\" + DatabaseConnector.Get <QuestionTypes>().SingleOrDefault(x => x.TypeID == piece.QuestionType).Class, piece.Seed).GetAnswer().ToString(); } currentwork.Add(workPartial); } // Create the build model from all of the given information and pass it to the page. var model = new BuildViewModel() { WorkSetID = setID, createdWork = new CreatedWork() { SelectFromList = DatabaseConnector.GetWorkset(setID).ExamStyle, CatagoryTypes = GetAllQuestions() }, Work = currentwork.ToArray() }; return(View(model)); } return(Unauthorized()); }
public void TestUpdataBuild_OK() { BuildSetService service = new BuildSetService(); BuildSetViewModel ViewModel = service.GetAllBuilds(); BuildViewModel lasstbuild = ViewModel.Builds.Last(); string newBuildID = "000001G005"; BuildInfoSet buildInfoSet = new BuildInfoSet(); buildInfoSet.BuildID = newBuildID; buildInfoSet.DataCenterID = "000001"; buildInfoSet.BuildName = "TestName" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); buildInfoSet.AliasName = "TestName" + DateTime.Now.ToString("HH:mm:ss"); buildInfoSet.BuildOwner = "TestOwner"; buildInfoSet.DistrictCode = "310000"; buildInfoSet.BuildAddr = "Addr Test"; buildInfoSet.BuildLong = 123; buildInfoSet.BuildLat = 45; buildInfoSet.BuildYear = 2018; buildInfoSet.UpFloor = (DateTime.Now.Hour + 1); buildInfoSet.DownFloor = DateTime.Now.Hour; buildInfoSet.BuildFunc = "G"; buildInfoSet.TotalArea = 5000; buildInfoSet.AirArea = 3000; buildInfoSet.DesignDept = "设计单位"; buildInfoSet.WorkDept = "使用单位"; buildInfoSet.CreateTime = DateTime.Now; buildInfoSet.CreateUser = "******"; buildInfoSet.MonitorDate = DateTime.Now; buildInfoSet.AcceptDate = DateTime.Now; buildInfoSet.NumberOfPeople = 500; buildInfoSet.SPArea = 500; buildInfoSet.Image = null; buildInfoSet.TransCount = 5; buildInfoSet.InstallCapacity = 500; buildInfoSet.OperateCapacity = 400; buildInfoSet.DesignMeters = 20; buildInfoSet.Mobiles = "12345678901"; //BuildID,DataCenterID,BuildName,AliasName,BuildOwner //,DistrictCode,BuildAddr,BuildLong,BuildLat,BuildYear //,UpFloor,DownFloor,BuildFunc,TotalArea,AirArea //,DesignDept,WorkDept,CreateTime,CreateUser,MonitorDate //,AcceptDate,NumberOfPeople,SPArea,Image,TransCount //,InstallCapacity,OperateCapacity,DesignMeters,Mobiles ViewModel = service.UpdateBuild(buildInfoSet); Console.WriteLine(UtilTest.GetJson(ViewModel)); }
private void BuildEvents_OnBuildBegin(vsBuildScope Scope, vsBuildAction Action) { BuildVM = new BuildViewModel(); DataContext = BuildVM; BuildVM.Name = State.DTE.Solution.FullName; BuildVM.Start(Scope, Action); }
private async Task SaveBuild(BuildViewModel build) { build.Build.LastUpdated = DateTime.Now; await SaveBuildToFile(build); // Save parent folder to retain ordering information when renaming await SaveBuildToFile(build.Parent); }
public BuildView(SDGuiStrings strings, IBuildMessenger buildMessenger) { Strings = strings; DataContext = new BuildViewModel(buildMessenger, Hide); InitializeComponent(); MouseLeftButtonDown += (s, a) => DragMove(); }
private void BuildViewModel_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) { BuildViewModel buildViewModel = (BuildViewModel)sender; if (e.PropertyName == "CurrentPackage") { System.Console.WriteLine(string.Format(FilePackager.Console.Properties.Resources.CurrentPackage, buildViewModel.CurrentPackage)); } }
public BuildView(SDGuiStrings strings, BuildMessenger buildMessenger) { Strings = strings; DataContext = new BuildViewModel(buildMessenger, Hide); InitializeComponent(); MouseLeftButtonDown += OnMouseDown; MouseLeftButtonUp += OnMouseUp; }
public MainWindow(BuildViewModel buildViewModel) { if (buildViewModel == null) { throw new ArgumentNullException("buildViewModel"); } _buildViewModel = buildViewModel; this.DataContext = _buildViewModel; InitializeComponent(); }
public void NewBuild(IBuildFolderViewModel folder) { var name = Util.FindDistinctName(SerializationConstants.DefaultBuildName, folder.Children.Select(b => b.Build.Name)); var build = new BuildViewModel(new PoEBuild { Name = name }, Filter); folder.Children.Add(build); CurrentBuild = build; }
public async Task <IActionResult> Details(string name) { var runs = await _metricsService.GetRunsByBuildNameAsync(name); var model = new BuildViewModel { Name = name, TestRuns = runs.OrderByDescending(r => r.RunAt).ToList() }; return(View(model)); }
/// <nodoc /> public AzureDevOpsListener( Events eventSource, IConsole console, DateTime baseTime, BuildViewModel buildViewModel) : base(eventSource, baseTime, warningMapper: null, level: EventLevel.Verbose, captureAllDiagnosticMessages: false, timeDisplay: TimeDisplay.Seconds) { Contract.Requires(console != null); Contract.Requires(buildViewModel != null); m_console = console; m_buildViewModel = buildViewModel; }
private async Task ImportCurrentFromClipboard() { var pasted = await PasteFromClipboard(BuildRoot); if (pasted == null) { return; } var build = new BuildViewModel(pasted, Filter); BuildRoot.Children.Add(build); CurrentBuild = build; }
public void BuildProgressTest() { var console = new MockConsole(); BuildViewModel viewModel = new BuildViewModel(); using (AzureDevOpsListener listener = new AzureDevOpsListener(Events.Log, console, DateTime.Now, viewModel, false, null)) { listener.RegisterEventSource(global::BuildXL.Scheduler.ETWLogger.Log); listener.RegisterEventSource(global::BuildXL.Pips.ETWLogger.Log); var procsExecuting = 10; var procsSucceeded = 10; var procsFailed = 10; var procsSkipped = 10; var procsPending = 10; var procsWaiting = 10; var done = procsSucceeded + procsFailed + procsSkipped; var total = done + procsExecuting + procsWaiting + procsPending; var processPercent = (100.0 * done) / (total * 1.0); var currentProgress = Convert.ToInt32(Math.Floor(processPercent)); global::BuildXL.Scheduler.Scheduler.LogPipStatus(LoggingContext, pipsSucceeded: 10, pipsFailed: 10, pipsSkippedDueToFailedDependencies: 10, pipsRunning: 10, pipsReady: 10, pipsWaiting: 10, pipsWaitingOnSemaphore: 10, servicePipsRunning: 10, perfInfoForConsole: "", pipsWaitingOnResources: 10, procsExecuting: procsExecuting, procsSucceeded: procsSucceeded, procsFailed: procsFailed, procsSkippedDueToFailedDependencies: procsSkipped, procsPending: procsPending, procsWaiting: procsWaiting, procsCacheHit: 10, procsNotIgnored: 10, limitingResource: "", perfInfoForLog: "", overwriteable: true, copyFileDone: 100, copyFileNotDone: 100, writeFileDone: 10, writeFileNotDone: 10, procsRemoted: 0); console.ValidateCall(MessageLevel.Info, $"##vso[task.setprogress value={currentProgress};]Pip Execution phase"); } }
/// <summary> /// Starts the build in non-async mode. /// </summary> /// <param name="context">The context.</param> public void StartBuild(FilePackager.Packaging.FilePackageGenerator.Context context) { BuildViewModel buildViewModel = new BuildViewModel(context); buildViewModel.CloseMode = CloseMode.AlwaysClose; buildViewModel.PropertyChanged += BuildViewModel_PropertyChanged; buildViewModel.Messages.CollectionChanged += Messages_CollectionChanged; buildViewModel.Start(RunMode.Blocking); MaxSeverityFound = buildViewModel.MaxSeverityFound; buildViewModel.PropertyChanged -= BuildViewModel_PropertyChanged; buildViewModel.Messages.CollectionChanged -= Messages_CollectionChanged; }
public void TfsServerList_OnCount_ReturnsTwoUris() { //Arrange var fakeRepo = A.Fake <ITfsRepository>(); A.CallTo(() => fakeRepo.GetTfsServerList()).Returns <List <string> >(new List <string>() { "http://visualstudioonline.com", "http://microsoft.com" }); var fakeBuildViewModel = new BuildViewModel(fakeRepo); Assert.IsTrue(fakeBuildViewModel.TfsServerList.Count > 0); }
/// <nodoc /> public AzureDevOpsListener( Events eventSource, IConsole console, DateTime baseTime, BuildViewModel buildViewModel, bool useCustomPipDescription, [CanBeNull] WarningMapper warningMapper) : base(eventSource, baseTime, warningMapper: warningMapper, level: EventLevel.Verbose, captureAllDiagnosticMessages: false, timeDisplay: TimeDisplay.Seconds, useCustomPipDescription: useCustomPipDescription) { Contract.RequiresNotNull(console); Contract.RequiresNotNull(buildViewModel); m_console = console; m_buildViewModel = buildViewModel; }