Best Cerberus-source code snippet using org.cerberus.servlet.crud.testdata.ReadTestDataLib.getTestCasesUsingTestDataLib
Source:ReadTestDataLib.java
...122 JSONObject jsonResponse;123 if (request.getParameter("testdatalibid") != null && !hasError) {124 if (request.getParameter("name") != null && request.getParameter("country") != null) {125 //gets all test cases that use a library126 answer = getTestCasesUsingTestDataLib(testDataLibId, name, country, appContext, userHasPermissions);127 } else {128 //gets a lib by id129 answer = findTestDataLibByID(testDataLibId, appContext, userHasPermissions, request.getUserPrincipal().getName());130 }131 } else if (request.getParameter("name") != null && request.getParameter("limit") != null && request.getParameter("like") != null) {132 answer = findTestDataLibNameList(name, limit, like, appContext);133 } else if (request.getParameter("groups") != null) {134 //gets the list of distinct groups135 answer = findDistinctGroups(appContext);136 } else if (!Strings.isNullOrEmpty(columnName)) {137 answer = findDistinctValuesOfColumn(appContext, request, columnName);138 jsonResponse = (JSONObject) answer.getItem();139 } else {140 //no parameters, then retrieves the full list141 answer = findTestDataLibList(appContext, request);142 }143 jsonResponse = (JSONObject) answer.getItem();144 jsonResponse.put("messageType", answer.getResultMessage().getMessage().getCodeString());145 jsonResponse.put("message", answer.getResultMessage().getDescription());146 response.getWriter().print(jsonResponse.toString());147 } catch (JSONException e) {148 LOG.warn(e);149 //returns a default error message with the json format that is able to be parsed by the client-side150 response.getWriter().print(AnswerUtil.createGenericErrorAnswer());151 }152 }153 /**154 * Auxiliary method that retrieves a list of test data library entries with155 * basis on the GUI information (datatable)156 *157 * @param appContext - context object used to get the required beans158 * @param request - object that contains the search and sort filters used to159 * retrieve the information to be displayed in the GUI.160 * @return object containing the info to be displayed in the GUI161 * @throws IOException162 * @throws BeansException163 * @throws NumberFormatException164 * @throws JSONException165 */166 private AnswerItem<JSONObject> findTestDataLibList(ApplicationContext appContext, HttpServletRequest request) throws IOException, BeansException, NumberFormatException, JSONException {167 AnswerItem<JSONObject> item = new AnswerItem<>();168 JSONObject jsonResponse = new JSONObject();169 testDataLibService = appContext.getBean(ITestDataLibService.class);170 int startPosition = Integer.valueOf(ParameterParserUtil.parseStringParam(request.getParameter("iDisplayStart"), "0"));171 int length = Integer.valueOf(ParameterParserUtil.parseStringParam(request.getParameter("iDisplayLength"), "0"));172 /*int sEcho = Integer.valueOf(request.getParameter("sEcho"));*/173 String searchParameter = ParameterParserUtil.parseStringParam(request.getParameter("sSearch"), "");174 int columnToSortParameter = Integer.parseInt(ParameterParserUtil.parseStringParam(request.getParameter("iSortCol_0"), "0"));175 String sColumns = ParameterParserUtil.parseStringParam(request.getParameter("sColumns"),176 "tdl.TestDataLibID,tdl.Name,tdl.System,tdl.Environment,tdl.Country,tdl.Group,tdl.Type,tdl.Database,tdl.Script,tdl.ServicePath,tdl.Method,tdl.Envelope,tdl.databaseCsv,tdl.Description");177 String columnToSort[] = sColumns.split(",");178 String columnName = columnToSort[columnToSortParameter];179 String sort = ParameterParserUtil.parseStringParam(request.getParameter("sSortDir_0"), "asc");180 List<String> systems = ParameterParserUtil.parseListParamAndDecodeAndDeleteEmptyValue(request.getParameterValues("system"), Arrays.asList("DEFAULT"), "UTF-8");181 Map<String, List<String>> individualSearch = new HashMap<String, List<String>>();182 List<String> individualLike = new ArrayList<>(Arrays.asList(request.getParameter("sLike").split(",")));183 for (int a = 0; a < columnToSort.length; a++) {184 if (null != request.getParameter("sSearch_" + a) && !request.getParameter("sSearch_" + a).isEmpty()) {185 List<String> search = new ArrayList<>(Arrays.asList(request.getParameter("sSearch_" + a).split(",")));186 if (individualLike.contains(columnToSort[a])) {187 individualSearch.put(columnToSort[a] + ":like", search);188 } else {189 individualSearch.put(columnToSort[a], search);190 }191 }192 }193 AnswerList<TestDataLib> resp = testDataLibService.readByVariousByCriteria(null, systems, null, null, null, startPosition, length, columnName, sort, searchParameter, individualSearch);194 JSONArray jsonArray = new JSONArray();195 boolean userHasPermissions = request.isUserInRole("TestDataManager");196 if (resp.isCodeEquals(MessageEventEnum.DATA_OPERATION_OK.getCode())) {//the service was able to perform the query, then we should get all values197 for (TestDataLib testDataLib : (List<TestDataLib>) resp.getDataList()) {198 jsonArray.put(convertTestDataLibToJSONObject(testDataLib, false));199 }200 }201 //recordsFiltered do lado do servidor 202 jsonResponse.put("hasPermissions", userHasPermissions);203 jsonResponse.put("contentTable", jsonArray);204 jsonResponse.put("iTotalRecords", resp.getTotalRows());205 jsonResponse.put("iTotalDisplayRecords", resp.getTotalRows());206 //recordsFiltered207 item.setItem(jsonResponse);208 item.setResultMessage(resp.getResultMessage());209 return item;210 }211 /**212 * Auxiliary method that finds a test data library entry with basis on an213 * identifier214 *215 * @param appContext - context object used to get the required beans216 * @param testDatalib - identifier used to perform the search217 * @return an object containing the information about the test data library218 * that matches the identifier219 * @throws JSONException220 */221 private AnswerItem<JSONObject> findTestDataLibByID(int testDatalib, ApplicationContext appContext, boolean userHasPermissions, String userName) throws JSONException {222 AnswerItem<JSONObject> item = new AnswerItem<>();223 JSONObject object = new JSONObject();224 testDataLibService = appContext.getBean(ITestDataLibService.class);225 //finds the testdatalib 226 AnswerItem answer = testDataLibService.readByKey(testDatalib);227 if (answer.isCodeEquals(MessageEventEnum.DATA_OPERATION_OK.getCode())) {228 //if the service returns an OK message then we can get the item and convert it to JSONformat229 TestDataLib lib = (TestDataLib) answer.getItem();230 JSONObject response = convertTestDataLibToJSONObject(lib, true);231 userHasPermissions = userHasPermissions && testDataLibService.userHasPermission(lib, userName);232 object.put("testDataLib", response);233 }234 object.put("hasPermissions", userHasPermissions);235 item.setItem(object);236 item.setResultMessage(answer.getResultMessage());237 return item;238 }239 /**240 * Handles the auto-complete requests and retrieves a limited list of241 * strings that match (totally or partially) the name entered by the user.242 *243 * @param appContext - context object used to get the required beans244 * @param nameToSearch - value used to perform the auto complete245 * @param limit - limit number of the records that should be retrieved246 * @return object containing values that match the name247 * @throws JSONException248 */249 private AnswerItem<JSONObject> findTestDataLibNameList(String nameToSearch, int limit, boolean like, ApplicationContext appContext) throws JSONException {250 AnswerItem<JSONObject> ansItem = new AnswerItem<>();251 JSONObject object = new JSONObject();252 testDataLibService = appContext.getBean(ITestDataLibService.class);253 AnswerList<TestDataLib> ansList = testDataLibService.readNameListByName(nameToSearch, limit, like);254 JSONArray jsonArray = new JSONArray();255 if (ansList.isCodeEquals(MessageEventEnum.DATA_OPERATION_OK.getCode())) {//the service was able to perform the query, then we should get all values256 for (TestDataLib testDataLib : (List<TestDataLib>) ansList.getDataList()) {257 jsonArray.put(convertTestDataLibToJSONObject(testDataLib, false));258 }259 }260 //recordsFiltered do lado do servidor 261 object.put("contentTable", jsonArray);262 object.put("iTotalRecords", ansList.getTotalRows());263 object.put("iTotalDisplayRecords", ansList.getTotalRows());264 //recordsFiltered265 ansItem.setResultMessage(ansList.getResultMessage());266 ansItem.setItem(object);267 return ansItem;268 }269 /**270 * Auxiliary method that extracts the list of test cases that are currently271 * using one test lib.272 *273 * @param appContext - context object used to get the required beans274 * @param testDataLibId - identifier of the library entry275 * @param name - name of the library entry276 * @param country - country of the library entry277 * @return an answer item containing the information about the test cases278 * that use the entry279 * @throws JSONException280 */281 private AnswerItem<JSONObject> getTestCasesUsingTestDataLib(int testDataLibId, String name, String country, ApplicationContext appContext, boolean userHasPermissions) throws JSONException {282 JSONObject object = new JSONObject();283 JSONArray objectArray = new JSONArray();284 AnswerItem<JSONObject> ansItem = new AnswerItem<>();285 tcService = appContext.getBean(ITestCaseService.class);286 AnswerList<TestListDTO> ansList = tcService.findTestCasesThatUseTestDataLib(testDataLibId, name, country);287 //if the response is success then we can iterate and search for the data288 if (ansList.isCodeEquals(MessageEventEnum.DATA_OPERATION_OK.getCode())) {289 List<TestListDTO> listDTO = ansList.getDataList();290 for (TestListDTO l : listDTO) {291 JSONArray jsonArray = new JSONArray();292 JSONArray arrTestCase = new JSONArray();293 for (TestCaseListDTO testCase : l.getTestCaseList()) {294 JSONObject jsonTestCase = new JSONObject();295 jsonTestCase.put("TestCaseNumber", testCase.getTestCaseNumber());...
getTestCasesUsingTestDataLib
Using AI Code Generation
1import org.cerberus.servlet.crud.testdata.ReadTestDataLib;2import java.util.ArrayList;3import java.util.List;4import java.util.logging.Level;5import java.util.logging.Logger;6import org.cerberus.crud.entity.TestDataLib;7import org.cerberus.crud.entity.TestCase;8import org.cerberus.crud.factory.IFactoryTestDataLib;9import org.cerberus.crud.factory.impl.FactoryTestDataLib;10import org.cerberus.crud.service.ITestDataLibService;11import org.cerberus.crud.service.impl.TestDataLibService;12import org.cerberus.engine.entity.MessageEvent;13import org.cerberus.engine.entity.MessageGeneral;14import org.cerberus.exception.CerberusException;15import org.cerberus.util.answer.AnswerList;16import org.cerberus.util.answer.AnswerItem;17List<String> testCases = new ArrayList<String>();18String system = "SYSTEM_NAME";19String testdatalibname = "TESTDATALIB_NAME";20if (system != null && !system.isEmpty() && testdatalibname != null && !testdatalibname.isEmpty()) {21 ReadTestDataLib readTestDataLib = new ReadTestDataLib();22 ITestDataLibService testDataLibService = new TestDataLibService();23 IFactoryTestDataLib factoryTestDataLib = new FactoryTestDataLib();24 try {25 AnswerItem answer = testDataLibService.readByKey(system, testdatalibname);26 if (answer.isCodeEquals(MessageEventEnum.DATA_OPERATION_OK.getCode())) {27 TestDataLib testDataLib = (TestDataLib) answer.getItem();28 AnswerList answerList = readTestDataLib.getTestCasesUsingTestDataLib(testDataLib);29 if (answerList.isCodeEquals(MessageEventEnum.DATA_OPERATION_OK.getCode())) {30 List<TestCase> testCaseList = (List<TestCase>) answerList.getDataList();31 for (TestCase testCase : testCaseList) {32 testCases.add(testCase.getTest() + "-" + testCase.getTestCase());33 }34 }35 }36 } catch (CerberusException ex) {37 Logger.getLogger(ReadTestDataLib.class.getName()).log(Level.SEVERE, null, ex);38 }39}40return testCases;
getTestCasesUsingTestDataLib
Using AI Code Generation
1 String testDataLibID = request.getParameter("id");2 List<String> testCasesUsingTestDataLib = testdataLibService.getTestCasesUsingTestDataLib(testDataLibID);3 if (!testCasesUsingTestDataLib.isEmpty()) {4 model.addAttribute("testCasesUsingTestDataLib", testCasesUsingTestDataLib);5 }6 TestDataLib testDataLib = testdataLibService.findTestDataLibByKey(testDataLibID);7 model.addAttribute("testdataLib", testDataLib);8 model.addAttribute("id", testDataLibID);9 model.addAttribute("user", request.getUserPrincipal().getName());10 model.addAttribute("system", request.getRemoteUser());11 model.addAttribute("pageName", "TestDataLib");12 model.addAttribute("pageTitle", "Test Data Library");13 return "TestDataLibDelete";14 }15 @RequestMapping(value = "/Delete", method = RequestMethod.POST)16 public String deleteTestDataLib(HttpServletRequest request, Model model) {17 String testDataLibID = request.getParameter("id");18 List<String> testCasesUsingTestDataLib = testdataLibService.getTestCasesUsingTestDataLib(testDataLibID);19 if (!testCasesUsingTestDataLib.isEmpty()) {20 model.addAttribute("testCasesUsingTestDataLib", testCasesUsingTestDataLib);21 }22 TestDataLib testDataLib = testdataLibService.findTestDataLibByKey(testDataLibID);23 model.addAttribute("testdataLib", testDataLib);
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!