public bool APIGetCourses(object[] lStrvalue) { try { clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string result = string.Empty; //string allCourseResultresult = string.Empty; //string singleCourseresult = string.Empty; clsGeneric oGeneric = new clsGeneric(); string URI = string.Empty; Hashtable htblTestData = new Hashtable(); htblTestData = oGeneric.GetTestData(lStrvalue); bool _Flag = false; User userID = new User(); GetAPICredentials oGetAPICredentials = new GetAPICredentials(); //Get Org ID at runtime clsPage oPage = new clsPage(iWebdriver); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; Thread.Sleep(clsGlobalVariable.iWaitHigh); //Get Org ID at runtime oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", clsAPI.apiURI + clsAPI.orgCredential.Replace("$", clsAPI.orgID), oGetAPICredentials, "H2", "", ""); var orgCredential = JsonConvert.DeserializeObject <GetAPICredentials>(result); Crypto3DES _des = new Crypto3DES(ApplicationSettings.EComModuleEncKey()); _ecomTransactionKey = _des.Decrypt3DES(orgCredential.TransactionKey); _ecomLoginKey = _des.Decrypt3DES(orgCredential.LoginID); //API will be hit to get all courses if (htblTestData["RequestType"].ToString() == "All") { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", clsAPI.apiURI + clsAPI.GetAllCourses.Replace("{orgid}", clsAPI.orgID), userID, htblTestData["TestCaseType"].ToString(), _ecomLoginKey, _ecomTransactionKey); var userData = JsonConvert.DeserializeObject <List <clsAPICourse> >(result); if (userData.Count > 1) { _Flag = true; } else { _Flag = false; } return(_Flag); } //API will be hit to get single course if (htblTestData["RequestType"].ToString() == "Single") { //Get All Users oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", clsAPI.apiURI + clsAPI.GetAllCourses.Replace("{orgid}", clsAPI.orgID), userID, htblTestData["TestCaseType"].ToString(), _ecomLoginKey, _ecomTransactionKey); var courseData = JsonConvert.DeserializeObject <List <clsAPICourse> >(result); if (courseData.Count > 0) { //Find the User that we created and get its ID for (int iCourses = 0; iCourses < courseData.Count; iCourses++) { if (courseData[iCourses].Name.ToString().Contains(htblTestData["CourseName"].ToString())) { string courseid = courseData[iCourses].ID.ToString(); //Use the ID to create a specific URL to get particular user oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", clsAPI.apiURI + clsAPI.GetSingleCourse.Replace("{orgid}", clsAPI.orgID).Replace("{CourseID}", courseid), userID, htblTestData["TestCaseType"].ToString(), _ecomLoginKey, _ecomTransactionKey); var singleCourseData = JsonConvert.DeserializeObject <clsAPICourse>(result); if (singleCourseData.Name.Contains(htblTestData["CourseName"].ToString())) { _Flag = true; break; } else { _Flag = false; } } else { _Flag = false; } } } } return(_Flag); } catch (Exception e) { clsException.ExceptionHandler(e, iWebdriver, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name); return(false); } }
public bool Enrolluser(object[] lStrValue) { clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string result = string.Empty; clsGeneric oGeneric = new clsGeneric(); string URI = string.Empty; Hashtable htblTestData = new Hashtable(); htblTestData = oGeneric.GetTestData(lStrValue); List <string> lCourseId = new List <string>(); bool _Flag = false; string _UserID = string.Empty; try { clsPage oPage = new clsPage(iWebdriver); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; lCourseId = oPage.GetCourseId(htblTestData["CourseName"].ToString()); Users oUser = new Users(); GetAPICredentials oGetAPICredentials = new GetAPICredentials(); oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.orgCredential.Replace("$", _orgID), oUser, "H2", "", ""); var orgCredential = JsonConvert.DeserializeObject <GetAPICredentials>(result); Crypto3DES _des = new Crypto3DES(ApplicationSettings.EComModuleEncKey()); _ecomTransactionKey = _des.Decrypt3DES(orgCredential.TransactionKey); _ecomLoginKey = _des.Decrypt3DES(orgCredential.LoginID); if (htblTestData["Status"].ToString().ToUpper().Contains("INACTIVE")) { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.user.Replace("{orgid}", _orgID) + "?F015=" + htblTestData["UserEmail"].ToString() + "*&userstatus=inactive", oUser, "H1", _ecomLoginKey, _ecomTransactionKey); } else if (htblTestData["Status"].ToString().ToUpper().Contains("DELETED")) { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.user.Replace("{orgid}", _orgID) + "?F015=" + htblTestData["UserEmail"].ToString() + "*&userstatus=Deleted", oUser, "H1", _ecomLoginKey, _ecomTransactionKey); } else { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.user.Replace("{orgid}", _orgID), oUser, "H1", _ecomLoginKey, _ecomTransactionKey); } var oUserData = JsonConvert.DeserializeObject <List <Users> >(result); for (int iUser = 0; iUser < oUserData.Count; iUser++) { if (oUserData[iUser].Profile.F015.ToString() == htblTestData["UserEmail"].ToString().Trim()) { _UserID = oUserData[iUser].ID; break; } } UserEnrollment oUserEnrollment = new ILMS.UserEnrollment(); oUserEnrollment.userid = _UserID; oGeneric.GetApiResponseCodeData(out statusCode, out result, "POST", ApplicationSettings.APIURI() + clsAPI.CourseEnrollment.Replace("{orgid}", _orgID).Replace("{CourseID}", lCourseId[0].ToString().Trim()), oUserEnrollment, "H1", _ecomLoginKey, _ecomTransactionKey); Thread.Sleep(clsGlobalVariable.iWaitHigh); if (htblTestData["TestCaseType"].ToString().ToUpper() == "NEGATIVE") { if (result.ToUpper().Contains("!DOCTYPE")) { clsGlobalVariable.strExceptionReport = "Resource not found"; return(true); } var oError = JsonConvert.DeserializeObject <List <SuperAdminCoursePushDownError> >(result); SuperAdminCoursePushDownErrorCode oErrorCode = new SuperAdminCoursePushDownErrorCode(); foreach (string strErrorCode in oErrorCode.coursePushDownErrorCode) { if (strErrorCode == oError[0].ErrorCode) { _Flag = true; } } if (_Flag == true) { return(true); } else { clsGlobalVariable.strExceptionReport = "Negative Case Failed!"; return(false); } } do { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.CourseEnrollment.Replace("{orgid}", _orgID).Replace("{CourseID}", lCourseId[0].ToString().Trim()), oUserEnrollment, "H1", _ecomLoginKey, _ecomTransactionKey); } while (result == ""); if (htblTestData["Status"].ToString().ToUpper() == "INACTIVE") { do { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetTranscript.Replace("{orgid}", _orgID).Replace("{UserID}", _UserID.ToString().Trim()), oUserEnrollment, "H1", _ecomLoginKey, _ecomTransactionKey); } while (result == ""); var oTranscriptData = JsonConvert.DeserializeObject <List <clsAPITranscript> >(result); for (int icount = 0; icount < oTranscriptData.Count; icount++) { if (oTranscriptData[icount].CourseName.ToString().ToUpper().Equals(htblTestData["CourseName"].ToString().ToUpper())) { return(true); } } return(false); } var oCourseData = JsonConvert.DeserializeObject <List <CourseData> >(result); for (int iUser = 0; iUser < oCourseData.Count; iUser++) { if (oCourseData[iUser].User.Profile_Basic.F015.ToString() == htblTestData["UserEmail"].ToString().Trim()) { _UserID = oUserData[iUser].ID; _Flag = true; break; } else { _Flag = false; } } try { if (htblTestData["Status"].ToString().ToUpper() == "Deleted".ToUpper()) { if (_Flag == true) { return(true); } else { return(false); } } } catch { } if (_Flag == true) { iWebdriver.Navigate().GoToUrl(oPage.SetUrl(htblTestData["url"].ToString())); clsGlobalVariable.strExceptionReport = string.Empty; string tag = ApplicationSettings.ElementByPath(); object[] objparam = new object[] { ApplicationSettings.EleUserName(), ApplicationSettings.ElePassword(), ApplicationSettings.EleLogin() }; System.Threading.Thread.Sleep(clsGlobalVariable.iWaitMedium); if (iWebdriver.GetType().Name.Contains("InternetExplorer") && clsGlobalVariable.IEFlag == true) { iWebdriver.Navigate().GoToUrl("javascript:document.getElementById('overridelink').click()"); clsGlobalVariable.IEFlag = false; } try { System.Threading.Thread.Sleep(clsGlobalVariable.iWaitHigh); iWebdriver.FindElement((By)oGeneric.InvokeMethodwith_Param(tag, new object[] { objparam[0].ToString() })).SendKeys(htblTestData["UserEmail"].ToString()); iWebdriver.FindElement((By)oGeneric.InvokeMethodwith_Param(tag, new object[] { objparam[1].ToString() })).SendKeys(htblTestData["Password"].ToString()); iWebdriver.FindElement((By)oGeneric.InvokeMethodwith_Param(tag, new object[] { objparam[2].ToString() })).Click(); iWebdriver.SwitchTo().DefaultContent(); iWebdriver.SwitchTo().Frame(clsPageObject.frmLCLeftFrame); iWebdriver.SwitchTo().Frame(clsPageObject.frmLCRightFrameFinal); if (iWebdriver.FindElement(By.XPath(clsPageObject.scormCourseName.Replace("$", htblTestData["CourseName"].ToString()))).Displayed) { return(true); } else { clsGlobalVariable.strExceptionReport = "User is not enrolled in " + htblTestData["CourseName"].ToString(); return(false); } } catch (Exception ex) { clsGlobalVariable.strExceptionReport = "User is not enrolled in " + htblTestData["CourseName"].ToString(); return(false); } } else { return(false); } } catch (Exception ex) { } return(_Flag); }
public bool ActivateDeactiveCourse(string courseName, string FlagActiveInactive) { bool _flag = false; string courseId = string.Empty; try { clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string result = string.Empty; GetAPICredentials oGetAPICredentials = new GetAPICredentials(); //Get Org ID at runtime clsPage oPage = new clsPage(iWebdriver); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; clsGeneric oGeneric = new clsGeneric(); Thread.Sleep(clsGlobalVariable.iWaitHigh); //Get Org ID at runtime clsGenericAPI oGenericAPI = new clsGenericAPI(); /////////////geting or credential oGenericAPI.GetORGCredentials(out _ecomTransactionKey, out _ecomLoginKey, _orgID); //////getting all courses oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", clsAPI.apiURI + clsAPI.GetAllCourses.Replace("{orgid}", clsAPI.orgID), oGetAPICredentials, "H1", _ecomLoginKey, _ecomTransactionKey); var courseData = JsonConvert.DeserializeObject <List <clsAPICourse> >(result); for (int iUser = 0; iUser < courseData.Count; iUser++) { if (courseData[iUser].Name == courseName.ToString()) { courseId = courseData[iUser].ID; break; } } /////////////////////////////activating deactivating course if (FlagActiveInactive.ToUpper() == "ACTIVATE") { oGeneric.GetApiResponseCodeData(out statusCode, out result, "PUT", clsAPI.apiURI + clsAPI.GetSingleCourse.Replace("{orgid}", clsAPI.orgID).Replace("{CourseID}", courseId) + "/Activate", oGetAPICredentials, "H1", _ecomLoginKey, _ecomTransactionKey); } else { oGeneric.GetApiResponseCodeData(out statusCode, out result, "DELETE", clsAPI.apiURI + clsAPI.GetSingleCourse.Replace("{orgid}", clsAPI.orgID).Replace("{CourseID}", courseId) + "/Activate", oGetAPICredentials, "H1", _ecomLoginKey, _ecomTransactionKey); } if (statusCode.Contains("204")) { _flag = true; } } catch (Exception e) { clsException.ExceptionHandler(e, iWebdriver, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name); return(false); } return(_flag); }
public bool FetchCourseDuedateSetting(Hashtable hTable) { clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string result = string.Empty; clsGeneric oGeneric = new clsGeneric(); string URI = string.Empty; List <string> lCourseId = new List <string>(); bool _Flag = false; string _UserID = string.Empty; try { clsPage oPage = new clsPage(iWebdriver); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; //Getting org API credentials GetAPICredentials oGetAPICredentials = new GetAPICredentials(); oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.orgCredential.Replace("$", _orgID), oGetAPICredentials, "H2", "", ""); var orgCredential = JsonConvert.DeserializeObject <GetAPICredentials>(result); Crypto3DES _des = new Crypto3DES(ApplicationSettings.EComModuleEncKey()); _ecomTransactionKey = _des.Decrypt3DES(orgCredential.TransactionKey); _ecomLoginKey = _des.Decrypt3DES(orgCredential.LoginID); DefaultDueDateSetting oDefaultDueDateSetting = new DefaultDueDateSetting(); //Getting couse id of my course lCourseId = oPage.GetCourseId(hTable["CourseName"].ToString()); //Hitting API URI if (hTable["TestCaseType"].ToString().ToUpper() == "POSITIVE") { //organizations/{orgID}/courses/{courseID}/duedate oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.CourseDuedateSetting.Replace("{orgid}", _orgID).Replace("{courseID}", lCourseId[0].ToString().Trim()), oDefaultDueDateSetting, "H1", _ecomLoginKey, _ecomTransactionKey); //var oCoursesettingdata = JsonConvert.DeserializeObject<DefaultDueDateSetting>(result); if (statusCode == "OK/200") { _Flag = true; } else { _Flag = false; } } else if (hTable["TestCaseType"].ToString().ToUpper() == "NEGATIVE") { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.CourseDuedateSetting.Replace("{orgid}", _orgID).Replace("{courseID}", lCourseId[0].ToString().Trim()), oDefaultDueDateSetting, "H1", _ecomLoginKey, _ecomTransactionKey); if (result.Contains("ErrorCode")) { _Flag = true; } else { _Flag = false; } } } catch (Exception e) { clsException.ExceptionHandler(e, iWebdriver, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name); return(false); } return(_Flag); }
public bool ModifyDepartment(Hashtable hTable) { clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string result = string.Empty; string RegionResult = string.Empty; clsGeneric oGeneric = new clsGeneric(); string URI = string.Empty; string strGroupID = string.Empty; List <string> lCourseId = new List <string>(); bool _Flag = false; string _UserID = string.Empty; try { clsPage oPage = new clsPage(iWebdriver); clsRegionApi oRegion = new clsRegionApi(); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; // oRegion.name = hTable["Name"].ToString(); GetAPICredentials oGetAPICredentials = new GetAPICredentials(); oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.orgCredential.Replace("$", _orgID), oGetAPICredentials, "H2", "", ""); var orgCredential = JsonConvert.DeserializeObject <GetAPICredentials>(result); Crypto3DES _des = new Crypto3DES(ApplicationSettings.EComModuleEncKey()); _ecomTransactionKey = _des.Decrypt3DES(orgCredential.TransactionKey); _ecomLoginKey = _des.Decrypt3DES(orgCredential.LoginID); //Get All Regions Data of above organization oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.Region.Replace("{orgid}", _orgID), oRegion, "H1", _ecomLoginKey, _ecomTransactionKey); //Convert the JSON data in List and put in a Local variable var RegionData = JsonConvert.DeserializeObject <List <GetRegion> >(result); //Find for my region and get its id and put in a variable string RegID = ""; for (int iRegions = 0; iRegions < RegionData.Count; iRegions++) { if (RegionData[iRegions].Name.Contains(hTable["RegionName"].ToString())) { RegID = RegionData[iRegions].ID.ToString(); break; } else { _Flag = false; } } //Get All Divisions of a Region oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", clsAPI.apiURI + clsAPI.updateRegion.Replace("{orgid}", _orgID).Replace("{regionID}", RegID) + "/divisions", oRegion, "H1", _ecomLoginKey, _ecomTransactionKey); var DivisionData = JsonConvert.DeserializeObject <List <GetRegion> >(result); //Find for my division and get its id and put in a variable string DivID = ""; for (int iDivs = 0; iDivs < DivisionData.Count; iDivs++) { if (DivisionData[iDivs].Name.Contains(hTable["DivisionName"].ToString())) { DivID = DivisionData[iDivs].ID.ToString(); break; } else { _Flag = false; } } //Get All Depts of a Reg and Division oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", clsAPI.apiURI + clsAPI.GetAllDepartments.Replace("{orgid}", _orgID).Replace("{regionID}", RegID).Replace("{divisionID}", DivID), oRegion, "H1", _ecomLoginKey, _ecomTransactionKey); var DeptData = JsonConvert.DeserializeObject <List <GetRegion> >(result); //Find for my dept and get its id and put in a variable string DeptID = ""; for (int iDepts = 0; iDepts < DeptData.Count; iDepts++) { if (DeptData[iDepts].Name.Contains(hTable["OldDeptName"].ToString())) { DeptID = DeptData[iDepts].ID.ToString(); break; } else { _Flag = false; } } Thread.Sleep(clsGlobalVariable.iWaitMedium); if (hTable["TestCaseType"].ToString().ToUpper() == "POSITIVE") { clsDepartmentApi DepartmentData = new clsDepartmentApi(); DepartmentData.Name = hTable["NewDeptName"].ToString(); oGeneric.GetApiResponseCodeData(out statusCode, out result, "PUT", clsAPI.apiURI + clsAPI.GetSingleDepartment.Replace("{orgid}", _orgID).Replace("{regionID}", RegID).Replace("{divisionID}", DivID).Replace("{deptID}", DeptID), DepartmentData, "H1", _ecomLoginKey, _ecomTransactionKey); if (statusCode == "NoContent/204") { _Flag = true; } else { _Flag = false; } } } catch (Exception e) { clsException.ExceptionHandler(e, iWebdriver, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name); return(false); } return(true); }
/// <summary> /// function to perform get request for transcript along with verification /// </summary> /// <param name="hTable">this is data used for this function to perform operation</param> /// <returns>true/false</returns> private bool GetTranscript(Hashtable hTable) { clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string result = string.Empty; clsGeneric oGeneric = new clsGeneric(); string URI = string.Empty; string courseID = string.Empty; bool _Flag = false; string _UserID = string.Empty; try { clsPage oPage = new clsPage(iWebdriver); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; courseID = GetID(hTable["CourseName"].ToString(), hTable["TranscriptFor"].ToString()); Users oUser = new Users(); GetAPICredentials oGetAPICredentials = new GetAPICredentials(); ////////////////////get api credentials for organization oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.orgCredential.Replace("$", _orgID), oUser, "H2", "", ""); var orgCredential = JsonConvert.DeserializeObject <GetAPICredentials>(result); Crypto3DES _des = new Crypto3DES(ApplicationSettings.EComModuleEncKey()); _ecomTransactionKey = _des.Decrypt3DES(orgCredential.TransactionKey); _ecomLoginKey = _des.Decrypt3DES(orgCredential.LoginID); #region get user id by there type if (hTable["UserStatus"].ToString().ToUpper().Contains("INACTIVE")) { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.user.Replace("{orgid}", _orgID) + "?F015=" + hTable["UserEmail"].ToString() + "*&userstatus=inactive", oUser, "H1", _ecomLoginKey, _ecomTransactionKey); } else if (hTable["UserStatus"].ToString().ToUpper().Contains("DELETED")) { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.user.Replace("{orgid}", _orgID) + "?F015=" + hTable["UserEmail"].ToString() + "*&userstatus=Deleted", oUser, "H1", _ecomLoginKey, _ecomTransactionKey); } else { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.user.Replace("{orgid}", _orgID), oUser, "H1", _ecomLoginKey, _ecomTransactionKey); } var oUserData = JsonConvert.DeserializeObject <List <Users> >(result); for (int iUser = 0; iUser < oUserData.Count; iUser++) { if (oUserData[iUser].Profile.F015.ToString() == hTable["UserMailID"].ToString().Trim()) { _UserID = oUserData[iUser].ID; break; } } #endregion #region Activate deactivate course clsAPI_Courses oclsAPI_Courses = new clsAPI_Courses(iWebdriver); oclsAPI_Courses.ActivateDeactiveCourse(hTable["CourseName"].ToString(), hTable["CourseStatus"].ToString().ToUpper()); #endregion //////////function to perform transcript function if (hTable["TranscriptFor"].ToString().ToUpper() == "CURRICULA") { _Flag = CurriclaTranscript(_orgID, _UserID, hTable["TestCaseType"].ToString(), hTable["CourseName"].ToString()); } else if (hTable["TranscriptFor"].ToString().ToUpper() == "SESSION") { } else { _Flag = GetUserTranscript(_orgID, _UserID, hTable["TestCaseType"].ToString(), hTable["CourseName"].ToString()); } if (_Flag == true) { return(true); } else { return(false); } } catch (Exception er) { clsGlobalVariable.strExceptionReport = "Something went wrong while fetching data from api"; return(false); } }
public bool UpdateCourseDuedateSetting(Hashtable hTable) { clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string result = string.Empty; clsGeneric oGeneric = new clsGeneric(); string URI = string.Empty; List <string> lCourseId = new List <string>(); bool _Flag = false; try { clsPage oPage = new clsPage(iWebdriver); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; //Getting org API credentials GetAPICredentials oGetAPICredentials = new GetAPICredentials(); oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.orgCredential.Replace("$", _orgID), oGetAPICredentials, "H2", "", ""); var orgCredential = JsonConvert.DeserializeObject <GetAPICredentials>(result); Crypto3DES _des = new Crypto3DES(ApplicationSettings.EComModuleEncKey()); _ecomTransactionKey = _des.Decrypt3DES(orgCredential.TransactionKey); _ecomLoginKey = _des.Decrypt3DES(orgCredential.LoginID); //Getting the couse ID lCourseId = oPage.GetCourseId(hTable["CourseName"].ToString()); if (hTable["TestCaseType"].ToString().ToUpper() == "POSITIVE") { DefaultDueDateSetting oDefaultDueDateSetting = new DefaultDueDateSetting(); oDefaultDueDateSetting.DefaultDueDate = hTable["NewDuedateDefault"].ToString(); oDefaultDueDateSetting.DaysAfterEnrollment = hTable["NewDuedateAfterEnrollment"].ToString(); //Modifying old duedate oGeneric.GetApiResponseCodeData(out statusCode, out result, "PUT", ApplicationSettings.APIURI() + clsAPI.CourseDuedateSetting.Replace("{orgid}", _orgID).Replace("{courseID}", lCourseId[0].ToString().Trim()), oDefaultDueDateSetting, "H1", _ecomLoginKey, _ecomTransactionKey); //Getting new duedate after updating oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.CourseDuedateSetting.Replace("{orgid}", _orgID).Replace("{courseID}", lCourseId[0].ToString().Trim()), oDefaultDueDateSetting, "H1", _ecomLoginKey, _ecomTransactionKey); var oCoursesettingdata = JsonConvert.DeserializeObject <DefaultDueDateSetting>(result); string newDuedateAfterEnrollment = oCoursesettingdata.DaysAfterEnrollment; string newDefaultDuedate = oCoursesettingdata.DefaultDueDate; if (!string.IsNullOrEmpty(newDuedateAfterEnrollment)) { if (newDuedateAfterEnrollment.Contains(hTable["NewDuedateAfterEnrollment"].ToString())) { if (string.IsNullOrEmpty(newDefaultDuedate) && hTable["NewDuedateDefault"].ToString() == "null") { _Flag = true; } else { _Flag = false; } } else { _Flag = false; } } else { if (!string.IsNullOrEmpty(newDefaultDuedate)) { if (string.IsNullOrEmpty(newDuedateAfterEnrollment) && hTable["NewDuedateAfterEnrollment"].ToString() == "null") { if (newDefaultDuedate.Contains(hTable["NewDuedateDefault"].ToString())) { _Flag = true; } else { _Flag = false; } } else { if (string.IsNullOrEmpty(newDuedateAfterEnrollment) && hTable["NewDuedateAfterEnrollment"].ToString() == "null") { if (string.IsNullOrEmpty(newDefaultDuedate) && hTable["NewDuedateDefault"].ToString() == "null") { _Flag = true; } else { _Flag = false; } } } } } } } catch (Exception e) { clsException.ExceptionHandler(e, iWebdriver, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name); return(false); } return(_Flag); }
public bool Enrolluser(object[] lStrValue) { clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string result = string.Empty; clsGeneric oGeneric = new clsGeneric(); string URI = string.Empty; Hashtable htblTestData = new Hashtable(); htblTestData = oGeneric.GetTestData(lStrValue); string lCourseId = string.Empty; bool _Flag = false; string _UserID = string.Empty; try { clsPage oPage = new clsPage(iWebdriver); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; lCourseId = oPage.GetCurriculumId(htblTestData["CurriculumName"].ToString()); Users oUser = new Users(); GetAPICredentials oGetAPICredentials = new GetAPICredentials(); oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.orgCredential.Replace("$", _orgID), oUser, "H2", "", ""); var orgCredential = JsonConvert.DeserializeObject <GetAPICredentials>(result); Crypto3DES _des = new Crypto3DES(ApplicationSettings.EComModuleEncKey()); _ecomTransactionKey = _des.Decrypt3DES(orgCredential.TransactionKey); _ecomLoginKey = _des.Decrypt3DES(orgCredential.LoginID); if (htblTestData["Status"].ToString().ToUpper().Contains("INACTIVE")) { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.user.Replace("{orgid}", _orgID) + "?F015=" + htblTestData["UserEmail"].ToString() + "*&userstatus=inactive", oUser, "H1", _ecomLoginKey, _ecomTransactionKey); } else if (htblTestData["Status"].ToString().ToUpper().Contains("DELETED")) { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.user.Replace("{orgid}", _orgID) + "?F015=" + htblTestData["UserEmail"].ToString() + "*&userstatus=Deleted", oUser, "H1", _ecomLoginKey, _ecomTransactionKey); } else { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.user.Replace("{orgid}", _orgID), oUser, "H1", _ecomLoginKey, _ecomTransactionKey); } var oUserData = JsonConvert.DeserializeObject <List <Users> >(result); for (int iUser = 0; iUser < oUserData.Count; iUser++) { if (oUserData[iUser].Profile.F015.ToString() == htblTestData["UserEmail"].ToString().Trim()) { _UserID = oUserData[iUser].ID; break; } } UserEnrollment oUserEnrollment = new ILMS.UserEnrollment(); oUserEnrollment.userid = _UserID; oGeneric.GetApiResponseCodeData(out statusCode, out result, "POST", ApplicationSettings.APIURI() + clsAPI.CurriculumEnrollment.Replace("{orgid}", _orgID).Replace("{CourseID}", lCourseId.ToString()), oUserEnrollment, "H1", _ecomLoginKey, _ecomTransactionKey); Thread.Sleep(clsGlobalVariable.iWaitHigh); if (htblTestData["TestCaseType"].ToString().ToUpper() == "NEGATIVE") { if (result.ToUpper().Contains("!DOCTYPE")) { clsGlobalVariable.strExceptionReport = "Resource not found"; return(true); } var oError = JsonConvert.DeserializeObject <List <SuperAdminCoursePushDownError> >(result); SuperAdminCoursePushDownErrorCode oErrorCode = new SuperAdminCoursePushDownErrorCode(); foreach (string strErrorCode in oErrorCode.coursePushDownErrorCode) { if (strErrorCode == oError[0].ErrorCode) { _Flag = true; } } if (_Flag == true) { return(true); } else { clsGlobalVariable.strExceptionReport = "Negative Case Failed!"; return(false); } } try { if (htblTestData["Status"].ToString().ToUpper() == "Deleted".ToUpper()) { if (_Flag == true) { return(true); } else { return(false); } } } catch { } do { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.CurriculumEnrollment.Replace("{orgid}", _orgID).Replace("{CourseID}", lCourseId.ToString().Trim()), oUserEnrollment, "H1", _ecomLoginKey, _ecomTransactionKey); } while (result == ""); if (htblTestData["Status"].ToString().ToUpper() == "INACTIVE") { do { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetTranscript.Replace("{orgid}", _orgID).Replace("{UserID}", _UserID.ToString().Trim()), oUserEnrollment, "H1", _ecomLoginKey, _ecomTransactionKey); } while (result == ""); var oTranscriptData = JsonConvert.DeserializeObject <List <clsAPITranscript> >(result); for (int icount = 0; icount < oTranscriptData.Count; icount++) { if (oTranscriptData[icount].CourseName.ToString().ToUpper().Equals(htblTestData["CurriculumName"].ToString().ToUpper())) { return(true); } else { return(false); } } } var oCourseData = JsonConvert.DeserializeObject <List <CourseData> >(result); for (int iUser = 0; iUser < oCourseData.Count; iUser++) { if (oCourseData[iUser].User.Profile_Basic.F015.ToString() == htblTestData["UserEmail"].ToString().Trim()) { _UserID = oUserData[iUser].ID; _Flag = true; break; } else { _Flag = false; } } if (_Flag == true) { return(true); } else { return(false); } } catch (Exception ex) { clsGlobalVariable.strExceptionReport = "User not enrolled in curriculum."; return(false); } }
public bool GetGroups(object[] lStrValue) { clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string result = string.Empty; string allCourseResultresult = string.Empty; string singleCourseresult = string.Empty; clsGeneric oGeneric = new clsGeneric(); string URI = string.Empty; Hashtable htblTestData = new Hashtable(); htblTestData = oGeneric.GetTestData(lStrValue); bool _Flag = false; clsGroupAPI clGrpData = new clsGroupAPI(); GetAPICredentials oGetAPICredentials = new GetAPICredentials(); try { //Get Org ID at runtime clsPage oPage = new clsPage(iWebdriver); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.orgCredential.Replace("$", clsAPI.orgID), oGetAPICredentials, "H2", "", ""); var orgCredential = JsonConvert.DeserializeObject <GetAPICredentials>(result); Crypto3DES _des = new Crypto3DES(ApplicationSettings.EComModuleEncKey()); _ecomTransactionKey = _des.Decrypt3DES(orgCredential.TransactionKey); _ecomLoginKey = _des.Decrypt3DES(orgCredential.LoginID); if (htblTestData["RequestType"].ToString() == "All") { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetAllGroups.Replace("{orgid}", clsAPI.orgID), clGrpData, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); var groupData = JsonConvert.DeserializeObject <List <clsGroupAPI> >(result); if (groupData.Count > 1) { _Flag = true; } else { _Flag = false; } return(_Flag); } if (htblTestData["RequestType"].ToString() == "Single") { //Get All Groups oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetAllGroups.Replace("{orgid}", clsAPI.orgID), clGrpData, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); var groupData = JsonConvert.DeserializeObject <List <clsGroupAPI> >(result); if (groupData.Count > 0) { //Find the Group that we created and get its ID for (int iEnrolUser = 0; iEnrolUser < groupData.Count; iEnrolUser++) { if (groupData[iEnrolUser].Name.ToString().Contains(htblTestData["GroupName"].ToString())) { var groupID = groupData[iEnrolUser].ID.ToString(); //Use the ID to create a specific URL to get particular group oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetGroupByID.Replace("{orgid}", clsAPI.orgID).Replace("{GroupID}", groupID), clGrpData, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); var singleGroupData = JsonConvert.DeserializeObject <clsGroupAPI>(result); if (singleGroupData.Name.Contains(htblTestData["GroupName"].ToString())) { _Flag = true; break; } else { _Flag = false; } } else { _Flag = false; } } } } if (htblTestData["RequestType"].ToString() == "Members") { //Get Members of a Group oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetAllGroups.Replace("{orgid}", clsAPI.orgID), clGrpData, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); var groupData = JsonConvert.DeserializeObject <List <clsGroupAPI> >(result); if (groupData.Count > 0) { //Find the Group that we created and get its ID for (int iEnrolUser = 0; iEnrolUser < groupData.Count; iEnrolUser++) { if (groupData[iEnrolUser].Name.ToString().Contains(htblTestData["GroupName"].ToString())) { var groupID = groupData[iEnrolUser].ID.ToString(); //Use the ID to create a specific URL to get particular group oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetGroupMembers.Replace("{orgid}", clsAPI.orgID).Replace("{GroupID}", groupID), clGrpData, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); var GroupMemberData = JsonConvert.DeserializeObject <List <clsGroupAPI> >(result); for (int MemberCnt = 0; MemberCnt < GroupMemberData.Count; MemberCnt++) { var MemberID = GroupMemberData[MemberCnt].ID.ToString(); if (MemberID != "") { _Flag = true; break; } else { _Flag = false; } } } else { _Flag = false; } if (_Flag == true) { break; } } } } if (htblTestData["RequestType"].ToString() == "ExpInclListUsers") { //Get Members of a Group oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetAllGroups.Replace("{orgid}", clsAPI.orgID), clGrpData, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); var groupData = JsonConvert.DeserializeObject <List <clsGroupAPI> >(result); if (groupData.Count > 0) { //Find the Group that we created and get its ID for (int iEnrolUser = 0; iEnrolUser < groupData.Count; iEnrolUser++) { if (groupData[iEnrolUser].Name.ToString().Contains(htblTestData["GroupName"].ToString())) { var groupID = groupData[iEnrolUser].ID.ToString(); //Use the ID to create a specific URL to get particular group oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetGroupExplicitInclUsers.Replace("{orgid}", clsAPI.orgID).Replace("{GroupID}", groupID), clGrpData, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); var GroupMemberData = JsonConvert.DeserializeObject <List <clsGroupAPI> >(result); for (int MemberCnt = 0; MemberCnt < GroupMemberData.Count; MemberCnt++) { var MemberID = GroupMemberData[MemberCnt].ID.ToString(); if (MemberID != "") { _Flag = true; break; } else { _Flag = false; } } } else { _Flag = false; } if (_Flag == true) { break; } } } } if (htblTestData["RequestType"].ToString() == "ExpExclListUsers") { //Get Members of a Group oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetAllGroups.Replace("{orgid}", clsAPI.orgID), clGrpData, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); var groupData = JsonConvert.DeserializeObject <List <clsGroupAPI> >(result); if (groupData.Count > 0) { //Find the Group that we created and get its ID for (int iEnrolUser = 0; iEnrolUser < groupData.Count; iEnrolUser++) { if (groupData[iEnrolUser].Name.ToString().Contains(htblTestData["GroupName"].ToString())) { var groupID = groupData[iEnrolUser].ID.ToString(); //Use the ID to create a specific URL to get particular group oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetGroupExplicitExclUsers.Replace("{orgid}", clsAPI.orgID).Replace("{GroupID}", groupID), clGrpData, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); var GroupMemberData = JsonConvert.DeserializeObject <List <clsGroupAPI> >(result); for (int MemberCnt = 0; MemberCnt < GroupMemberData.Count; MemberCnt++) { var MemberID = GroupMemberData[MemberCnt].ID.ToString(); if (MemberID != "") { _Flag = true; break; } else { _Flag = false; } } } else { _Flag = false; } if (_Flag == true) { break; } } } } if (htblTestData["RequestType"].ToString() == "GetCourses") { //Get Courses of a Group oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetAllGroups.Replace("{orgid}", clsAPI.orgID), clGrpData, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); var groupData = JsonConvert.DeserializeObject <List <clsGroupAPI> >(result); if (groupData.Count > 0) { //Find the Group that we created and get its ID for (int iEnrolUser = 0; iEnrolUser < groupData.Count; iEnrolUser++) { if (groupData[iEnrolUser].Name.ToString().Contains(htblTestData["GroupName"].ToString())) { var groupID = groupData[iEnrolUser].ID.ToString(); //Use the ID to create a specific URL to get particular group oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetGroupCourses.Replace("{orgID}", clsAPI.orgID).Replace("{groupID}", groupID), clGrpData, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); var GroupCourse = JsonConvert.DeserializeObject <List <GroupCourseAPI> >(result); for (int CourseCnt = 0; CourseCnt < GroupCourse.Count; CourseCnt++) { var CourseID = GroupCourse[CourseCnt].Name.ToString(); if (CourseID == htblTestData["CourseName"].ToString()) { _Flag = true; break; } else { _Flag = false; } } } else { _Flag = false; } if (_Flag == true) { break; } } } } return(_Flag); } catch (Exception er) { clsException.ExceptionHandler(er, iWebdriver, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name); return(false); } }
public bool APIChangePassword(object[] lStrvalue) { clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string result = string.Empty; string allCourseResultresult = string.Empty; string singleCourseresult = string.Empty; clsGeneric oGeneric = new clsGeneric(); string URI = string.Empty; Hashtable htblTestData = new Hashtable(); htblTestData = oGeneric.GetTestData(lStrvalue); bool _Flag = false; User userID = new User(); GetAPICredentials oGetAPICredentials = new GetAPICredentials(); //Get Org ID at runtime clsPage oPage = new clsPage(iWebdriver); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; Thread.Sleep(clsGlobalVariable.iWaitHigh); try { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", clsAPI.apiURI + clsAPI.orgCredential.Replace("$", clsAPI.orgID), oGetAPICredentials, "H2", "", ""); var orgCredential = JsonConvert.DeserializeObject <GetAPICredentials>(result); Crypto3DES _des = new Crypto3DES(ApplicationSettings.EComModuleEncKey()); _ecomTransactionKey = _des.Decrypt3DES(orgCredential.TransactionKey); _ecomLoginKey = _des.Decrypt3DES(orgCredential.LoginID); ChangePasswordAPI ouser = new ChangePasswordAPI(); //Get User ID based on Email Address which is passed XML and Change Password string userid = GetUserID("active", oGeneric, "", statusCode, htblTestData, userID); ouser.newpassword = htblTestData["NewPassword"].ToString(); oGeneric.GetApiResponseCodeData(out statusCode, out result, "PUT", clsAPI.apiURI + clsAPI.UpdateUserProfile.Replace("{orgID}", clsAPI.orgID).Replace("{UserID}", userid) + "/Password", ouser, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); if (statusCode == "NoContent/204") { _Flag = true; } else if (statusCode == "OK/200") { _Flag = true; } else { _Flag = false; } return(_Flag); } catch (Exception e) { clsException.ExceptionHandler(e, iWebdriver, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name); return(false); } }
public bool GetCurricula(object[] oObject) { string _UserID = string.Empty; clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string statusCodeUpdate = string.Empty; string result = string.Empty; string resultput = string.Empty; clsGeneric oGeneric = new clsGeneric(); string URI = string.Empty; string courseID = string.Empty; bool _flag = false; string lCourseId = string.Empty; string resultnew = string.Empty; string sessionId = string.Empty; Hashtable hTable = new Hashtable(); hTable = oGeneric.GetTestData(oObject); clsPage oPage = new clsPage(iWebdriver); lCourseId = oPage.GetCurriculumId(hTable["CourseName"].ToString()); clsGenericAPI oclsGenericAPI = new clsGenericAPI(); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; oclsGenericAPI.GetORGCredentials(out _ecomTransactionKey, out _ecomLoginKey, _orgID); User oUser = new User(); try { if (hTable["FunctionFor"].ToString().ToUpper() == "ALL") { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetCuriculla.Replace("{orgid}", _orgID).Replace("{CourseID}", lCourseId), oUser, "H1", _ecomLoginKey, _ecomTransactionKey); var oCurriculaData = JsonConvert.DeserializeObject <List <curiculla> >(result); if (result == "") { return(false); } if (oCurriculaData.Count > 0) { _flag = true; } } else if (hTable["FunctionFor"].ToString().ToUpper() == "SPECIFIC") { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetCuriculla.Replace("{orgid}", _orgID) + "/" + lCourseId, oUser, "H1", _ecomLoginKey, _ecomTransactionKey); var oSessionData = JsonConvert.DeserializeObject <List <curiculla> >(result); if (oSessionData.Count == 1) { return(true); } else { return(false); } } else { DefaultDueDateSettings oDefaultDueDateSettings = new DefaultDueDateSettings(); oDefaultDueDateSettings.DefaultDueDate = hTable["DefaultDueDate"].ToString(); oDefaultDueDateSettings.DaysAfterEnrollment = hTable["DaysAfterEnrollment"].ToString(); oGeneric.GetApiResponseCodeData(out statusCode, out result, "PUT", ApplicationSettings.APIURI() + clsAPI.GetCuriculla.Replace("{orgid}", _orgID) + "/" + lCourseId + "/DueDate", oDefaultDueDateSettings, "H1", _ecomLoginKey, _ecomTransactionKey); if (hTable["TestCaseType"].ToString().ToUpper() == "NEGATIVE") { if (statusCode.Contains("204") || statusCode.Contains("200")) { return(false); } else { return(true); } } if (statusCode.Contains("204") || statusCode.Contains("200")) { return(true); } else { return(false); } } } catch (Exception er) { } return(_flag); }
//Created by Niranjan //Modified by Sandeep //Modified by Niranjan - 20/7/2016 public bool APICreateUser(object[] lStrvalue) { //UsersData odata = new UsersData(); try { clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string result = string.Empty; //string allCourseResultresult = string.Empty; //string singleCourseresult = string.Empty; clsGeneric oGeneric = new clsGeneric(); string URI = string.Empty; Hashtable htblTestData = new Hashtable(); htblTestData = oGeneric.GetTestData(lStrvalue); bool _Flag = false; User userID = new User(); GetAPICredentials oGetAPICredentials = new GetAPICredentials(); //Get Org ID at runtime clsPage oPage = new clsPage(iWebdriver); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; Thread.Sleep(clsGlobalVariable.iWaitHigh); oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", clsAPI.apiURI + clsAPI.orgCredential.Replace("$", clsAPI.orgID), oGetAPICredentials, "H2", "", ""); var orgCredential = JsonConvert.DeserializeObject <GetAPICredentials>(result); Crypto3DES _des = new Crypto3DES(ApplicationSettings.EComModuleEncKey()); _ecomTransactionKey = _des.Decrypt3DES(orgCredential.TransactionKey); _ecomLoginKey = _des.Decrypt3DES(orgCredential.LoginID); UpdateUser ouser = new UpdateUser(); CreateUser cuser = new CreateUser(); XDocument doc = XDocument.Load(clsGlobalVariable.ProjectDirectory + htblTestData["FieldsToBeUpdated"].ToString()); List <UpdateUser> oList = doc.Root.Elements() .Select(x => new UpdateUser() { Key = x.Attribute("Key").Value, Value = x.Attribute("Value").Value }).ToList(); for (int i = 0; i <= oList.Count; i++) { cuser.userProfileData = oList; } cuser.sendRegistrationMail = "true"; cuser.changePasswordAtNextLogin = "******"; //Update Fields Value oGeneric.GetApiResponseCodeData(out statusCode, out result, "POST", clsAPI.apiURI + clsAPI.user.Replace("{orgid}", clsAPI.orgID), cuser, "H1", _ecomLoginKey, _ecomTransactionKey); //1st code checks whether the test cases is Negative or Positive if (htblTestData["TestCaseType"].ToString().ToUpper() == "NEGATIVE") { //If Negative then we expect an error code if (result.Contains("ErrorCode") || result.Contains("Invalid URI.")) { if (result.Contains("Invalid URI.")) { return(true); } //The error code can be from API of Course Pushdown SuperAdminCoursePushDownErrorCode oError = new SuperAdminCoursePushDownErrorCode(); var error = JsonConvert.DeserializeObject <List <SuperAdminCoursePushDownError> >(result); foreach (string errorcode in oError.coursePushDownErrorCode) { for (int i = 0; i < error.Count; i++) { if (error[i].ErrorCode == errorcode) { _Flag = true; } else { _Flag = false; } } if (_Flag == true) { break; } } if (_Flag == false) { //If Not from Course Push Down then The error code can be from General APIs GeneralAPIErrCodes oError1 = new GeneralAPIErrCodes(); var error1 = JsonConvert.DeserializeObject <List <GeneralAPIErrCodes> >(result); foreach (string errorcode in oError1.allAPIErrorCodes) { for (int i = 0; i < error.Count; i++) { if (error[i].ErrorCode == errorcode) { _Flag = true; if (_Flag == true) { break; } } else { _Flag = false; } } if (_Flag == true) { break; } } } } if (_Flag == true) { return(_Flag); } } else { //If the test case is positive control will come here and then user should be created without any error code if (statusCode == "Created/201") { _Flag = true; } else { _Flag = false; } } return(_Flag); } catch (Exception e) { clsException.ExceptionHandler(e, iWebdriver, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name); return(false); } }
public bool APIPutUser(object[] lStrvalue) { clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string result = string.Empty; string allCourseResultresult = string.Empty; string singleCourseresult = string.Empty; clsGeneric oGeneric = new clsGeneric(); string URI = string.Empty; Hashtable htblTestData = new Hashtable(); htblTestData = oGeneric.GetTestData(lStrvalue); bool _Flag = false; User userID = new User(); GetAPICredentials oGetAPICredentials = new GetAPICredentials(); //Get Org ID at runtime clsPage oPage = new clsPage(iWebdriver); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; Thread.Sleep(clsGlobalVariable.iWaitHigh); try { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", clsAPI.apiURI + clsAPI.orgCredential.Replace("$", clsAPI.orgID), oGetAPICredentials, "H2", "", ""); var orgCredential = JsonConvert.DeserializeObject <GetAPICredentials>(result); Crypto3DES _des = new Crypto3DES(ApplicationSettings.EComModuleEncKey()); _ecomTransactionKey = _des.Decrypt3DES(orgCredential.TransactionKey); _ecomLoginKey = _des.Decrypt3DES(orgCredential.LoginID); //Get User ID based on Email Address which is passed XML and update Fields Value if (htblTestData["Action"].ToString() == "Activate") { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", clsAPI.apiURI + clsAPI.GetUserBasedonEmail.Replace("{orgID}", clsAPI.orgID).Replace("{EmailID}", htblTestData["UserEmail"].ToString() + "&userstatus=inactive"), userID, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); } else { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", clsAPI.apiURI + clsAPI.GetUserBasedonEmail.Replace("{orgID}", clsAPI.orgID).Replace("{EmailID}", htblTestData["UserEmail"].ToString()), userID, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); } var singleUserData = JsonConvert.DeserializeObject <List <Users> >(result); string userid = singleUserData[0].ID.ToString(); if (htblTestData["Action"].ToString() == "Update") { UpdateUser ouser = new UpdateUser(); //List<UpdateUser> oList = new List<UpdateUser>(); XDocument doc = XDocument.Load(clsGlobalVariable.ProjectDirectory + htblTestData["FieldsToBeUpdated"].ToString()); List <UpdateUser> oList = doc.Root.Elements() .Select(x => new UpdateUser() { Key = x.Attribute("Key").Value, Value = x.Attribute("Value").Value }).ToList(); //Update Fields Value oGeneric.GetApiResponseCodeData(out statusCode, out result, "PUT", clsAPI.apiURI + clsAPI.UpdateUserProfile.Replace("{orgID}", clsAPI.orgID).Replace("{UserID}", userid), oList, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); } if (htblTestData["Action"].ToString() == "Activate") { //Activate Inactive User oGeneric.GetApiResponseCodeData(out statusCode, out result, "PUT", clsAPI.apiURI + clsAPI.UpdateUserProfile.Replace("{orgID}", clsAPI.orgID).Replace("{UserID}", userid) + "/Activate", userID, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); } if (htblTestData["Action"].ToString() == "Inactivate") { //InActivate Active User oGeneric.GetApiResponseCodeData(out statusCode, out result, "Delete", clsAPI.apiURI + clsAPI.UpdateUserProfile.Replace("{orgID}", clsAPI.orgID).Replace("{UserID}", userid) + "/Activate", userID, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); } if (statusCode == "NoContent/204") { _Flag = true; } else if (statusCode == "OK/200") { _Flag = true; } else { _Flag = false; } return(_Flag); } catch (Exception e) { clsException.ExceptionHandler(e, iWebdriver, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name); return(false); } }
public bool APIGetUser(object[] lStrvalue) { clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string result = string.Empty; string allCourseResultresult = string.Empty; string singleCourseresult = string.Empty; clsGeneric oGeneric = new clsGeneric(); string URI = string.Empty; Hashtable htblTestData = new Hashtable(); htblTestData = oGeneric.GetTestData(lStrvalue); bool _Flag = false; UserEnrollment userID = new UserEnrollment(); GetAPICredentials oGetAPICredentials = new GetAPICredentials(); //Get Org ID at runtime clsPage oPage = new clsPage(iWebdriver); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; try { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.orgCredential.Replace("$", clsAPI.orgID), oGetAPICredentials, "H2", "", ""); var orgCredential = JsonConvert.DeserializeObject <GetAPICredentials>(result); Crypto3DES _des = new Crypto3DES(ApplicationSettings.EComModuleEncKey()); _ecomTransactionKey = _des.Decrypt3DES(orgCredential.TransactionKey); _ecomLoginKey = _des.Decrypt3DES(orgCredential.LoginID); if (htblTestData["RequestType"].ToString() == "All") { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.user.Replace("{orgid}", clsAPI.orgID), userID, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); var userData = JsonConvert.DeserializeObject <List <Users> >(result); if (userData.Count > 1) { _Flag = true; } else { _Flag = false; } return(_Flag); } if (htblTestData["RequestType"].ToString() == "Single") { //Get All Users oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.user.Replace("{orgid}", clsAPI.orgID), userID, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); var userData = JsonConvert.DeserializeObject <List <Users> >(result); if (userData.Count > 0) { //Find the User that we created and get its ID for (int iEnrolUser = 0; iEnrolUser < userData.Count; iEnrolUser++) { if (userData[iEnrolUser].Profile.F015.ToString().Contains(htblTestData["UserEmail"].ToString())) { string userid = userData[iEnrolUser].ID.ToString(); //Use the ID to create a specific URL to get particular user oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetSingleUser.Replace("{orgID}", clsAPI.orgID).Replace("{UserID}", userid), userID, htblTestData["MethodType"].ToString(), _ecomLoginKey, _ecomTransactionKey); var singleUserData = JsonConvert.DeserializeObject <Users>(result); if (singleUserData.Profile.F015.Contains(htblTestData["UserEmail"].ToString())) { _Flag = true; break; } else { _Flag = false; } } else { _Flag = false; } } } } return(_Flag); } catch (Exception e) { clsException.ExceptionHandler(e, iWebdriver, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name); return(false); } }
public bool GetSession(object[] oObject) { string _UserID = string.Empty; clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string statusCodeUpdate = string.Empty; string result = string.Empty; string resultput = string.Empty; clsGeneric oGeneric = new clsGeneric(); string URI = string.Empty; string courseID = string.Empty; bool _flag = false; List <string> lCourseId = new List <string>(); string resultnew = string.Empty; string sessionId = string.Empty; Hashtable hTable = new Hashtable(); hTable = oGeneric.GetTestData(oObject); clsPage oPage = new clsPage(iWebdriver); lCourseId = oPage.GetCourseId(hTable["CourseName"].ToString()); clsGenericAPI oclsGenericAPI = new clsGenericAPI(); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; oclsGenericAPI.GetORGCredentials(out _ecomTransactionKey, out _ecomLoginKey, _orgID); User oUser = new User(); try { if (hTable["FunctionFor"].ToString().ToUpper() == "ALL") { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetSessionID.Replace("{orgid}", _orgID).Replace("{CourseID}", lCourseId[0].ToString().Trim()), oUser, "H1", _ecomLoginKey, _ecomTransactionKey); var oSessionData = JsonConvert.DeserializeObject <List <clsAPISession> >(result); if (result == "") { return(false); } if (oSessionData.Count > 0) { _flag = true; } } else if (hTable["FunctionFor"].ToString().ToUpper() == "ROOMNAME") { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetSessionID.Replace("{orgid}", _orgID).Replace("{CourseID}", lCourseId[0].ToString().Trim()), oUser, "H1", _ecomLoginKey, _ecomTransactionKey); var oSessionData = JsonConvert.DeserializeObject <List <clsAPISession> >(result); for (int iSessionCounter = 0; iSessionCounter < oSessionData.Count; iSessionCounter++) { if (oSessionData[iSessionCounter].RoomName == hTable["RoomName"].ToString()) { sessionId = oSessionData[iSessionCounter].SessionID; break; } } if (sessionId == "") { return(false); } oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetSessionID.Replace("{orgid}", _orgID).Replace("{CourseID}", lCourseId[0].ToString().Trim()) + "/" + sessionId, oUser, "H1", _ecomLoginKey, _ecomTransactionKey); var oSessionDatanew = JsonConvert.DeserializeObject <List <clsAPISession> >(result); if (oSessionDatanew.Count == 1) { return(true); } else { return(false); } } else { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetSessionID.Replace("{orgid}", _orgID).Replace("{CourseID}", lCourseId[0].ToString().Trim()) + "?sessionstartdate=" + hTable["StartDate"] + "&sessionenddate=" + hTable["EndDate"], oUser, "H1", _ecomLoginKey, _ecomTransactionKey); if (hTable["TestCaseType"].ToString().ToUpper() == "NEGATIVE") { if (statusCode.Contains("204") || statusCode.Contains("200")) { return(false); } else { return(true); } } var oSessionData = JsonConvert.DeserializeObject <List <clsAPISession> >(result); if (result == "") { return(false); } if (oSessionData.Count > 0) { _flag = true; } } } catch (Exception e) { clsException.ExceptionHandler(e, iWebdriver, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name); return(false); } return(_flag); }
public bool AddRegion(Hashtable hTable) { clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string result = string.Empty; string GroupResult = string.Empty; clsGeneric oGeneric = new clsGeneric(); string URI = string.Empty; string strGroupID = string.Empty; List <string> lCourseId = new List <string>(); bool _Flag = false; string _UserID = string.Empty; try { clsPage oPage = new clsPage(iWebdriver); clsRegionApi oRegion = new clsRegionApi(); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; oRegion.name = hTable["Name"].ToString(); GetAPICredentials oGetAPICredentials = new GetAPICredentials(); oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.orgCredential.Replace("$", _orgID), oGetAPICredentials, "H2", "", ""); var orgCredential = JsonConvert.DeserializeObject <GetAPICredentials>(result); Crypto3DES _des = new Crypto3DES(ApplicationSettings.EComModuleEncKey()); _ecomTransactionKey = _des.Decrypt3DES(orgCredential.TransactionKey); _ecomLoginKey = _des.Decrypt3DES(orgCredential.LoginID); oGeneric.GetApiResponseCodeData(out statusCode, out result, "POST", ApplicationSettings.APIURI() + clsAPI.Region.Replace("{orgid}", _orgID), oRegion, "H1", _ecomLoginKey, _ecomTransactionKey); Thread.Sleep(clsGlobalVariable.iWaitMedium); if (hTable["TestCaseType"].ToString().ToUpper() == "POSITIVE") { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.Region.Replace("{orgid}", _orgID), oRegion, "H1", _ecomLoginKey, _ecomTransactionKey); var RegionData = JsonConvert.DeserializeObject <List <GetRegion> >(result); _Flag = RegionData.Any(cus => cus.Name == hTable["Name"].ToString()); return(_Flag); } else { if (result.Contains("ErrorCode") || result.Contains("Invalid URI.")) { if (result.Contains("Invalid URI.")) { return(true); } SuperAdminCoursePushDownErrorCode oError = new SuperAdminCoursePushDownErrorCode(); var error = JsonConvert.DeserializeObject <List <SuperAdminCoursePushDownError> >(result); foreach (string errorcode in oError.coursePushDownErrorCode) { for (int i = 0; i < error.Count; i++) { if (error[i].ErrorCode == errorcode) { _Flag = true; } else { _Flag = false; } } if (_Flag == true) { break; } } return(_Flag); } } } catch (Exception e) { clsException.ExceptionHandler(e, iWebdriver, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name); return(false); } return(_Flag); }
public bool Enrolluser(Hashtable htblTestData) { clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string result = string.Empty; clsGeneric oGeneric = new clsGeneric(); string URI = string.Empty; List <string> lCourseId = new List <string>(); bool _Flag = false; string _UserID = string.Empty; try { clsPage oPage = new clsPage(iWebdriver); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; lCourseId = oPage.GetCourseId(htblTestData["CourseName"].ToString()); Users oUser = new Users(); GetAPICredentials oGetAPICredentials = new GetAPICredentials(); oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.orgCredential.Replace("$", _orgID), oUser, "H2", "", ""); var orgCredential = JsonConvert.DeserializeObject <GetAPICredentials>(result); Crypto3DES _des = new Crypto3DES(ApplicationSettings.EComModuleEncKey()); _ecomTransactionKey = _des.Decrypt3DES(orgCredential.TransactionKey); _ecomLoginKey = _des.Decrypt3DES(orgCredential.LoginID); oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.user.Replace("{orgid}", _orgID), oUser, "H1", _ecomLoginKey, _ecomTransactionKey); var oUserData = JsonConvert.DeserializeObject <List <Users> >(result); for (int iUser = 0; iUser < oUserData.Count; iUser++) { if (oUserData[iUser].Profile.F015.ToString() == htblTestData["UserEmail"].ToString().Trim()) { _UserID = oUserData[iUser].ID; break; } } oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetSessionID.Replace("{orgid}", _orgID).Replace("{CourseID}", lCourseId[0].ToString().Trim()), oUser, "H1", _ecomLoginKey, _ecomTransactionKey); var oSessionData = JsonConvert.DeserializeObject <List <clsAPISession> >(result); if (result == "") { return(false); } _SessionID = oSessionData[0].SessionID; UserEnrollment oUserEnrollment = new ILMS.UserEnrollment(); oUserEnrollment.userid = _UserID; oGeneric.GetApiResponseCodeData(out statusCode, out result, "POST", ApplicationSettings.APIURI() + clsAPI.SessionEnrollment.Replace("{orgid}", _orgID).Replace("{CourseID}", lCourseId[0].ToString().Trim()).Replace("{SessionID}", _SessionID), oUserEnrollment, "H1", _ecomLoginKey, _ecomTransactionKey); Thread.Sleep(clsGlobalVariable.iWaitHigh); if (htblTestData["TestCaseType"].ToString().ToUpper() == "NEGATIVE") { if (result.ToUpper().Contains("!DOCTYPE")) { clsGlobalVariable.strExceptionReport = "Resource not found"; return(true); } if (result.Contains("Invalid URI")) { return(true); } var oError = JsonConvert.DeserializeObject <List <SuperAdminCoursePushDownError> >(result); SuperAdminCoursePushDownErrorCode oErrorCode = new SuperAdminCoursePushDownErrorCode(); foreach (string strErrorCode in oErrorCode.coursePushDownErrorCode) { if (strErrorCode == oError[0].ErrorCode) { _Flag = true; } } if (_Flag == true) { return(true); } else { clsGlobalVariable.strExceptionReport = "Negative Case Failed!"; return(false); } } do { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.SessionEnrollment.Replace("{orgid}", _orgID).Replace("{CourseID}", lCourseId[0].ToString().Trim()).Replace("{SessionID}", _SessionID), oUserEnrollment, "H1", _ecomLoginKey, _ecomTransactionKey); } while (result == ""); var oCourseData = JsonConvert.DeserializeObject <List <SessionEnrollment> >(result); for (int iUser = 0; iUser < oCourseData.Count; iUser++) { if (oCourseData[iUser].User.Profile_Basic.F015.ToString() == htblTestData["UserEmail"].ToString().Trim()) { _UserID = oCourseData[iUser].User.ID; _Flag = true; break; } else { _Flag = false; } } } catch (Exception e) { clsException.ExceptionHandler(e, iWebdriver, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name); return(false); } return(_Flag); }
/// <summary> /// update transcript function for put api request /// </summary> /// <param name="hTable">input from transcript function</param> /// <returns>true/false</returns> private bool UpdateTranscript(Hashtable hTable) { string _UserID = string.Empty; clsGlobalVariable.strExceptionReport = string.Empty; string statusCode = string.Empty; string statusCodeUpdate = string.Empty; string result = string.Empty; string resultput = string.Empty; clsGeneric oGeneric = new clsGeneric(); string URI = string.Empty; string courseID = string.Empty; bool _flag = false; try { Transcript oTranscript = new ILMS.Transcript(); clsAPITranscript oclsAPITranscript = new clsAPITranscript(); clsPage oPage = new clsPage(iWebdriver); _orgID = oPage.GetOrganizationID(); clsAPI.orgID = _orgID; Users oUser = new Users(); GetAPICredentials oGetAPICredentials = new GetAPICredentials(); ////////////////////get api credentials for organization oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.orgCredential.Replace("$", _orgID), oUser, "H2", "", ""); var orgCredential = JsonConvert.DeserializeObject <GetAPICredentials>(result); Crypto3DES _des = new Crypto3DES(ApplicationSettings.EComModuleEncKey()); _ecomTransactionKey = _des.Decrypt3DES(orgCredential.TransactionKey); _ecomLoginKey = _des.Decrypt3DES(orgCredential.LoginID); #region get user id by there type if (hTable["UserStatus"].ToString().ToUpper().Contains("INACTIVE")) { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.user.Replace("{orgid}", _orgID) + "?F015=" + hTable["UserEmail"].ToString() + "*&userstatus=inactive", oUser, "H1", _ecomLoginKey, _ecomTransactionKey); } else if (hTable["UserStatus"].ToString().ToUpper().Contains("DELETED")) { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.user.Replace("{orgid}", _orgID) + "?F015=" + hTable["UserEmail"].ToString() + "*&userstatus=Deleted", oUser, "H1", _ecomLoginKey, _ecomTransactionKey); } else { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.user.Replace("{orgid}", _orgID), oUser, "H1", _ecomLoginKey, _ecomTransactionKey); } var oUserData = JsonConvert.DeserializeObject <List <Users> >(result); for (int iUser = 0; iUser < oUserData.Count; iUser++) { if (oUserData[iUser].Profile.F015.ToString() == hTable["UserMailID"].ToString().Trim()) { _UserID = oUserData[iUser].ID; break; } } #endregion #region course if (hTable["TranscriptFor"].ToString().ToUpper() == "COURSE") { try { courseID = GetID(hTable["CourseName"].ToString(), hTable["TranscriptFor"].ToString()); ///old transcript oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetSpecificCourseTranscript.Replace("{orgID}", clsAPI.orgID).Replace("{userID}", _UserID).Replace("{courseID}", courseID), oclsAPITranscript, "H1", _ecomLoginKey, _ecomTransactionKey); oTranscript.CompletionDate = hTable["CompletionDate"].ToString(); oTranscript.EnrollmentDate = hTable["EnrollmentDate"].ToString(); oTranscript.Score = hTable["Score"].ToString(); oTranscript.StartDate = hTable["StartDate"].ToString(); oTranscript.Status = hTable["Status"].ToString(); oTranscript.LicenseExpirationDate = hTable["LicenseExpirationDate"].ToString(); oTranscript.RequirementType = hTable["RequirementType"].ToString(); oTranscript.DueDate = hTable["DueDate"].ToString(); oTranscript.CertificationExpirationDate = hTable["CertificationExpirationDate"].ToString(); /////update transcript string resultupdate = string.Empty; string resultnew = string.Empty; oGeneric.GetApiResponseCodeData(out statusCodeUpdate, out resultupdate, "PUT", ApplicationSettings.APIURI() + clsAPI.GetSpecificCourseTranscript.Replace("{orgID}", clsAPI.orgID).Replace("{userID}", _UserID).Replace("{courseID}", courseID), oclsAPITranscript, "H1", _ecomLoginKey, _ecomTransactionKey); Thread.Sleep(clsGlobalVariable.iWaitHigh); oGeneric.GetApiResponseCodeData(out statusCode, out resultnew, "GET", ApplicationSettings.APIURI() + clsAPI.GetSpecificCourseTranscript.Replace("{orgID}", clsAPI.orgID).Replace("{userID}", _UserID).Replace("{courseID}", courseID), oclsAPITranscript, "H1", _ecomLoginKey, _ecomTransactionKey); var status = JsonConvert.DeserializeObject <List <clsAPITranscript> >(resultnew); var statusold = JsonConvert.DeserializeObject <List <clsAPITranscript> >(result); _flag = VerifyTranscriptUpdate(result, resultnew, statusCodeUpdate, hTable); } catch (Exception e) { clsException.ExceptionHandler(e, iWebdriver, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name); return(false); } } #endregion #region session else if (hTable["TranscriptFor"].ToString().ToUpper() == "SESSION") { List <string> lCourseId = new List <string>(); string resultnew = string.Empty; lCourseId = oPage.GetCourseId(hTable["CourseName"].ToString()); clsGenericAPI oclsGenericAPI = new clsGenericAPI(); oclsGenericAPI.GetORGCredentials(out _ecomTransactionKey, out _ecomLoginKey, _orgID); if (lCourseId.Count > 0) { oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetSessionID.Replace("{orgid}", _orgID).Replace("{CourseID}", lCourseId[0].ToString()), oUser, "H1", _ecomLoginKey, _ecomTransactionKey); var oSessionData = JsonConvert.DeserializeObject <List <clsAPISession> >(result); if (result == "") { return(false); } _SessionID = oSessionData[0].SessionID; oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetSpecificSessionTranscript.Replace("{orgID}", _orgID).Replace("{CourseID}", lCourseId[0].ToString()).Replace("{sessionID}", _SessionID).Replace("{userID}", _UserID), oUser, "H1", _ecomLoginKey, _ecomTransactionKey); _flag = VerifyTranscriptUpdate(result, resultnew, statusCodeUpdate, hTable); } else { return(false); } } #endregion #region Curricula else { string resultnew = string.Empty; courseID = oPage.GetCurriculumId(hTable["CourseName"].ToString()); try {//////////////////////getting transcript oTranscript.CompletionDate = hTable["CompletionDate"].ToString(); oTranscript.EnrollmentDate = hTable["EnrollmentDate"].ToString(); oTranscript.Score = hTable["Score"].ToString(); oTranscript.StartDate = hTable["StartDate"].ToString(); oTranscript.Status = hTable["Status"].ToString(); oTranscript.LicenseExpirationDate = hTable["LicenseExpirationDate"].ToString(); oTranscript.RequirementType = hTable["RequirementType"].ToString(); oTranscript.DueDate = hTable["DueDate"].ToString(); oTranscript.CertificationExpirationDate = hTable["CertificationExpirationDate"].ToString(); oGeneric.GetApiResponseCodeData(out statusCode, out result, "GET", ApplicationSettings.APIURI() + clsAPI.GetSpecificCurriculumTranscript.Replace("{orgID}", _orgID).Replace("{userID}", _UserID).Replace("{courseID}", courseID), oclsAPITranscript, "H1", _ecomLoginKey, _ecomTransactionKey); var status = JsonConvert.DeserializeObject <List <clsAPITranscript> >(result); oGeneric.GetApiResponseCodeData(out statusCodeUpdate, out resultput, "PUT", ApplicationSettings.APIURI() + clsAPI.GetSpecificCurriculumTranscript.Replace("{orgID}", _orgID).Replace("{userID}", _UserID).Replace("{courseID}", courseID), oclsAPITranscript, "H1", _ecomLoginKey, _ecomTransactionKey); Thread.Sleep(clsGlobalVariable.iWaitHigh); oGeneric.GetApiResponseCodeData(out statusCode, out resultnew, "GET", ApplicationSettings.APIURI() + clsAPI.GetSpecificCurriculumTranscript.Replace("{orgID}", _orgID).Replace("{userID}", _UserID).Replace("{courseID}", courseID), oclsAPITranscript, "H1", _ecomLoginKey, _ecomTransactionKey); var statusold = JsonConvert.DeserializeObject <List <clsAPITranscript> >(result); _flag = VerifyTranscriptUpdate(result, resultnew, statusCodeUpdate, hTable); } catch { clsGlobalVariable.strExceptionReport = "Get transcript scenario failed"; return(false); } return(_flag); } #endregion } catch (Exception e) { clsException.ExceptionHandler(e, iWebdriver, System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString(), System.Reflection.MethodBase.GetCurrentMethod().Name); return(false); } return(_flag); }