/// <summary>
        /// Add project file to the Db.
        /// </summary>
        /// <param name="model">'CreateProjectFileViewModel'</param>
        public void addProjectFile(CreateProjectFileViewModel model)
        {
            ProjectFile newProjectFile = new ProjectFile();

            newProjectFile._projectFileName = model._projectFileName + "." + model._projectFileType;
            newProjectFile._projectFileData = model._projectFileData;
            newProjectFile._projectFileType = "." + model._projectFileType;
            newProjectFile._aceExtension    = getAceExtensionByProjectId(model._projectID);
            newProjectFile._projectID       = model._projectID;

            _db._projectFiles.Add(newProjectFile);
            _db.SaveChanges();
        }
 public ActionResult CreateNewProjectFile(int?id)
 {
     if (id != null)
     {
         if (_projectService.projectExist(id.Value))
         {
             if (_userService.isProjectOwner(User.Identity.Name, id.Value))
             {
                 CreateProjectFileViewModel model = new CreateProjectFileViewModel();
                 model._projectID = id.Value;
                 return(View(model));
             }
         }
     }
     return(HttpNotFound());
 }
 public ActionResult CreateNewProjectFile(CreateProjectFileViewModel model)
 {
     if (!ModelState.IsValid)
     {
         CreateProjectFileViewModel viewModel = new CreateProjectFileViewModel();
         viewModel._projectFileName = model._projectFileName;
         viewModel._projectID       = model._projectID;
         return(View("CreateNewProjectFile", viewModel));
     }
     else
     {
         model._projectFileType = _projectFileService.getFileTypeByProjectId(model._projectID);
         model._projectFileData = "";
         _projectFileService.addProjectFile(model);
         ProjectViewModel viewModel = _projectService.getProjectByProjectId(User.Identity.Name, model._projectID);
         return(View("DisplayProject", viewModel));
     }
 }
        public void TestAddProjectFile()
        {
            // Arrange:
            CreateProjectFileViewModel model = new CreateProjectFileViewModel();

            model._projectID          = 2;
            model._projectFileName    = "AddTestFile_01";
            model._projectFileType    = ".css";
            model._projectFileData    = "hodor hodOr HODOr...hODOr";
            model._isUserProjectOwner = true;

            bool initialValue = _service.doesProjectFileExist(0);

            // Act:
            _service.addProjectFile(model);
            initialValue = _service.doesProjectFileExist(0);

            // Assert:
            Assert.IsTrue(initialValue);
        }
        public void TestUpdateProjectFile()
        {
            // Arrange:
            CreateProjectFileViewModel model = new CreateProjectFileViewModel();

            model._projectID          = 2;
            model._projectFileName    = "AddTestFile_01";
            model._projectFileType    = ".css";
            model._projectFileData    = "hodor hodOr HODOr...hODOr";
            model._isUserProjectOwner = true;

            _service.addProjectFile(model);

            ProjectFileViewModel modelUpdate = new ProjectFileViewModel();

            modelUpdate._id = 0;
            modelUpdate._projectFileData = "bacon bacOn BACOn...bACOn";

            // Act:
            _service.updateProjectFile(modelUpdate);

            // Assert:
            Assert.AreEqual("bacon bacOn BACOn...bACOn", _service.getProjectFileByProjectFileId(0)._projectFileData);
        }