public async Task Chubb_SpecialtyQuestionQuery_ShouldReturnCorrectQuestions(ChubbSpecialty specialty) { List <ChubbQuestion> expectedQuestions = ChubbSpecialtyQuestions.GetQuestions(specialty); var actualQuestions = await _httpHelpers.GetQuestionsForClassification(_productId, "specialty", (int)specialty); actualQuestions.Length.Should().Be(expectedQuestions.Count); foreach (var question in expectedQuestions) { actualQuestions.Should().Contain(q => q.Description == question.Description); } }
public static List <ChubbQuestion> GetQuestions(ChubbSpecialty specialty) { var questions = new List <ChubbQuestion> { ChubbQuestions[1], ChubbQuestions[18], ChubbQuestions[19], ChubbQuestions[23], ChubbQuestions[24] }; switch (specialty) { case ChubbSpecialty.ArtStudioIncludingArtLessons: case ChubbSpecialty.DirectMarketing: questions.Add(ChubbQuestions[7]); questions.Add(ChubbQuestions[8]); break; case ChubbSpecialty.BicycleStores: questions.Add(ChubbQuestions[11]); questions.Add(ChubbQuestions[17]); break; case ChubbSpecialty.BridalStores: questions.Add(ChubbQuestions[17]); break; case ChubbSpecialty.BakeryStoreNoBakingOnPremises: case ChubbSpecialty.ButcherShops: case ChubbSpecialty.CandyOrConfectionaryStoresNoManufacturing: case ChubbSpecialty.CheeseShops: case ChubbSpecialty.CoffeeShops: case ChubbSpecialty.CupcakeStores: case ChubbSpecialty.DessertShops: case ChubbSpecialty.DonutAndBagelShops: case ChubbSpecialty.FrozenYogurtStores: case ChubbSpecialty.FruitsAndVegetablesStores: case ChubbSpecialty.IceCreamStores: case ChubbSpecialty.JuiceBar: case ChubbSpecialty.SmoothieBar: case ChubbSpecialty.SnackBar: questions.Add(ChubbQuestions[10]); break; case ChubbSpecialty.DelicatessensNoCooking: case ChubbSpecialty.SandwichShopNoCooking: questions.Add(ChubbQuestions[10]); questions.Add(ChubbQuestions[12]); break; case ChubbSpecialty.Housekeeping: questions.Add(ChubbQuestions[15]); questions.Add(ChubbQuestions[16]); break; case ChubbSpecialty.BillingServiceMedical: case ChubbSpecialty.Acupuncturists: case ChubbSpecialty.Allergists: case ChubbSpecialty.AudioogistsTestingOnly: case ChubbSpecialty.Cardiologists: case ChubbSpecialty.Chiropractors: case ChubbSpecialty.Dermatologists: case ChubbSpecialty.DiagnosticCenters: case ChubbSpecialty.DialysisCenters: case ChubbSpecialty.Dieticians: case ChubbSpecialty.EarNoseandThroat: case ChubbSpecialty.Endocrinologists: case ChubbSpecialty.Gastroenterologists: case ChubbSpecialty.GeneralHealthPractitionersPrimaryCarePhysicians: case ChubbSpecialty.GeriatricSpecialists: case ChubbSpecialty.Gynecologists: case ChubbSpecialty.Hemotologists: case ChubbSpecialty.Internists: case ChubbSpecialty.Neurologists: case ChubbSpecialty.Obstetricians: case ChubbSpecialty.OccupationalTherapists: case ChubbSpecialty.Oncologists: case ChubbSpecialty.Ophthalmologists: case ChubbSpecialty.Optometrists: case ChubbSpecialty.OrthopedicSurgeons: case ChubbSpecialty.Osteopaths: case ChubbSpecialty.Pediatricians: case ChubbSpecialty.Podiatrists: case ChubbSpecialty.Psychiatrists: case ChubbSpecialty.Psychologists: case ChubbSpecialty.Pulmonologists: case ChubbSpecialty.SpeechTherapists: case ChubbSpecialty.Urologists: questions.Add(ChubbQuestions[2]); questions.Add(ChubbQuestions[3]); break; case ChubbSpecialty.BarberShops: questions.Add(ChubbQuestions[9]); questions.Add(ChubbQuestions[22]); break; case ChubbSpecialty.PersonalTrainingHealthAndFitness: questions.Add(ChubbQuestions[20]); questions.Add(ChubbQuestions[21]); break; case ChubbSpecialty.Photographers: case ChubbSpecialty.Videographers: questions.Add(ChubbQuestions[13]); questions.Add(ChubbQuestions[14]); break; case ChubbSpecialty.RealEstateSales: questions.Add(ChubbQuestions[4]); break; case ChubbSpecialty.TravelAgencies: questions.Add(ChubbQuestions[5]); questions.Add(ChubbQuestions[6]); break; } return(questions); }