private void UserStoryEditing(UserStory userStory) { UserStoryEdit userStoryEdit = new UserStoryEdit(userStory, project, controller); if (userStoryEdit.ShowDialog() == true) { if (userStoryEdit.Deleted) { controller.Delete(userStory); } else { string desc = userStoryEdit.tbxDesc.Text.Trim(); DateTime? dateLimite = userStoryEdit.dtpckrDateLimit.SelectedDate; int complexity = Convert.ToInt32(userStoryEdit.tbxComplexity.Text); int completedComplexity = Convert.ToInt32(userStoryEdit.tbxCompletedComplexity.Text); bool blocked = userStoryEdit.chckBxBlocked.IsChecked == true; Priority priority = (Priority)userStoryEdit.cbxPriority.SelectedItem; Classes.Type type = (Classes.Type)userStoryEdit.cbxType.SelectedItem; State state = userStory.State; controller.UpdateUserStory(desc, dateLimite, complexity, completedComplexity, blocked, priority, type, state, userStory); } Refresh(); } }
public static void autoDiscoverTypes() { int typeCount = 0; var typeInterface = typeof(Interfaces.IAutoType); //var typelist = Assembly.GetExecutingAssembly().GetTypes().Where(t => (t != null && t.IsClass && !t.IsAbstract && typeInterface.IsAssignableFrom(t))); var typelist = AppDomain.CurrentDomain.GetAssemblies().SelectMany(s => s.GetTypes()).Where(t => (t.IsClass && typeInterface.IsAssignableFrom(t))); foreach (var t in typelist) { try { Helpers.Utilities.WriteLog("ColonyAPI", t.Name + " Found. Registering."); Classes.Type type = ((Classes.Type)Activator.CreateInstance(t)); type.Register(); typeCount += 1; } catch (MissingMethodException mme) { Helpers.Utilities.WriteLog("ColonyAPI", t.Name + " cannot be instantiated. This probably isn't an error."); Pipliz.Log.WriteWarning(mme.Message); } catch (InvalidCastException ice) { Helpers.Utilities.WriteLog("ColonyAPI", t.Name + " doesn't properly implement our Type system. This probably isn't an error."); Pipliz.Log.WriteWarning(ice.Message); } catch (Exception e) { Helpers.Utilities.WriteLog("ColonyAPI", t.Name + " Type Error."); Pipliz.Log.WriteWarning(e.Message + e.StackTrace); } } Helpers.Utilities.WriteLog("ColonyAPI", typeCount + " Types Autoloaded."); }
public void CRUDUserStoryTest() { ctrl.CreateProject("aProjectName", "A Description for my project", DateTime.Now); Project project = ctrl.Projects.Last(); string firstDesc = "aDesc"; DateTime?firstDate = DateTime.Now; int firstComplexity = 2; Priority firstPrio = ctrl.Priorities[0]; Classes.Type firstType = ctrl.Types[0]; Assert.IsTrue(ctrl.CreateUserStory(firstDesc, firstDate, firstComplexity, firstPrio, firstType, project)); UserStory userStory = project.AllUserStories[0]; Assert.IsNotNull(userStory, "Exception in userStory creation"); Assert.AreEqual(firstDesc, userStory.Description); Assert.AreEqual(firstDate, userStory.DateLimit); Assert.AreEqual(firstComplexity, userStory.ComplexityEstimation); Assert.AreEqual(firstPrio, userStory.Priority); Assert.AreEqual(firstType, userStory.Type); Assert.AreEqual(project, userStory.Project); Assert.AreEqual(false, userStory.Blocked); Assert.AreEqual(0, userStory.CompletedComplexity); string secDesc = "aNewDesc"; DateTime?secDate = null; int secComplexity = 3; int secCompleted = 1; bool secBlock = true; Priority secPrio = ctrl.Priorities[1]; Classes.Type secType = ctrl.Types[1]; while (ctrl.States.Count < 2) { ctrl.CreateState("An additional state name"); } State secState = ctrl.States.Last(); Assert.IsTrue(ctrl.UpdateUserStory(secDesc, secDate, secComplexity, secCompleted, secBlock, secPrio, secType, secState, userStory)); Assert.AreEqual(secDesc, userStory.Description); Assert.AreEqual(secDate, userStory.DateLimit); Assert.AreEqual(secComplexity, userStory.ComplexityEstimation); Assert.AreEqual(secPrio, userStory.Priority); Assert.AreEqual(secType, userStory.Type); Assert.AreEqual(secState, userStory.State); Assert.AreEqual(secBlock, userStory.Blocked); Assert.AreEqual(secCompleted, userStory.CompletedComplexity); Assert.IsTrue(ctrl.Delete(userStory)); ctrl.Delete(project); }
private void BtnAddUserStory_Click(object sender, EventArgs e) { UserStoryCreate userStoryCreate = new UserStoryCreate(controller); if (userStoryCreate.ShowDialog() == true) { string desc = userStoryCreate.tbxDesc.Text.Trim(); DateTime? dateLimite = userStoryCreate.dtpckrDateLimit.SelectedDate; int complexity = Convert.ToInt32(userStoryCreate.tbxComplexity.Text); Priority priority = (Priority)userStoryCreate.cbxPriority.SelectedItem; Classes.Type type = (Classes.Type)userStoryCreate.cbxType.SelectedItem; controller.CreateUserStory(desc, dateLimite, complexity, priority, type, project); Refresh(); } }
public void CRDUserStoriesSprintTest() { ctrl.CreateProject("a name for a project", "a desc for a project", DateTime.Now); Project project = ctrl.Projects.Last(); ctrl.CreateSprint(DateTime.Now, DateTime.Now, project); Sprint sprint = project.Sprints[0]; //if not exists, the database is incorrect Priority prio = ctrl.Priorities[0]; Classes.Type type = ctrl.Types[0]; ctrl.CreateUserStory("a description", null, 2, prio, type, project); UserStory userStory = project.AllUserStories[0]; Assert.IsTrue(ctrl.AddUserStoryToSprint(userStory, sprint)); Assert.IsTrue(sprint.OrderedUserStories.ContainsValue(userStory)); Assert.IsTrue(ctrl.RemoveUserStoryFromSprint(userStory, sprint)); ctrl.Delete(userStory); ctrl.Delete(sprint); ctrl.Delete(project); }
public static void registerActionableTypeCallback(Classes.Type t) { ActionTypeRegistry.Add(t); }
public void CRUDUserStoryTest() { List <Priority> priorities = DB.GetPriorities(); List <State> states = DB.GetStates(); List <Classes.Type> types = DB.GetTypes(); List <Project> projects = DB.GetProjects(); if (states.Count == 0) { DB.CreateState("AStateName"); states = DB.GetStates(); } if (projects.Count == 0) { DB.CreateProject("aProjectName", "A Description for my project", DateTime.Now); projects = DB.GetProjects(); } string firstDesc = "aDesc"; DateTime?firstDate = DateTime.Now; int firstComplexity = 2; Priority firstPrio = priorities[0]; Classes.Type firstType = types[0]; State firstState = states[0]; Project firstProj = projects[0]; UserStory userStory = DB.CreateUserStory(firstDesc, firstDate, firstComplexity, firstPrio, firstType, firstState, firstProj); Assert.IsNotNull(userStory, "Exception in userStory creation"); Assert.AreEqual(firstDesc, userStory.Description); Assert.AreEqual(firstDate, userStory.DateLimit); Assert.AreEqual(firstComplexity, userStory.ComplexityEstimation); Assert.AreEqual(firstPrio.Id, userStory.PriorityId); Assert.AreEqual(firstType.Id, userStory.TypeId); Assert.AreEqual(firstState.Id, userStory.StateId); Assert.AreEqual(firstProj.Id, userStory.ProjectId); Assert.AreEqual(false, userStory.Blocked); Assert.AreEqual(0, userStory.CompletedComplexity); string secDesc = "aNewDesc"; DateTime?secDate = null; int secComplexity = 3; int secCompleted = 1; bool secBlock = true; Priority secPrio = priorities[1]; Classes.Type secType = types[1]; while (states.Count < 2) { DB.CreateState("An additional state name"); states = DB.GetStates(); } State secState = states[1]; DB.UpdateUserStory(secDesc, secDate, secComplexity, secCompleted, secBlock, secPrio, secState, secType, userStory); userStory = DB.GetUserStories().First(u => u.Id == userStory.Id); Assert.AreEqual(secDesc, userStory.Description); Assert.AreEqual(secDate, userStory.DateLimit); Assert.AreEqual(secComplexity, userStory.ComplexityEstimation); Assert.AreEqual(secPrio.Id, userStory.PriorityId); Assert.AreEqual(secType.Id, userStory.TypeId); Assert.AreEqual(secState.Id, userStory.StateId); Assert.AreEqual(secBlock, userStory.Blocked); Assert.AreEqual(secCompleted, userStory.CompletedComplexity); Assert.IsTrue(DB.Delete(userStory)); }