protected override void OnInit(EventArgs e) { base.OnInit(e); // initialize the controller _theController = new DeviceConfigurationController(); // setup child controls GridPagerTop.InitializeGridPager(SR.GridPagerDeviceSingleItem, SR.GridPagerDeviceMultipleItems, DeviceGridPanel.TheGrid, delegate { return(DeviceGridPanel.Devices.Count); }, ImageServerConstants.GridViewPagerPosition.Top); DeviceGridPanel.Pager = GridPagerTop; MoveConfirmation.Confirmed += delegate(object data) { IList <Device> devices = data as IList <Device>; StudyController studyController = new StudyController(); foreach (Study study in StudyGridView.StudyList) { foreach (Device device in devices) { studyController.MoveStudy(study, device); } } }; }
protected override void OnPreRender(EventArgs e) { base.OnPreRender(e); foreach (GridViewRow row in StudyListControl.Rows) { if (row.RowType == DataControlRowType.DataRow) { int index = StudyListControl.PageIndex * StudyListControl.PageSize + row.RowIndex; Study study = StudyList[index]; if (study != null) { row.Attributes.Add("instanceuid", study.StudyInstanceUid); row.Attributes.Add("serverae", Partition.AeTitle); StudyController controller = new StudyController(); bool deleted = controller.IsScheduledForDelete(study); if (deleted) { row.Attributes.Add("deleted", "true"); } } } } }
/// <summary> /// Handles event when user clicks on "OK" button. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void OKButton_Click(object sender, EventArgs e) { if (Page.IsValid) { string reason = ReasonListBox.SelectedItem.Text; if (!String.IsNullOrEmpty(SaveReasonAsName.Text)) { SaveCustomReason(); reason = SaveReasonAsName.Text; } if (StudyEdited != null) { List <UpdateItem> modifiedFields = GetChanges(); if (modifiedFields != null && modifiedFields.Count > 0) { var studyController = new StudyController(); studyController.EditStudy(Study, modifiedFields, reason + ImageServerConstants.ReasonCommentSeparator[0] + Comment.Text); AuditLog(Study, modifiedFields); StudyEdited(); } } Close(); } else { EnsureDialogVisible(); } }
/// <summary> /// Creates an instance of <see cref="StudyDetails"/> base on a <see cref="Study"/> object. /// </summary> /// <param name="study"></param> /// <returns></returns> public StudyDetails CreateStudyDetail(Study study) { var details = new StudyDetails(); details.StudyInstanceUID = study.StudyInstanceUid; details.PatientName = study.PatientsName; details.AccessionNumber = study.AccessionNumber; details.PatientID = study.PatientId; details.StudyDescription = study.StudyDescription; details.StudyDate = study.StudyDate; details.StudyTime = study.StudyTime; var controller = new StudyController(); using (IReadContext ctx = PersistentStoreRegistry.GetDefaultStore().OpenReadContext()) { details.Modalities = controller.GetModalitiesInStudy(ctx, study); } if (study.StudyInstanceUid != null) { StudyStorage storages = StudyStorage.Load(study.StudyStorageKey); if (storages != null) { details.WriteLock = storages.WriteLock; details.ReadLock = storages.ReadLock; details.Status = storages.StudyStatusEnum.ToString(); } } return(details); }
public void Update_invalid_input_returns_not_found() { _studyLogicMock.Setup(m => m.Update(It.IsAny <StudyDTO>(), It.IsAny <int>())).ReturnsAsync(false); var controller = new StudyController(_studyLogicMock.Object); var result = controller.UpdateStudy(_studyDTO, _studyDTO.Id).Result; Assert.IsType <NotFoundResult>(result); }
public void Update_correct_input_returns_NoContent() { _studyLogicMock.Setup(m => m.Update(It.IsAny <StudyDTO>(), It.IsAny <int>())).ReturnsAsync(true); var controller = new StudyController(_studyLogicMock.Object); var result = controller.UpdateStudy(_studyDTO, _studyDTO.Id).Result; Assert.IsType <NoContentResult>(result); }
public void GetStudyById_invalid_input_returns_NotFound() { _studyLogicMock.Setup(m => m.GetById(It.IsAny <int>())).ReturnsAsync(null); var controller = new StudyController(_studyLogicMock.Object); var result = controller.GetStudyById(1).Result; Assert.IsType <NotFoundResult>(result); }
public void GetAllStudies_no_result_returns_NotFound() { _studyLogicMock.Setup(m => m.GetAll()).ReturnsAsync(null); var controller = new StudyController(_studyLogicMock.Object); var result = controller.GetAllStudies().Result; Assert.IsType <NotFoundResult>(result); }
public override void DataBind() { StudyStorageViewControl.DataSource = null; StudyController studyController = new StudyController(); StudyStorageViewControl.DataSource = studyController.GetStudyStorageLocation(_study); base.DataBind(); }
public override void DataBind() { StudyController studyController = new StudyController(); ArchiveQueueGridView.DataSource = studyController.GetArchiveQueueItems(_study); _storage = studyController.GetArchiveStudyStorage(_study); ArchiveStudyStorageGridView.DataSource = _storage; base.DataBind(); }
public void Dispose_calls_repository_dispose() { var repository = new Mock <IStudyRepository>(); using (var controller = new StudyController(repository.Object, log.Object)) { } repository.Verify(r => r.Dispose()); }
public override void DataBind() { if (Study != null) { StudyController controller = new StudyController(); FSQueueGridView.DataSource = controller.GetFileSystemQueueItems(Study); } base.DataBind(); }
public void Update_model_error_returns_bad_request() { _studyLogicMock.Setup(m => m.Update(It.IsAny <StudyDTO>(), It.IsAny <int>())).ReturnsAsync(false); var controller = new StudyController(_studyLogicMock.Object); controller.ModelState.AddModelError("", ""); var result = controller.UpdateStudy(_studyDTO, _studyDTO.Id).Result; Assert.IsType <BadRequestObjectResult>(result); }
public void Create_correct_input_returns_OK() { _studyLogicMock.Setup(m => m.Create(It.IsAny <StudyDTO>())).ReturnsAsync(_studyDTO.Id); var controller = new StudyController(_studyLogicMock.Object); var result = controller.CreateStudy(_studyDTO).Result; var jsonResult = Assert.IsType <OkObjectResult>(result); var dtoResult = Assert.IsType <int>(jsonResult.Value); Assert.Equal(_studyDTO.Id, dtoResult); }
public void GetStudyById_correct_input_returns_OK() { _studyLogicMock.Setup(m => m.GetById(It.IsAny <int>())).ReturnsAsync(_studyDTO); var controller = new StudyController(_studyLogicMock.Object); var result = controller.GetStudyById(1).Result; var jsonResult = Assert.IsType <OkObjectResult>(result); var dtoResult = Assert.IsType <StudyDTO>(jsonResult.Value); Assert.Equal(_studyDTO, dtoResult); }
public async Task Delete_given_id_calls_DeleteAsync() { // Arrange var repository = new Mock <IStudyRepository>(); var controller = new StudyController(repository.Object, log.Object); // Act await controller.Delete(11); // Assert repository.Verify(r => r.DeleteAsync(11)); }
protected void DeleteButton_Clicked(object sender, ImageClickEventArgs e) { if (Page.IsValid) { try { string reason = ReasonListBox.SelectedItem.Text; if (!String.IsNullOrEmpty(SaveReasonAsName.Text)) { SaveCustomReason(); reason = SaveReasonAsName.Text; } OnDeletingStudies(); StudyController controller = new StudyController(); foreach (DeleteStudyInfo study in DeletingStudies) { try { controller.DeleteStudy(study.StudyKey, reason + "::" + Comment.Text); // Audit log DicomStudyDeletedAuditHelper helper = new DicomStudyDeletedAuditHelper( ServerPlatform.AuditSource, EventIdentificationContentsEventOutcomeIndicator.Success); helper.AddUserParticipant(new AuditPersonActiveParticipant( SessionManager.Current.Credentials.UserName, null, SessionManager.Current.Credentials.DisplayName)); helper.AddStudyParticipantObject(new AuditStudyParticipantObject( study.StudyInstanceUid, study.AccessionNumber ?? string.Empty)); ServerAuditHelper.LogAuditMessage(helper); } catch (Exception ex) { Platform.Log(LogLevel.Error, ex, "DeleteClicked failed: Unable to delete studies"); throw; } } OnStudiesDeleted(); } finally { Close(); } } else { EnsureDialogVisible(); } }
public void GetAllStudies_with_result_returns_OK() { var list = new List <StudyDTO>() { _studyDTO }; _studyLogicMock.Setup(m => m.GetAll()).ReturnsAsync(list); var controller = new StudyController(_studyLogicMock.Object); var result = controller.GetAllStudies().Result; Assert.IsType <OkObjectResult>(result); }
public bool Prepare() { if (bIsRecord) { m_StudyController = new StudyControllerFileRecord(m_HumenModelRef, m_HumenModel, m_strRefFileName); m_HumenModel.GetComponent <KinectManager>().enabled = true; } else { m_StudyController = new StudyControllerFileFile(m_HumenModelRef, m_HumenModel, m_strRefFileName, m_strFileName); } return(m_StudyController.Ready()); }
public async Task Post_given_valid_study_calls_CreateAsync() { // Arrange var repository = new Mock <IStudyRepository>(); var controller = new StudyController(repository.Object, log.Object); var study = new StudyNoIdDTO(); // Act await controller.Post(study); // Assert repository.Verify(r => r.CreateAsync(study)); }
public void Get_ReturnsAllStudies() { // Arrange var mock = new Mock <IStudyManager>(); mock.Setup(p => p.GetAll()).Returns(studiesTest); StudyController studyController = new StudyController(mock.Object); // Act var result = studyController.Get(); // Assert Assert.AreEqual(2, result.Value.Count()); }
public void Get_ReturnsStudyByID() { // Arrange var mock = new Mock <IStudyManager>(); mock.Setup(p => p.GetStudyByGUID("abc")).Returns(study1); StudyController studyController = new StudyController(mock.Object); // Act var result = studyController.Get("abc"); // Assert Assert.AreEqual("study1", result.Value.StudyId); }
public async Task Delete_given_nonexisting_study_returns_NotFound() { // Arrange var repository = new Mock <IStudyRepository>(); repository.Setup(r => r.DeleteAsync(11)).ReturnsAsync(false); var controller = new StudyController(repository.Object, log.Object); // Act var result = await controller.Delete(11); // Assert Assert.IsType <NotFoundResult>(result); }
public async Task Get_given_nonexisting_id_returns_NotFound() { // Arrange var repository = new Mock <IStudyRepository>(); repository.Setup(r => r.FindAsync(11)).ReturnsAsync(default(StudyDTO)); var controller = new StudyController(repository.Object, log.Object); // Act var result = await controller.Get(11); // Assert Assert.IsType <NotFoundResult>(result); }
public async Task Delete_given_valid_study_returns_NoContent() { // Arrange var repository = new Mock <IStudyRepository>(); repository.Setup(r => r.DeleteAsync(11)).ReturnsAsync(true); var controller = new StudyController(repository.Object, log.Object); // Act var result = await controller.Delete(11); // Assert Assert.IsType <NoContentResult>(result); }
private void ReprocessStudy() { try { StudyController controller = new StudyController(); controller.ReprocessStudy(SR.ReprocessStudyViaGUI, _study.TheStudyStorage.GetKey()); } catch (InvalidStudyStateOperationException ex) { ShowErrorMessage(ex.Message); } finally { Refresh(); } }
public async Task Put_given_id_not_eq_to_studyId_returns_BadRequest() { // Arrange var repository = new Mock <IStudyRepository>(); var controller = new StudyController(repository.Object, log.Object); var customer = new StudyDTO { Id = 11 }; // Act var result = await controller.Put(0, customer); // Assert Assert.IsType <BadRequestObjectResult>(result); }
public async Task Put_given_valid_study_calls_UpdateAsync() { // Arrange var repository = new Mock <IStudyRepository>(); var controller = new StudyController(repository.Object, log.Object); var study = new StudyDTO { Id = 11 }; // Act await controller.Put(11, study); // Arrange repository.Verify(r => r.UpdateAsync(study)); }
public async Task Post_given_invalid_study_doesnot_call_CreateAsync() { // Arrange var repository = new Mock <IStudyRepository>(); var controller = new StudyController(repository.Object, log.Object); controller.ModelState.AddModelError(string.Empty, "Error"); var study = new StudyNoIdDTO(); // Act await controller.Post(study); // Assert repository.Verify(r => r.CreateAsync(It.IsAny <StudyNoIdDTO>()), Times.Never); }
public async Task Post_given_invalid_study_returns_BadRequest() { // Arrange var repository = new Mock <IStudyRepository>(); var controller = new StudyController(repository.Object, log.Object); controller.ModelState.AddModelError(string.Empty, "Error"); var study = new StudyNoIdDTO(); // Act var result = await controller.Post(study); // Assert Assert.IsType <BadRequestObjectResult>(result); }
/// <summary> /// Returns an instance of <see cref="StudySummary"/> based on a <see cref="Study"/> object. /// </summary> /// <param name="study"></param> /// <param name="read"></param> /// <returns></returns> /// <remark> /// /// </remark> static public StudySummary CreateStudySummary(IPersistenceContext read, Study study) { if (study==null) { return null; } var studySummary = new StudySummary(); var controller = new StudyController(); studySummary.Key = study.GetKey(); studySummary.AccessionNumber = study.AccessionNumber; studySummary.NumberOfStudyRelatedInstances = study.NumberOfStudyRelatedInstances; studySummary.NumberOfStudyRelatedSeries = study.NumberOfStudyRelatedSeries; studySummary.PatientId = study.PatientId; studySummary.PatientsName = study.PatientsName; studySummary.StudyDate = study.StudyDate; studySummary.StudyInstanceUid = study.StudyInstanceUid; studySummary.StudyDescription = study.StudyDescription; studySummary.ModalitiesInStudy = controller.GetModalitiesInStudy(read, study); studySummary.ReferringPhysiciansName = study.ReferringPhysiciansName; studySummary.ResponsibleOrganization = study.ResponsibleOrganization; studySummary.ResponsiblePerson = study.ResponsiblePerson; studySummary.StudyTime = study.StudyTime; studySummary.StudyId = study.StudyId; studySummary.TheStudy = study; studySummary.ThePartition = ServerPartitionMonitor.Instance.FindPartition(study.ServerPartitionKey) ?? ServerPartition.Load(read, study.ServerPartitionKey); studySummary.ReferringPhysiciansName = study.ReferringPhysiciansName; studySummary.TheStudyStorage = StudyStorage.Load(read, study.StudyStorageKey); studySummary.StudyStatusEnum = studySummary.TheStudyStorage.StudyStatusEnum; studySummary.QueueStudyStateEnum = studySummary.TheStudyStorage.QueueStudyStateEnum; studySummary.TheArchiveLocation = controller.GetFirstArchiveStudyStorage(read, studySummary.TheStudyStorage.Key); studySummary.IsArchiving = controller.GetArchiveQueueCount(study) > 0; studySummary.IsProcessing = studySummary.TheStudyStorage.WriteLock; // the study is considered "locked" if it's being processed or some action which requires the lock has been scheduled // No additional action should be allowed on the study until everything is completed. studySummary.IsLocked = studySummary.IsProcessing || (studySummary.TheStudyStorage.QueueStudyStateEnum != QueueStudyStateEnum.Idle); if (controller.GetStudyIntegrityQueueCount(studySummary.TheStudyStorage.Key) > 0) { studySummary.IsReconcileRequired = true; } studySummary.HasPendingExternalEdit = controller.GetCountPendingExternalEditWorkQueueItems(study) > 0; if (studySummary.HasPendingExternalEdit) studySummary.HasPendingWorkQueueItems = true; else studySummary.HasPendingWorkQueueItems = controller.GetCountPendingWorkQueueItems(study) > 0; var ep = new StudySummaryAssemblerExtensionPoint(); foreach (IStudySummaryAssembler assemblerPlugin in ep.CreateExtensions()) { assemblerPlugin.PopulateStudy(studySummary, study); } return studySummary; }