public int CreateWorkItem(Dictionary <string, string> values) { if (ThrowOnCreateBug != null) { throw ThrowOnCreateBug; } Logger.InfoFormat("Creating bug:"); // Generate a random ID int id; do { id = _rand.Next(1, int.MaxValue); } while (Bugs.ContainsKey(id)); // Apply defaults ApplyDefault(values, "ID", id.ToString()); ApplyDefault(values, "Title", $"WorkItem {id}"); ApplyDefault(values, "Assigned To", "Owner"); ApplyDefault(values, "State", "New"); Bugs[id] = new Dictionary <string, string>(values); CacheWorkItem(id); return(id); }
public void ModifyWorkItem(int workItemId, IIncomingEmailMessage message, Dictionary <string, string> values) { if (ThrowOnModifyBug != null) { throw ThrowOnModifyBug; } if (!Bugs.ContainsKey(workItemId)) { Logger.WarnFormat("Trying to modify non-existing bug {0}. Initializing with no field values", workItemId); Bugs[workItemId] = new Dictionary <string, string>(); } var bugEntry = Bugs[workItemId]; foreach (var key in values.Keys) { bugEntry[key] = values[key]; } if (!bugEntry.ContainsKey(HistoryField)) { bugEntry[HistoryField] = ""; } bugEntry[HistoryField] += message.GetLastMessageText(); }
public void ModifyWorkItem(int workItemId, string comment, bool commentIsHtml, Dictionary <string, string> values, MessageAttachmentCollection attachments) { if (ThrowOnModifyBug != null) { throw ThrowOnModifyBug; } if (!Bugs.ContainsKey(workItemId)) { Logger.WarnFormat("Trying to modify non-existing bug {0}. Initializing with no field values", workItemId); Bugs[workItemId] = new Dictionary <string, string>(); } var bugEntry = Bugs[workItemId]; foreach (var key in values.Keys) { bugEntry[key] = values[key]; } if (!bugEntry.ContainsKey(HistoryField)) { bugEntry[HistoryField] = ""; } bugEntry[HistoryField] += comment; }
public IWorkItemFields GetWorkItemFields(int workItemId) { if (!Bugs.ContainsKey(workItemId)) { Logger.WarnFormat("Trying to modify non-existing bug {0}", workItemId); return(null); } var bugEntry = Bugs[workItemId]; return(new WorkItemFieldsMock(bugEntry)); }
public long CreateWorkItem(Dictionary <string, string> values, Dictionary <string, string> overrides) { if (ThrowOnCreateBug != null) { throw ThrowOnCreateBug; } Logger.InfoFormat("Creating bug:"); // Generate a random ID int id; do { id = _rand.Next(1, int.MaxValue); } while (Bugs.ContainsKey(id)); Bugs[id] = new Dictionary <string, string>(values); CacheWorkItem(id); return(id); }