Example #1
0
        public async Task <IHttpActionResult> PutStandardCategory(int id, StandardCategory standardCategory)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != standardCategory.Id)
            {
                return(BadRequest());
            }

            db.Entry(standardCategory).State = EntityState.Modified;

            try
            {
                await db.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!StandardCategoryExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
 public void CategoryClass_Fileds_TasksFieldThrowsExceptionOnNullObject()
 {
     // Prepare and Execute:
     _ = new StandardCategory
     {
         Tasks = null
     };
 }
 public void CategoryClass_Fileds_NameFieldThrowsExceptionOnEmptyString()
 {
     // Prepare and Execute:
     _ = new StandardCategory
     {
         Name = ""
     };
 }
Example #4
0
        /// <summary>
        /// Returns a list of all displayable cybersecurity standards.
        /// Standards recommended for the assessment's demographics are marked as 'recommended.'
        /// </summary>
        /// <returns></returns>
        public StandardsResponse GetStandards(int assessmentId)
        {
            StandardsResponse response = new StandardsResponse();

            List <StandardCategory>            categories    = new List <StandardCategory>();
            List <CSETWeb_Api.Models.Standard> standardsList = new List <CSETWeb_Api.Models.Standard>();
            List <string> recommendedSets = RecommendedStandards(assessmentId);
            List <string> selectedSets    = new List <string>();


            using (var db = new CSET_Context())
            {
                // Build a list of standards already selected for this assessment
                selectedSets = db.AVAILABLE_STANDARDS.Where(x => x.Assessment_Id == assessmentId && x.Selected).Select(x => x.Set_Name).ToList();


                var query = from sc in db.SETS_CATEGORY
                            from s in db.SETS.Where(set => set.Set_Category_Id == sc.Set_Category_Id &&
                                                    !set.Is_Deprecated && (set.Is_Displayed ?? false) &&
                                                    (!set.IsEncryptedModule ||
                                                     (set.IsEncryptedModule && (set.IsEncryptedModuleOpen ?? true)))
                                                    )
                            select new { s, sc.Set_Category_Name };

                var result = query.OrderBy(x => x.Set_Category_Name).ThenBy(x => x.s.Order_In_Category).ToList();


                string currCategoryName = string.Empty;
                foreach (var set in result)
                {
                    if (set.Set_Category_Name != currCategoryName)
                    {
                        // create a new Category
                        StandardCategory cat = new StandardCategory();
                        cat.CategoryName = set.Set_Category_Name;
                        categories.Add(cat);

                        currCategoryName = set.Set_Category_Name;
                    }

                    CSETWeb_Api.Models.Standard std = new CSETWeb_Api.Models.Standard
                    {
                        Code        = set.s.Set_Name,
                        FullName    = set.s.Full_Name,
                        Description = set.s.Standard_ToolTip,
                        Selected    = selectedSets.Contains(set.s.Set_Name),
                        Recommended = recommendedSets.Contains(set.s.Set_Name)
                    };
                    categories.Last().Standards.Add(std);
                }

                // Build the response
                response.Categories       = categories;
                response.QuestionCount    = new QuestionsManager(assessmentId).NumberOfQuestions();
                response.RequirementCount = new RequirementsManager(assessmentId).NumberOfRequirements();
                return(response);
            }
        }
Example #5
0
        public async Task <IHttpActionResult> GetStandardCategory(int id)
        {
            StandardCategory standardCategory = await db.StandardCategories.FindAsync(id);

            if (standardCategory == null)
            {
                return(NotFound());
            }

            return(Ok(standardCategory));
        }
        public void CategoryClass_Fileds_NameFieldGetterWorksCorretly()
        {
            // Prepare and Execute:
            var obj = new StandardCategory()
            {
                Name = "a"
            };

            // Verify:
            Assert.AreEqual("a", obj.Name);
        }
Example #7
0
        public async Task <IHttpActionResult> PostStandardCategory(StandardCategory standardCategory)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.StandardCategories.Add(standardCategory);
            await db.SaveChangesAsync();

            return(CreatedAtRoute("DefaultApi", new { id = standardCategory.Id }, standardCategory));
        }
        public void CategoryClass_Fileds_TasksFieldGetterWorksCorretly()
        {
            // Prepare and Execute:
            var list = new List <ITask>();
            var obj  = new StandardCategory()
            {
                Tasks = list
            };

            // Verify:
            Assert.AreEqual(list, obj.Tasks);
        }
Example #9
0
        public async Task <IHttpActionResult> DeleteStandardCategory(int id)
        {
            StandardCategory standardCategory = await db.StandardCategories.FindAsync(id);

            if (standardCategory == null)
            {
                return(NotFound());
            }

            db.StandardCategories.Remove(standardCategory);
            await db.SaveChangesAsync();

            return(Ok(standardCategory));
        }
        public void CategoryClass_Method_EqualNamesMethodWorksForFalse()
        {
            // Prepare:
            var obj1 = new StandardCategory()
            {
                Name = "name"
            };
            var obj2 = new StandardCategory()
            {
                Name = "name1"
            };
            // Execute:
            var result = obj1.EqualsNames(obj2.Name);

            // Verify:
            Assert.IsFalse(result);
        }
        public void CategoryClass_Method_EqualMethodWorksForTrue()
        {
            // Prepare:
            var list = new List <ITask>();
            var obj1 = new StandardCategory()
            {
                Name  = "name",
                Tasks = list
            };
            var obj2 = new StandardCategory()
            {
                Name  = "name",
                Tasks = list
            };
            // Execute:
            var result = obj1.Equals(obj2);

            // Verify:
            Assert.IsTrue(result);
        }
Example #12
0
 public CategorySearchViewModel(StandardCategory category) : base(category)
 {
 }