private static void deleteProject(string projectIDstring = null, string projectName = null) { AccessService dataService = new AccessService(); Guid projectID = new Guid(); if (string.IsNullOrEmpty(projectIDstring) ) { projectID = dataService.GetProjectIDbyName(projectName); } else { try { projectID = new Guid(projectIDstring); } catch (Exception) { Console.WriteLine("Problem creating Guid, delete has failed"); return; } } if (projectID == Guid.Empty) { Console.WriteLine("Problem getting ID for " + projectName); return; } projectName = dataService.GetProjectNameForID(projectID); int updatesRemoved = 0; var context = createContext(); List<StatusUpdate> updatesToRemove = context.StatusUpdates.Where(u => u.ProjectID == projectID).ToList(); updatesRemoved = updatesToRemove.Count; context.StatusUpdates.RemoveRange(updatesToRemove); context.SaveChanges(); Console.WriteLine("Removed " + updatesRemoved + " updates from Status Update Table"); List<ProjectPhase> projectPhases = context.ProjectPhases.Where(p => p.ProjectID == projectID).ToList(); int phaseEntryCount = projectPhases.Count(p => p.ProjectID == projectID); context.ProjectPhases.RemoveRange(projectPhases); context.SaveChanges(); Console.WriteLine("Removed " + phaseEntryCount + " ProjectPhase entries"); Project projectToDelete = context.Projects.FirstOrDefault(p => p.ProjectID == projectID); context.Projects.Remove(projectToDelete); context.SaveChanges(); Console.WriteLine("Project " + projectName + " with ID=" + projectID + " is removed"); }
public void GetProjectIDbyNameTest() { var dataAccess = new AccessService(); // Grab a list of all the projects in the database List<Project> allProjects = dataAccess.GetAllProjectNames(); if (allProjects.Count != 0) { // Pick a random project and get the ID and the (correct) project name Random random = new Random(); int randomNumber = random.Next(0, allProjects.Count); Guid randomProjectID = allProjects[randomNumber].ProjectID; string randomProjectName = allProjects[randomNumber].ProjectName; // Using the ID, use the function that we are testing to retrieve the projectname Guid checkThisID = dataAccess.GetProjectIDbyName(randomProjectName); // Check if it is correct. boom. Assert.AreEqual(checkThisID, randomProjectID); } else { Assert.Inconclusive("Database might be empty, try rerunning with data"); } }
public void DeleteProjectTest() { AccessService dbService = new AccessService(); //var projectUpdates = dbService.GetProjectUpdates("6a8a7e56-e9ac-4385-a8be-5be702c1f2e6"); UpdatePackage package = new UpdatePackage(); package.ProjectName = "Test Project"; package.Subject = "Deployment"; package.Body = "Environment:br549|Jimmy, toloose"; package.Updates.Add("verticalID", "3"); package.Updates.Add("Environment", "br549"); package.Updates.Add("Author", "Samantha"); package.Updates.Add("Manager", "Bocephus"); //__Adding this package should create a new Project and return the ProjectID as string string stId = dbService.RecordUpdatePackage(package); Assert.IsFalse(string.IsNullOrEmpty(stId)); Guid projectID = Guid.Parse(stId); Assert.IsFalse(projectID == Guid.Empty); Guid recordedId = dbService.GetProjectIDbyName(package.ProjectName); Assert.AreEqual(projectID, recordedId); // This is the actual test - let's see if it actually deletes the project dbService.DeleteProject(projectID); // When we look for updates, it should be null or empty. // We will not test this part because the code crashes if you try and // delete a project that does not exist and we are in code freeze. // Assert.IsNull(dbService.GetAllUpdatesForProject(projectID.ToString())); }
public void RecordUpdatePackageTest() { AccessService dbService = new AccessService(); //var projectUpdates = dbService.GetProjectUpdates("6a8a7e56-e9ac-4385-a8be-5be702c1f2e6"); UpdatePackage package = new UpdatePackage(); package.ProjectName = "Test Project"; package.Subject = "Deployment"; package.Body = "Environment:br549|Jimmy, toloose"; package.Updates.Add("verticalID", "3"); package.Updates.Add("Environment", "br549"); package.Updates.Add("Author", "Samantha"); package.Updates.Add("Manager", "Bocephus"); //__Adding this package should create a new Project and return the ProjectID as string string stId = dbService.RecordUpdatePackage(package); Assert.IsFalse(string.IsNullOrEmpty(stId)); Guid projectID = Guid.Parse(stId); Assert.IsFalse(projectID == Guid.Empty); Guid recordedId = dbService.GetProjectIDbyName(package.ProjectName); Assert.AreEqual(projectID, recordedId); dbService.DeleteProject(projectID); }