protected override void ProcessGetRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { var emailId = TryParseInt32(context, "emailId"); var systemManager = VLSystemManager.GetAnInstance(accessToken); var email = systemManager.GetKnownEmailById(emailId); if (email != null) { var _item = new { email.Client, email.EmailId, email.EmailAddress, email.LocalPart, email.DomainPart, email.RegisterDt, email.IsDomainOK, email.IsVerified, email.IsOptedOut, email.IsBounced, email.VerifiedDt, email.OptedOutDt }; var response = JsonConvert.SerializeObject(_item, Formatting.None); context.Response.Write(response); } else { throw new VLException(string.Format("There is no KnownEmail with id='{0}'.", emailId)); } }
protected override void ProcessGetRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { var collectorId = TryParseInt32(context, "collectorId", true); var pageIndex = TryParseInt32(context, "page", false, 1); var pageSize = TryParseInt32(context, "rows", false, 10); var sortIndex = TryParseString(context, "sidx", false, "Name"); var sortOrder = TryParseString(context, "sord", false, "asc"); var orderByClause = string.Format("order by {0} {1}", sortIndex, sortOrder); var systemManager = VLSystemManager.GetAnInstance(accessToken); int totalRecords = 0; var items = systemManager.GetChargesForCollector(collectorId, pageIndex, pageSize, ref totalRecords, string.Empty, orderByClause); int totalpages = totalRecords / pageSize; if (totalpages * pageSize < totalRecords) { totalpages++; } var rows = items.Select(c => new { c.CollectorPaymentId, c.SurveyId, c.CollectorId, c.Responses, c.CreditType, c.PaymentId, c.UseOrder, c.QuantityReserved, c.QuantityUsed, FirstChargeDt = c.FirstChargeDt.HasValue ? c.FirstChargeDt.Value.ToShortDateString() : string.Empty, LastChargeDt = c.LastChargeDt.HasValue ? c.LastChargeDt.Value.ToShortDateString() : string.Empty, c.IsActive, c.IsUsed, PaymentDate = c.PaymentDate.ToShortDateString(), c.PaymentIsActive, PaymentQuantity = GetPaymentQuantity(c), c.PaymentQuantityUsed }).ToArray(); var data = new { total = totalpages, //total pages for the query page = pageIndex, //current page of the query records = totalRecords, //total number of records for the query rows }; var response = JsonConvert.SerializeObject(data, Formatting.None); context.Response.Write(response); }
protected override void ProcessGetRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { var contactId = TryParseInt32(context, "contactId", true); var systemManager = VLSystemManager.GetAnInstance(accessToken); var contact = systemManager.GetContactById(contactId); if (contact == null) { throw new VLException(string.Format("There is no Contact with id='{0}'.", contactId)); } var _item = new { contact.ClientId, contact.ListId, contact.ContactId, contact.Organization, contact.Title, contact.Department, contact.FirstName, contact.LastName, contact.Email, contact.Comment, contact.IsOptedOut, contact.IsBouncedEmail, CreateDT = accessToken.ConvertTimeFromUtc(contact.CreateDT).ToString(Utilities.DateTime_Format_General), LastUpdateDT = accessToken.ConvertTimeFromUtc(contact.LastUpdateDT).ToString(Utilities.DateTime_Format_General) }; var response = JsonConvert.SerializeObject(_item, Formatting.None); context.Response.Write(response); }
protected override void ProcessGetRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { var listId = TryParseInt32(context, "listId", true); var systemManager = VLSystemManager.GetAnInstance(accessToken); var list = systemManager.GetClientListById(listId); if (list == null) { throw new VLException(string.Format("There is no List with id='{0}'.", listId)); } var _item = new { list.Client, list.ListId, list.Name, list.TotalContacts, list.CreateDT, list.LastUpdateDT }; var response = JsonConvert.SerializeObject(_item, Formatting.None); context.Response.Write(response); }
public void CollectorTest02() { var surveyManager = VLSurveyManager.GetAnInstance(admin); var systemManager = VLSystemManager.GetAnInstance(admin); try { //We create a customer: var client1 = systemManager.CreateClient("MySoftavia S.A.", BuiltinCountries.Greece, "man", profile: BuiltinProfiles.UTESTFree.ProfileId); Assert.IsNotNull(client1); //We create a survey: var survey1 = surveyManager.CreateSurvey(client1, "Questionnaire #1", "Risk assessment"); Assert.IsTrue(survey1.Client == client1.ClientId); //ΔΗΜΙΟΥΡΓΟΥΜΕ ΕΝΑ COLLECTOR: var collector01 = surveyManager.CreateCollector(survey1.SurveyId, CollectorType.Email, "COLLECTOR01_email"); Assert.IsNotNull(collector01); //δεν έχουμε κανένα message: Assert.IsTrue(surveyManager.GetMessages(collector01).Count == 0); //ΔΗΜΙΟΥΡΓΟΥΜΕ ΕΝΑ MESSAGE: var message01 = surveyManager.CreateMessage(collector01, "*****@*****.**", "please answer the following questions", "We are conducting a survey, and your response would be appreciated. Here is a link to the survey: [SurveyLink]. In Order to be removed: [RemoveLink]"); Assert.IsNotNull(message01); Assert.IsTrue(message01.Collector == collector01.CollectorId); var svdMessage01 = surveyManager.GetMessageById(message01.MessageId); Assert.AreEqual <VLMessage>(message01, svdMessage01); //έχουμε ένα message: Assert.IsTrue(surveyManager.GetMessages(collector01).Count == 1); } finally { var surveys = surveyManager.GetSurveys(textsLanguage: BuiltinLanguages.PrimaryLanguage); foreach (var item in surveys) { if (item.IsBuiltIn) { continue; } surveyManager.DeleteSurvey(item); } var clients = systemManager.GetClients(); foreach (var client in clients) { if (client.IsBuiltIn) { continue; } systemManager.DeleteClient(client); } } }
protected override void ProcessGetRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { var clientId = TryParseInt32(context, "ClientId", true); var pageIndex = TryParseInt32(context, "page", false, 1); var pageSize = TryParseInt32(context, "rows", false, 10); var sortIndex = TryParseString(context, "sidx", false, "Name"); var sortOrder = TryParseString(context, "sord", false, "asc"); var orderByClause = string.Format("order by {0} {1}", sortIndex, sortOrder); var systemManager = VLSystemManager.GetAnInstance(accessToken); int totalRecords = 0; var items = systemManager.GetPayments(clientId, pageIndex, pageSize, ref totalRecords, string.Empty, orderByClause); int totalpages = totalRecords / pageSize; if (totalpages * pageSize < totalRecords) { totalpages++; } var rows = items.Select(c => new { c.PaymentId, c.Client, c.Comment, c.PaymentType, c.PaymentDate, c.CustomCode1, c.CustomCode2, c.IsActive, c.IsTimeLimited, c.ValidFromDt, c.ValidToDt, c.CreditType, c.Quantity, c.QuantityUsed, c.CreateDT }).ToArray(); var data = new { total = totalpages, //total pages for the query page = pageIndex, //current page of the query records = totalRecords, //total number of records for the query rows }; var response = JsonConvert.SerializeObject(data, Formatting.None); context.Response.Write(response); }
protected override void ProcessGetRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { var contactId = TryParseInt32(context, "contactId", true); var systemManager = VLSystemManager.GetAnInstance(accessToken); systemManager.DeleteContact(contactId); //empty json object context.Response.Write("{}"); }
protected override void ProcessGetRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { var pageIndex = TryParseInt32(context, "page", false, 1); var pageSize = TryParseInt32(context, "rows", false, 10); var sortIndex = TryParseString(context, "sidx", false, "Name"); var sortOrder = TryParseString(context, "sord", false, "asc"); var orderByClause = string.Format("order by {0} {1}", sortIndex, sortOrder); var systemManager = VLSystemManager.GetAnInstance(accessToken); int totalRecords = 0; var items = systemManager.GetClientExs(pageIndex, pageSize, ref totalRecords, string.Empty, orderByClause); int totalpages = totalRecords / pageSize; if (totalpages * pageSize < totalRecords) { totalpages++; } var rows = items.Select(c => new { c.ClientId, c.Code, c.Name, c.Profession, c.Country, c.Prefecture, c.Town, c.Address, c.Zip, c.Telephone1, c.Telephone2, c.WebSite, c.IsBuiltIn, c.Profile, c.ProfileName, c.CreateDT }).ToArray(); var data = new { total = totalpages, //total pages for the query page = pageIndex, //current page of the query records = totalRecords, //total number of records for the query rows }; var response = JsonConvert.SerializeObject(data, Formatting.None); context.Response.Write(response); }
protected override void ProcessGetRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { //we will need an instance of a LrSystem: var systemManager = VLSystemManager.GetAnInstance(accessToken); //gather required values: var userId = TryParseInt32(context, "UserId", true); systemManager.UnlockPrincipal(PrincipalType.SystemUser, userId); //empty json object context.Response.Write("{}"); }
protected override void ProcessGetRequestWrapped(VLAccessToken accessToken, HttpContext context) { var pageIndex = TryParseInt32(context, "page", false, 1); var pageSize = TryParseInt32(context, "rows", false, 10); var sortIndex = TryParseString(context, "sidx", false, "Name"); var sortOrder = TryParseString(context, "sord", false, "asc"); var orderByClause = string.Format("order by {0} {1}", sortIndex, sortOrder); var systemManager = VLSystemManager.GetAnInstance(accessToken); int totalRecords = 0; var items = systemManager.GetSystemUserViews(pageIndex, pageSize, ref totalRecords, string.Empty, orderByClause); int totalpages = totalRecords / pageSize; if (totalpages * pageSize < totalRecords) { totalpages++; } var rows = items.Select(c => new { c.UserId, c.DefaultLanguageName, c.FirstName, c.LastName, c.Email, c.IsActive, c.IsBuiltIn, c.RoleName, c.LastActivityDate, c.LogOnToken, c.IsApproved, c.IsLockedOut, c.LastLoginDate, c.CreateDT }).ToArray(); var data = new { total = totalpages, //total pages for the query page = pageIndex, //current page of the query records = totalRecords, //total number of records for the query rows }; var response = JsonConvert.SerializeObject(data, Formatting.None); context.Response.Write(response); }
protected override void ProcessGetRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { var collectorId = TryParseInt32(context, "collectorId"); var textsLanguage = TryParseInt16(context, "textsLanguage"); var manager = VLSurveyManager.GetAnInstance(accessToken); var sysmanager = VLSystemManager.GetAnInstance(accessToken); var collector = manager.GetCollectorById(collectorId, textsLanguage); var hasUsedPayments = false; if (collector != null) { var totalScheduledMessages = manager.GetScheduledMessagesCount(collector.CollectorId); var totalResponses = manager.GetResponsesCountForCollector(collector.Survey, collector.CollectorId); var totalPayments = sysmanager.GetCollectorPayments(collectorId); foreach (var tp in totalPayments) { if (tp.IsUsed) { hasUsedPayments = true; break; } } var _collector = new { collector.CollectorId, collector.Survey, collector.CollectorType, collector.Name, collector.AttributeFlags, collector.Status, collector.Responses, collector.SupportedLanguagesIds, collector.PrimaryLanguage, ScheduledMessages = totalScheduledMessages, TotalResponses = totalResponses, HasUsedPayments = hasUsedPayments, CreateDT = collector.CreateDT.ToString(Utilities.DateTime_Format_General), LastUpdateDT = collector.LastUpdateDT.ToString(Utilities.DateTime_Format_General) }; var response = JsonConvert.SerializeObject(_collector, Formatting.None); context.Response.Write(response); } else { throw new VLException(string.Format("There is no Collector with id='{0},{1}'.", collectorId, textsLanguage)); } }
public void RolesTest03() { var systemManager = VLSystemManager.GetAnInstance(admin); try { VLAccessToken _atoken = new VLAccessToken(admin); //Δημιουργούμε ένα νέο ρόλο: var role01 = systemManager.CreateRole("ρόλος1", permissions: VLPermissions.Developer | VLPermissions.ManageSecurity); Assert.IsNotNull(role01); _atoken.Permissions = role01.Permissions; var _manager = new TestManager(_atoken); Assert.IsFalse(_manager.HasPermissions(VLPermissions.ManageSystem)); Assert.IsFalse(_manager.ValidatePermissions(VLPermissions.ManageSystem)); _EXECUTEAndCATCHType(delegate { _manager.CheckPermissions(VLPermissions.ManageSystem); }, typeof(VLAccessDeniedException)); Assert.IsFalse(_manager.HasPermissions(VLPermissions.ManageSystem | VLPermissions.Developer)); Assert.IsFalse(_manager.ValidatePermissions(VLPermissions.ManageSystem | VLPermissions.Developer)); _EXECUTEAndCATCHType(delegate { _manager.CheckPermissions(VLPermissions.ManageSystem | VLPermissions.Developer); }, typeof(VLAccessDeniedException)); Assert.IsFalse(_manager.HasPermissions(VLPermissions.ManageSystem | VLPermissions.Developer | VLPermissions.ManageSecurity)); Assert.IsFalse(_manager.ValidatePermissions(VLPermissions.ManageSystem | VLPermissions.Developer | VLPermissions.ManageSecurity)); _EXECUTEAndCATCHType(delegate { _manager.CheckPermissions(VLPermissions.ManageSystem | VLPermissions.Developer | VLPermissions.ManageSecurity); }, typeof(VLAccessDeniedException)); Assert.IsTrue(_manager.HasPermissions(VLPermissions.Developer | VLPermissions.ManageSecurity)); Assert.IsTrue(_manager.ValidatePermissions(VLPermissions.Developer | VLPermissions.ManageSecurity)); _EXECUTE_SUCCESS(delegate { _manager.ValidatePermissions(VLPermissions.Developer | VLPermissions.ManageSecurity); }); Assert.IsTrue(_manager.ValidatePermissions(VLPermissions.ManageSystemParameters, VLPermissions.Developer | VLPermissions.ManageSecurity)); _EXECUTE_SUCCESS(delegate { _manager.ValidatePermissions(VLPermissions.ManageSystemParameters, VLPermissions.Developer | VLPermissions.ManageSecurity); }); Assert.IsTrue(_manager.ValidatePermissions(VLPermissions.ManageThemes, VLPermissions.ManageSystemParameters | VLPermissions.ManageSecurity, VLPermissions.Developer | VLPermissions.ManageSecurity)); _EXECUTE_SUCCESS(delegate { _manager.ValidatePermissions(VLPermissions.ManageThemes, VLPermissions.ManageSystemParameters | VLPermissions.ManageSecurity, VLPermissions.Developer | VLPermissions.ManageSecurity); }); } finally { var roles = systemManager.GetRoles(); foreach (var item in roles) { if (item.IsBuiltIn == false) { systemManager.DeleteRole(item.RoleId); } } } }
protected override void ProcessGetRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { //we will need an instance of a LrSystem: var systemManager = VLSystemManager.GetAnInstance(accessToken); //gather required values: var userId = TryParseInt32(context, "UserId", true); var newPswdToken = TryParseString(context, "npt", true); systemManager.SetNewPassword(PrincipalType.ClientUser, userId, newPswdToken); //empty json object context.Response.Write("{}"); }
protected override void ProcessPostRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { var logontoken = TryParseString(context, "logontoken", true); var oldPass = TryParseString(context, "oldPass", true); var newPass = TryParseString(context, "newPass", true); //we will need an instance of a VLSystemManager: var systemManager = VLSystemManager.GetAnInstance(accessToken); systemManager.ChangePassword(logontoken, oldPass, newPass); //empty json object context.Response.Write("{}"); }
public void SurveyResponsesTest01_02() { var systemManager = VLSystemManager.GetAnInstance(admin); var surveyManager = VLSurveyManager.GetAnInstance(admin); try { //We create a customer: var client = systemManager.CreateClient("MySoftavia S.A.", BuiltinCountries.Greece, "man", profile: BuiltinProfiles.UTESTFree.ProfileId); Assert.IsNotNull(client); var survey = CreateSurvey1(surveyManager, client); } finally { var surveys = surveyManager.GetSurveys(textsLanguage: BuiltinLanguages.PrimaryLanguage); foreach (var item in surveys) { var responses = surveyManager.GetResponses(item.SurveyId); foreach (var a in responses) { surveyManager.DeleteResponse(a); } if (item.IsBuiltIn) { continue; } surveyManager.DeleteSurvey(item); } surveyManager.DeleteAllSessions(); var clients = systemManager.GetClients(); foreach (var client in clients) { if (client.IsBuiltIn) { continue; } systemManager.DeleteClient(client); } } }
protected override void ProcessGetRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { var loginId = TryParseInt32(context, "loginId"); var systemManager = VLSystemManager.GetAnInstance(accessToken); var login = systemManager.GetLoginById(loginId); if (login != null) { var response = JsonConvert.SerializeObject(login, Formatting.None); context.Response.Write(response); } else { throw new VLException(string.Format("There is no Login with id='{0}'.", loginId)); } }
protected override void ProcessGetRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { var contactId = TryParseInt32(context, "contactId", true); var systemManager = VLSystemManager.GetAnInstance(accessToken); var contact = systemManager.GetContactById(contactId); if (contact == null) { throw new VLException(string.Format("There is no Contact with id='{0}'.", contactId)); } contact.Organization = TryParseString(context, "Organization", false, contact.Organization); contact.Title = TryParseString(context, "Title", false, contact.Title); contact.Department = TryParseString(context, "Department", false, contact.Department); contact.FirstName = TryParseString(context, "FirstName", false, contact.FirstName); contact.LastName = TryParseString(context, "LastName", false, contact.LastName); contact.Email = TryParseString(context, "Email", false, contact.Email); contact.Comment = TryParseString(context, "Comment", false, contact.Comment); contact = systemManager.UpdateContact(contact); var _item = new { contact.ClientId, contact.ListId, contact.ContactId, contact.Organization, contact.Title, contact.Department, contact.FirstName, contact.LastName, contact.Email, contact.Comment, contact.IsOptedOut, contact.IsBouncedEmail, contact.CreateDT }; var response = JsonConvert.SerializeObject(_item, Formatting.None); context.Response.Write(response); }
protected override void ProcessGetRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { var paymentId = TryParseInt32(context, "paymentId", true); var systemManager = VLSystemManager.GetAnInstance(accessToken); var items = systemManager.GetCharges(paymentId); var rows = items.Select(c => new { c.SurveyId, c.SurveyTitle, c.CollectorId, c.CollectorTitle, c.CollectorType, c.Status, c.Responses, c.CreditType, c.CreationDT, c.CreatedBy, c.CollectorPaymentId, c.PaymentId, c.UseOrder, c.QuantityReserved, c.QuantityUsed, FirstChargeDt = c.FirstChargeDt.HasValue ? c.FirstChargeDt.Value.ToShortDateString() : string.Empty, LastChargeDt = c.LastChargeDt.HasValue ? c.LastChargeDt.Value.ToShortDateString() : string.Empty }).ToArray(); var data = new { total = 1, //total pages for the query page = 1, //current page of the query records = items.Count, //total number of records for the query rows }; var response = JsonConvert.SerializeObject(data, Formatting.None); context.Response.Write(response); }
protected override void ProcessGetRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { var listName = TryParseString(context, "listName", true); var systemManager = VLSystemManager.GetAnInstance(accessToken); var list = systemManager.CreateClientList(accessToken.ClientId.Value, listName); var _item = new { list.Client, list.ListId, list.Name, list.CreateDT, list.LastUpdateDT }; var response = JsonConvert.SerializeObject(_item, Formatting.None); context.Response.Write(response); }
protected override void ProcessGetRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { var listId = TryParseInt32(context, "listId", true); var systemManager = VLSystemManager.GetAnInstance(accessToken); var contact = new VLContact(); contact.ListId = listId; contact.Organization = TryParseString(context, "Organization", false); contact.Title = TryParseString(context, "Title", false); contact.Department = TryParseString(context, "Department", false); contact.FirstName = TryParseString(context, "FirstName", false); contact.LastName = TryParseString(context, "LastName", false); contact.Email = TryParseString(context, "Email", true); contact.Comment = TryParseString(context, "Comment", false); //we create the contact: contact = systemManager.CreateContact(contact); var _item = new { contact.ClientId, contact.ListId, contact.ContactId, contact.Organization, contact.Title, contact.Department, contact.FirstName, contact.LastName, contact.Email, contact.Comment, contact.IsOptedOut, contact.IsBouncedEmail, contact.CreateDT }; var response = JsonConvert.SerializeObject(_item, Formatting.None); context.Response.Write(response); }
protected override void ProcessGetRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { var collectorPaymentId = TryParseInt32(context, "collectorPaymentId", true); var systemManager = VLSystemManager.GetAnInstance(accessToken); var collectorPayment = systemManager.GetCollectorPaymentById(collectorPaymentId); if (collectorPayment == null) { throw new VLException(SR.GetString(SR.There_is_no_item_with_id, "CollectorPayment", collectorPaymentId)); } var payment = systemManager.GetPaymentById(collectorPayment.Payment); if (payment == null) { throw new VLException(SR.GetString(SR.There_is_no_item_with_id, "payment", collectorPayment.Payment)); } var item = new { payment.PaymentId, payment.Quantity, payment.QuantityUsed, payment.PaymentType, payment.CreditType, Description = string.Format("{0} {1} {2}", payment.Quantity, payment.CreditType, payment.PaymentDate.ToShortDateString()), collectorPayment.QuantityReserved }; var response = JsonConvert.SerializeObject(item, Formatting.None); context.Response.Write(response); }
public void SurveyResponsesTest01_01() { var systemManager = VLSystemManager.GetAnInstance(admin); var surveyManager = VLSurveyManager.GetAnInstance(admin); try { Assert.IsTrue(surveyManager.GetSessions().Count == 0); //We create a customer: var client = systemManager.CreateClient("MySoftavia S.A.", BuiltinCountries.Greece, "man", profile: BuiltinProfiles.UTESTFree.ProfileId); Assert.IsNotNull(client); //We create a survey: var survey1 = surveyManager.CreateSurvey(client.ClientId, "ερωτηματολόγιο - demo1", "ερωτηματολόγιο - demo1"); Assert.IsNotNull(survey1); //Δημιουργούμε ένα session: var session1 = surveyManager.CreateSession(survey1.SurveyId, RuntimeRequestType.Preview); Assert.IsTrue(surveyManager.GetSessions().Count == 1); session1["key1"] = 34; session1["key2"] = "George"; session1["key3"] = null; session1["key4"] = 34.5; Assert.AreEqual(session1["key1"], 34); Assert.AreEqual(session1["key2"], "George"); Assert.AreEqual(session1["key3"], null); Assert.AreEqual(session1["key4"], 34.5); //το αποθηκεύουμε: surveyManager.ReleaseSession(session1); //Read: var svdSession1 = surveyManager.AcquireSession(session1.SessionId); Assert.IsNotNull(svdSession1); Assert.IsTrue(svdSession1.Survey == survey1.SurveyId); foreach (string key in session1.Keys) { Assert.AreEqual(session1[key], svdSession1[key]); } //Δημιουργούμε ένα session: var session2 = surveyManager.CreateSession(survey1.SurveyId, RuntimeRequestType.Preview); Assert.IsTrue(surveyManager.GetSessions().Count == 2); for (int i = 1; i <= 100; i++) { session2["key" + i.ToString()] = i; } //το αποθηκεύουμε: surveyManager.ReleaseSession(session2); //Read: var svdSession2 = surveyManager.AcquireSession(session2.SessionId); Assert.IsNotNull(svdSession2); foreach (string key in session2.Keys) { Assert.AreEqual(session2[key], svdSession2[key]); } Assert.IsTrue(surveyManager.GetSessions().Count == 2); surveyManager.DeleteSession(session1.SessionId); Assert.IsTrue(surveyManager.GetSessions().Count == 1); surveyManager.DeleteSession(session2.SessionId); Assert.IsTrue(surveyManager.GetSessions().Count == 0); } finally { var surveys = surveyManager.GetSurveys(textsLanguage: BuiltinLanguages.PrimaryLanguage); foreach (var item in surveys) { if (item.IsBuiltIn) { continue; } surveyManager.DeleteSurvey(item); } surveyManager.DeleteAllSessions(); var clients = systemManager.GetClients(); foreach (var client in clients) { if (client.IsBuiltIn) { continue; } systemManager.DeleteClient(client); } } }
public void ViewSummary01_01() { var surveyManager = VLSurveyManager.GetAnInstance(admin); var systemManager = VLSystemManager.GetAnInstance(admin); try { #region Δημιουργούμε έναν πελάτη: var client1 = systemManager.CreateClient("MySoftavia S.A.", BuiltinCountries.Greece, "man", profile: BuiltinProfiles.UTESTFree.ProfileId); Assert.IsNotNull(client1); #endregion var survey = CreateSurvey2(surveyManager, client1, "my survey!!!"); CreateResponsesForSurvey2(surveyManager, survey); //Διαβάζουμε το defaultView: var defView = surveyManager.GetDefaultView(survey); defView = surveyManager.RevertView(defView); Assert.IsTrue(defView.NumberOfQuestionFilters == 0); //Τραβάμε τα responses με βάση αυτό το view var responses = surveyManager.GetViewResponses(defView); Assert.IsTrue(responses.Count == 820); //τραβάμε το summary αυτού του view: var summary = surveyManager.GetViewSummary(defView); Assert.IsTrue(summary.RecordedResponses == 820); Assert.IsTrue(summary.FilteredResponses == 820); //Δημιουργούμε ένα filter: (Αυτοί που έχουν απαντήσει ότι είναι απο το UK) var filter1 = surveyManager.AddFilter(defView, 5, new VLFilterDetail { Operator = ComparisonOperator.IsChecked, SelectedOption = 1 }); //From where are you from? (UK); responses = surveyManager.GetViewResponses(defView); Assert.IsTrue(responses.Count == 197); summary = surveyManager.GetViewSummary(defView); Assert.IsTrue(summary.RecordedResponses == 820); Assert.IsTrue(summary.FilteredResponses == 197); //Δημιουργούμε ένα filter: (Αυτοί που έχουν απαντήσει ότι έχουν φίλους το option2 ή to option5): var filter2 = surveyManager.AddFilter(defView, 6, new VLFilterDetail { Operator = ComparisonOperator.IsChecked, SelectedOption = 2 }, new VLFilterDetail { Operator = ComparisonOperator.IsChecked, SelectedOption = 5 }); responses = surveyManager.GetViewResponses(defView); Assert.IsTrue(responses.Count == 61); summary = surveyManager.GetViewSummary(defView); Assert.IsTrue(summary.RecordedResponses == 820); Assert.IsTrue(summary.FilteredResponses == 61); //Δημιουργούμε ένα filter: (αυτοί των οποίων η ηλικία είναι μεταξύ 10 και 50 χρονων: var filter3 = surveyManager.AddFilter(defView, 2, new VLFilterDetail { Operator = ComparisonOperator.Between, UserInput1 = "10", UserInput2 = "50" }); responses = surveyManager.GetViewResponses(defView); Assert.IsTrue(responses.Count == 44); summary = surveyManager.GetViewSummary(defView); Assert.IsTrue(summary.RecordedResponses == 820); Assert.IsTrue(summary.FilteredResponses == 44); //Δημιουργούμε ένα filter (Που να έχουν απαντήσει οτιδήποτε για βαθμό των μαθηματικών: ) var filter4 = surveyManager.AddFilter(defView, 8, new VLFilterDetail { Operator = ComparisonOperator.IsChecked, SelectedOption = 4 }); responses = surveyManager.GetViewResponses(defView); Assert.IsTrue(responses.Count == 28); summary = surveyManager.GetViewSummary(defView); Assert.IsTrue(summary.RecordedResponses == 820); Assert.IsTrue(summary.FilteredResponses == 28); //Δημιουργούμε ένα filter (Που να έχουν απαντήσει για βαθμό των μαθηματικών 7,8,9,10: ) var filter4a = surveyManager.AddFilter(defView, 8, new VLFilterDetail { Operator = ComparisonOperator.IsChecked, SelectedOption = 4, SelectedColumn = 7 }, new VLFilterDetail { Operator = ComparisonOperator.IsChecked, SelectedOption = 4, SelectedColumn = 8 }, new VLFilterDetail { Operator = ComparisonOperator.IsChecked, SelectedOption = 4, SelectedColumn = 9 }, new VLFilterDetail { Operator = ComparisonOperator.IsChecked, SelectedOption = 4, SelectedColumn = 10 }); //Απενεργοποιούμε το filter4: filter4 = surveyManager.DisableViewFilter(filter4); Assert.IsFalse(filter4.IsActive); //Responses ? responses = surveyManager.GetViewResponses(defView); Assert.IsTrue(responses.Count == 11); summary = surveyManager.GetViewSummary(defView); Assert.IsTrue(summary.RecordedResponses == 820); Assert.IsTrue(summary.FilteredResponses == 11); //Απενεργοποιούμε το filter2 filter2 = surveyManager.DisableViewFilter(filter2); Assert.IsFalse(filter2.IsActive); //Responses ? responses = surveyManager.GetViewResponses(defView); Assert.IsTrue(responses.Count == 28); summary = surveyManager.GetViewSummary(defView); Assert.IsTrue(summary.RecordedResponses == 820); Assert.IsTrue(summary.FilteredResponses == 28); //Ενεργοποιούμε το filter2: filter2 = surveyManager.EnableViewFilter(filter2); Assert.IsTrue(filter2.IsActive); //Responses ? responses = surveyManager.GetViewResponses(defView); Assert.IsTrue(responses.Count == 11); summary = surveyManager.GetViewSummary(defView); Assert.IsTrue(summary.RecordedResponses == 820); Assert.IsTrue(summary.FilteredResponses == 11); //Απενεργοποιούμε το filter1 filter1 = surveyManager.DisableViewFilter(filter1); Assert.IsFalse(filter1.IsActive); //Responses ? responses = surveyManager.GetViewResponses(defView); Assert.IsTrue(responses.Count == 39); summary = surveyManager.GetViewSummary(defView); Assert.IsTrue(summary.RecordedResponses == 820); Assert.IsTrue(summary.FilteredResponses == 39); } finally { #region var surveys = surveyManager.GetSurveys(textsLanguage: BuiltinLanguages.PrimaryLanguage); foreach (var item in surveys) { if (item.IsBuiltIn) { continue; } var collectors = surveyManager.GetCollectors(item); foreach (var c in collectors) { if (c.Status == CollectorStatus.Open) { surveyManager.CloseCollector(c); } } surveyManager.DeleteSurvey(item); } var clients = systemManager.GetClients(); foreach (var client in clients) { if (client.IsBuiltIn) { continue; } systemManager.DeleteClient(client); } #endregion } }
public void ClientLists02_02() { var systemManager = VLSystemManager.GetAnInstance(admin); try { #region Δημιουργία δύο πελατών με λίστες που περιέχουν ίδιες επαφές: //We create a customer: var client1 = systemManager.CreateClient("MySoftavia S.A.", BuiltinCountries.Greece, "man", profile: BuiltinProfiles.UTESTFree.ProfileId); Assert.IsNotNull(client1); //We create a contact list: var list01a = systemManager.CreateClientList(client1.ClientId, "my-list-01a"); //We create a contact list: var list01b = systemManager.CreateClientList(client1.ClientId, "my-list-01b"); //Εισαγωγή 10 γραμμών στην list01a using (var fs = new FileStream(Path.Combine(_ImportFilesPath, "MOCK_DATA_10a.csv"), FileMode.Open)) { systemManager.ImportContactsFromCSV(list01a.ListId, fs, new ContactImportOptions { HasHeaderRecord = true, ContinueOnError = true, EmailOrdinal = 2, FirstNameOrdinal = 3, LastNameOrdinal = 4 }); } systemManager.CreateContact(list01a.ListId, "*****@*****.**", "George", "milonakis"); //Εισαγωγή 10 γραμμών στην list01b using (var fs = new FileStream(Path.Combine(_ImportFilesPath, "MOCK_DATA_10a.csv"), FileMode.Open)) { systemManager.ImportContactsFromCSV(list01b.ListId, fs, new ContactImportOptions { HasHeaderRecord = true, ContinueOnError = true, EmailOrdinal = 2, FirstNameOrdinal = 3, LastNameOrdinal = 4 }); } //We create one more client: var client2 = systemManager.CreateClient("FastrishCert S.A.", BuiltinCountries.Greece, "pcert", profile: BuiltinProfiles.UTESTFree.ProfileId); Assert.IsNotNull(client2); //We create a contact list: var list02 = systemManager.CreateClientList(client2.ClientId, "my-list-02"); //Εισαγωγή 10 γραμμών στην list02 using (var fs = new FileStream(Path.Combine(_ImportFilesPath, "MOCK_DATA_10a.csv"), FileMode.Open)) { systemManager.ImportContactsFromCSV(list02.ListId, fs, new ContactImportOptions { HasHeaderRecord = true, ContinueOnError = true, EmailOrdinal = 2, FirstNameOrdinal = 3, LastNameOrdinal = 4 }); } #endregion list01a = systemManager.GetClientListById(list01a.ListId); Assert.IsTrue(list01a.TotalContacts == 11); Assert.IsTrue(systemManager.GetContacts(list01a).Count == 11); Assert.IsTrue(systemManager.GetOptedOutContacts(list01a).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01a).Count == 0); list01b = systemManager.GetClientListById(list01b.ListId); Assert.IsTrue(list01b.TotalContacts == 10); Assert.IsTrue(systemManager.GetContacts(list01b).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list01b).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01b).Count == 0); list02 = systemManager.GetClientListById(list02.ListId); Assert.IsTrue(list02.TotalContacts == 10); Assert.IsTrue(systemManager.GetContacts(list02).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list02).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list02).Count == 0); //Κάνουμε bounce ένα μοναδικό email που βρίσκεται μόνο στην list01a: Assert.IsTrue(systemManager.BounceContacts(client1, "*****@*****.**") == 1); #region ΕΛΕΓΧΟΥΜΕ: list01a = systemManager.GetClientListById(list01a.ListId); Assert.IsTrue(list01a.TotalContacts == 11); Assert.IsTrue(systemManager.GetContacts(list01a).Count == 11); Assert.IsTrue(systemManager.GetOptedOutContacts(list01a).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01a).Count == 1); list01b = systemManager.GetClientListById(list01b.ListId); Assert.IsTrue(list01b.TotalContacts == 10); Assert.IsTrue(systemManager.GetContacts(list01b).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list01b).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01b).Count == 0); list02 = systemManager.GetClientListById(list02.ListId); Assert.IsTrue(list02.TotalContacts == 10); Assert.IsTrue(systemManager.GetContacts(list02).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list02).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list02).Count == 0); #endregion //Κάνουμε bounce τρία (3) email που βρίσκεται στην list01a και στην list01b: Assert.IsTrue(systemManager.BounceContacts(client1, "*****@*****.**") == 2); Assert.IsTrue(systemManager.BounceContacts(client1, "*****@*****.**") == 2); Assert.IsTrue(systemManager.BounceContacts(client1, "*****@*****.**") == 2); #region ΕΛΕΓΧΟΥΜΕ: list01a = systemManager.GetClientListById(list01a.ListId); Assert.IsTrue(list01a.TotalContacts == 11); Assert.IsTrue(systemManager.GetContacts(list01a).Count == 11); Assert.IsTrue(systemManager.GetOptedOutContacts(list01a).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01a).Count == 4); list01b = systemManager.GetClientListById(list01b.ListId); Assert.IsTrue(list01b.TotalContacts == 10); Assert.IsTrue(systemManager.GetContacts(list01b).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list01b).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01b).Count == 3); list02 = systemManager.GetClientListById(list02.ListId); Assert.IsTrue(list02.TotalContacts == 10); Assert.IsTrue(systemManager.GetContacts(list02).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list02).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list02).Count == 0); #endregion //Κάνουμε optedout τρία (3) email που βρίσκonται στην list01a και στην list01b: Assert.IsTrue(systemManager.OptOutContacts(client1, "*****@*****.**") == 2); Assert.IsTrue(systemManager.OptOutContacts(client1, "*****@*****.**") == 2); Assert.IsTrue(systemManager.OptOutContacts(client1, "*****@*****.**") == 2); #region ΕΛΕΓΧΟΥΜΕ: list01a = systemManager.GetClientListById(list01a.ListId); Assert.IsTrue(list01a.TotalContacts == 11); Assert.IsTrue(systemManager.GetContacts(list01a).Count == 11); Assert.IsTrue(systemManager.GetOptedOutContacts(list01a).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list01a).Count == 4); list01b = systemManager.GetClientListById(list01b.ListId); Assert.IsTrue(list01b.TotalContacts == 10); Assert.IsTrue(systemManager.GetContacts(list01b).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list01b).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list01b).Count == 3); list02 = systemManager.GetClientListById(list02.ListId); Assert.IsTrue(list02.TotalContacts == 10); Assert.IsTrue(systemManager.GetContacts(list02).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list02).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list02).Count == 0); #endregion //ΔΙΑΓΡΑΦΕΣ: Assert.IsTrue(systemManager.RemoveByDomainContactsFromList(list01a.ListId, "oyoloo.gov") == 1); Assert.IsTrue(systemManager.RemoveByDomainContactsFromList(list02.ListId, "oyoloo.gov") == 1); #region ΕΛΕΓΧΟΥΜΕ: list01a = systemManager.GetClientListById(list01a.ListId); Assert.IsTrue(list01a.TotalContacts == 10); Assert.IsTrue(systemManager.GetContacts(list01a).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list01a).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list01a).Count == 3); list01b = systemManager.GetClientListById(list01b.ListId); Assert.IsTrue(list01b.TotalContacts == 10); Assert.IsTrue(systemManager.GetContacts(list01b).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list01b).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list01b).Count == 3); list02 = systemManager.GetClientListById(list02.ListId); Assert.IsTrue(list02.TotalContacts == 9); Assert.IsTrue(systemManager.GetContacts(list02).Count == 9); Assert.IsTrue(systemManager.GetOptedOutContacts(list02).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list02).Count == 0); #endregion //ΔΙΑΓΡΑΦΕΣ: Assert.IsTrue(systemManager.RemoveByDomainContactsFromList(list01a.ListId, "hotmail.com") == 1); Assert.IsTrue(systemManager.RemoveByDomainContactsFromList(list01b.ListId, "hotmail.com") == 0); Assert.IsTrue(systemManager.RemoveByDomainContactsFromList(list02.ListId, "hotmail.com") == 0); #region ΕΛΕΓΧΟΥΜΕ: list01a = systemManager.GetClientListById(list01a.ListId); Assert.IsTrue(list01a.TotalContacts == 9); Assert.IsTrue(systemManager.GetContacts(list01a).Count == 9); Assert.IsTrue(systemManager.GetOptedOutContacts(list01a).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list01a).Count == 2); list01b = systemManager.GetClientListById(list01b.ListId); Assert.IsTrue(list01b.TotalContacts == 10); Assert.IsTrue(systemManager.GetContacts(list01b).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list01b).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list01b).Count == 3); list02 = systemManager.GetClientListById(list02.ListId); Assert.IsTrue(list02.TotalContacts == 9); Assert.IsTrue(systemManager.GetContacts(list02).Count == 9); Assert.IsTrue(systemManager.GetOptedOutContacts(list02).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list02).Count == 0); #endregion //ΔΙΑΓΡΑΦΕΣ: Assert.IsTrue(systemManager.RemoveAllContactsFromList(list01b.ListId) == 10); #region ΕΛΕΓΧΟΥΜΕ: list01a = systemManager.GetClientListById(list01a.ListId); Assert.IsTrue(list01a.TotalContacts == 9); Assert.IsTrue(systemManager.GetContacts(list01a).Count == 9); Assert.IsTrue(systemManager.GetOptedOutContacts(list01a).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list01a).Count == 2); list01b = systemManager.GetClientListById(list01b.ListId); Assert.IsTrue(list01b.TotalContacts == 0); Assert.IsTrue(systemManager.GetContacts(list01b).Count == 0); Assert.IsTrue(systemManager.GetOptedOutContacts(list01b).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01b).Count == 0); list02 = systemManager.GetClientListById(list02.ListId); Assert.IsTrue(list02.TotalContacts == 9); Assert.IsTrue(systemManager.GetContacts(list02).Count == 9); Assert.IsTrue(systemManager.GetOptedOutContacts(list02).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list02).Count == 0); #endregion } finally { var clients = systemManager.GetClients(); foreach (var client in clients) { if (client.IsBuiltIn) { continue; } systemManager.DeleteClient(client); } } }
public void ClientLists02_01() { var systemManager = VLSystemManager.GetAnInstance(admin); try { //We create a customer: var client1 = systemManager.CreateClient("MySoftavia S.A.", BuiltinCountries.Greece, "man", profile: BuiltinProfiles.UTESTFree.ProfileId); //We create a contact list: var list01 = systemManager.CreateClientList(client1.ClientId, "my-list-01"); //Η λίστα μας είναι άδεια: Assert.IsTrue(list01.TotalContacts == 0); Assert.IsTrue(systemManager.GetContacts(list01.ListId).Count == 0); //Εισαγωγή 10 γραμμών ContactImportResult importResult = null; using (var fs = new FileStream(Path.Combine(_ImportFilesPath, "MOCK_DATA_10a.csv"), FileMode.Open)) { importResult = systemManager.ImportContactsFromCSV(list01.ListId, fs, new ContactImportOptions { HasHeaderRecord = true, ContinueOnError = true, EmailOrdinal = 2, FirstNameOrdinal = 3, LastNameOrdinal = 4 }); } //Η λίστα μας έχει τωρα 10 contacts: list01 = systemManager.GetClientListById(list01.ListId); Assert.IsTrue(list01.TotalContacts == 10); Assert.IsTrue(systemManager.GetContacts(list01.ListId).Count == 10); //Κανένα contact δεν είναι OptedOut ή Bounced: var contacts = systemManager.GetContacts(list01.ListId); foreach (var item in contacts) { Assert.IsFalse(item.IsBouncedEmail); Assert.IsFalse(item.IsOptedOut); } Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 0); //Κάνουμε bounced τρία emails: var email01b = contacts[0].Email; var email02b = contacts[1].Email; var email03b = contacts[2].Email; Assert.IsTrue(systemManager.BounceContacts(client1, email01b) == 1); Assert.IsTrue(systemManager.BounceContacts(client1, email02b) == 1); Assert.IsTrue(systemManager.BounceContacts(client1, email03b) == 1); //Τώρα έχουμε 3 Bounced Emails: Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 3); //Κάνουμε optedOut τρία emails: var email01o = contacts[7].Email; var email02o = contacts[8].Email; var email03o = contacts[9].Email; Assert.IsTrue(systemManager.OptOutContacts(client1, email01o) == 1); Assert.IsTrue(systemManager.OptOutContacts(client1, email02o) == 1); Assert.IsTrue(systemManager.OptOutContacts(client1, email03o) == 1); //Τώρα έχουμε 3 Bounced Emails & 3 OptedOut Emails: Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 3); //Θα διαγράψουμε τα OptedOut Emails: Assert.IsTrue(systemManager.RemoveAllOptedOutContactsFromList(list01.ListId) == 3); //Ελέγχουμε: list01 = systemManager.GetClientListById(list01.ListId); Assert.IsTrue(list01.TotalContacts == 7); Assert.IsTrue(systemManager.GetContacts(list01).Count == 7); Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 3); //Θα διαγράψουμε τα Bounced Emails: Assert.IsTrue(systemManager.RemoveAllBouncedContactsFromList(list01.ListId) == 3); //Ελέγχουμε: list01 = systemManager.GetClientListById(list01.ListId); Assert.IsTrue(list01.TotalContacts == 4); Assert.IsTrue(systemManager.GetContacts(list01).Count == 4); Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 0); //Θα διαγράψουμε όλα τα contacts απο αυτή την λίστα: Assert.IsTrue(systemManager.RemoveAllContactsFromList(list01.ListId) == 4); //Ελέγχουμε: list01 = systemManager.GetClientListById(list01.ListId); Assert.IsTrue(list01.TotalContacts == 0); Assert.IsTrue(systemManager.GetContacts(list01).Count == 0); Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 0); } finally { var clients = systemManager.GetClients(); foreach (var client in clients) { if (client.IsBuiltIn) { continue; } systemManager.DeleteClient(client); } } }
protected override void ProcessGetRequestWrapped(Valis.Core.VLAccessToken accessToken, HttpContext context) { var clientId = TryParseInt32(context, "ClientId", true); var pageIndex = TryParseInt32(context, "page", false, 1); var pageSize = TryParseInt32(context, "rows", false, 10); var sortIndex = TryParseString(context, "sidx", false, "Name"); var sortOrder = TryParseString(context, "sord", false, "asc"); var orderByClause = string.Format("order by {0} {1}", sortIndex, sortOrder); var systemManager = VLSystemManager.GetAnInstance(accessToken); int totalRecords = 0; var items = systemManager.GetPaymentsView1(clientId, pageIndex, pageSize, ref totalRecords, string.Empty, orderByClause); int totalpages = totalRecords / pageSize; if (totalpages * pageSize < totalRecords) { totalpages++; } foreach (var item in items) { #region TotalCredits if (item.CreditType == CreditType.EmailType) { if (item.Quantity == 1) { item.TotalCredits = "1 email"; } else { item.TotalCredits = string.Format("{0} emails", item.Quantity); } } else if (item.CreditType == CreditType.ResponseType) { if (item.Quantity == 1) { item.TotalCredits = "1 response"; } else { item.TotalCredits = string.Format("{0} responses", item.Quantity); } } else if (item.CreditType == CreditType.ClickType) { if (item.Quantity == 1) { item.TotalCredits = "1 click"; } else { item.TotalCredits = string.Format("{0} clicks", item.Quantity); } } #endregion #region UsedCredits if (item.CreditType == CreditType.EmailType) { if (item.QuantityUsed == 0) { item.UsedCredits = "0"; } else if (item.QuantityUsed == 1) { item.UsedCredits = "1"; } else { item.UsedCredits = string.Format("{0}", item.QuantityUsed); } } else if (item.CreditType == CreditType.ResponseType) { if (item.QuantityUsed == 0) { item.UsedCredits = "0"; } else if (item.QuantityUsed == 1) { item.UsedCredits = "1"; } else { item.UsedCredits = string.Format("{0}", item.QuantityUsed); } } else if (item.CreditType == CreditType.ClickType) { if (item.QuantityUsed == 0) { item.UsedCredits = "0"; } else if (item.QuantityUsed == 1) { item.UsedCredits = "1 "; } else { item.UsedCredits = string.Format("{0}", item.QuantityUsed); } } #endregion #region RestCredits var _restQuantity = item.Quantity - item.QuantityUsed; if (item.CreditType == CreditType.EmailType) { if (_restQuantity == 0) { item.RestCredits = "0"; } else if (_restQuantity == 1) { item.RestCredits = "1"; } else { item.RestCredits = _restQuantity.ToString(); } } else if (item.CreditType == CreditType.ResponseType) { if (_restQuantity == 0) { item.RestCredits = "0"; } else if (_restQuantity == 1) { item.RestCredits = "1"; } else { item.RestCredits = _restQuantity.ToString(); } } else if (item.CreditType == CreditType.ClickType) { if (_restQuantity == 0) { item.RestCredits = "0"; } else if (_restQuantity == 1) { item.RestCredits = "1"; } else { item.RestCredits = _restQuantity.ToString(); } } #endregion } var data = new { total = totalpages, //total pages for the query page = pageIndex, //current page of the query records = totalRecords, //total number of records for the query rows = items }; var response = JsonConvert.SerializeObject(data, Formatting.None); context.Response.Write(response); }
public void FileTests01_01() { var systemManager = VLSystemManager.GetAnInstance(admin); var surveyManager = VLSurveyManager.GetAnInstance(admin); try { //δημιουργούμε ένα client: var client1 = systemManager.CreateClient("Thomas Cookings S.A.", BuiltinCountries.Greece, "THMC", profile: BuiltinProfiles.UTESTFree.ProfileId); Assert.IsNotNull(client1); //Δημιουργούμε ένα νέο survey: var survey1 = surveyManager.CreateSurvey(client1.ClientId, "Questionnaire #1", "Risk assessment"); Assert.IsNotNull(survey1); //Στην αρχή δεν υπάρχει κανένα αρχείο για αυτό το survey: Assert.IsTrue(surveyManager.GetFiles(survey1).Count == 0); VLFile file1 = null; using (var fs = new FileStream(Path.Combine(_ImagesPath, "image1.jpg"), FileMode.Open)) { file1 = surveyManager.AssignFile(survey1, fs, "image1.jpg"); } Assert.IsNotNull(file1); Assert.IsTrue(file1.Client == survey1.Client); Assert.IsTrue(file1.Survey == survey1.SurveyId); Assert.AreEqual <string>("image1.jpg", file1.OriginalFileName); Assert.AreEqual <string>("image1.jpg", file1.ManagedFileName); Assert.AreEqual <string>(".jpg", file1.Extension); Assert.IsTrue(file1.Size == 52077); Assert.IsTrue(file1.IsPhysicalFile); Assert.IsTrue(file1.InventoryPath == Path.Combine(survey1.Client.ToString(CultureInfo.InvariantCulture), survey1.SurveyId.ToString(CultureInfo.InvariantCulture)) + "\\"); var svdFile1 = surveyManager.GetFileById(file1.FileId); Assert.AreEqual <VLFile>(file1, svdFile1); //τώρα έχουμε ένα αρχείο για αυτό το survey Assert.IsTrue(surveyManager.GetFiles(survey1).Count == 1); VLFile file2 = null; using (var fs = new FileStream(Path.Combine(_ImagesPath, "image2.jpg"), FileMode.Open)) { file2 = surveyManager.AssignFile(survey1, fs, "image2.jpg"); } Assert.IsNotNull(file2); Assert.IsTrue(file2.Client == survey1.Client); Assert.IsTrue(file2.Survey == survey1.SurveyId); Assert.AreEqual <string>("image2.jpg", file2.OriginalFileName); Assert.AreEqual <string>("image2.jpg", file2.ManagedFileName); Assert.AreEqual <string>(".jpg", file2.Extension); Assert.IsTrue(file2.Size == 33013); Assert.IsTrue(file2.IsPhysicalFile); Assert.IsTrue(file2.InventoryPath == Path.Combine(survey1.Client.ToString(CultureInfo.InvariantCulture), survey1.SurveyId.ToString(CultureInfo.InvariantCulture)) + "\\"); var svdfile2 = surveyManager.GetFileById(file2.FileId); Assert.AreEqual <VLFile>(file2, svdfile2); //τώρα έχουμε δύο αρχεία για αυτό το survey Assert.IsTrue(surveyManager.GetFiles(survey1).Count == 2); VLFile file3 = null; using (var fs = new FileStream(Path.Combine(_ImagesPath, "image2.jpg"), FileMode.Open)) { file3 = surveyManager.AssignFile(survey1, fs, "image2.jpg"); } Assert.IsNotNull(file3); Assert.IsTrue(file3.Client == survey1.Client); Assert.IsTrue(file3.Survey == survey1.SurveyId); Assert.AreEqual <string>("image2.jpg", file3.OriginalFileName); Assert.AreEqual <string>("image2_1.jpg", file3.ManagedFileName); Assert.AreEqual <string>(".jpg", file3.Extension); Assert.IsTrue(file3.Size == 33013); Assert.IsTrue(file3.IsPhysicalFile); Assert.IsTrue(file3.InventoryPath == Path.Combine(survey1.Client.ToString(CultureInfo.InvariantCulture), survey1.SurveyId.ToString(CultureInfo.InvariantCulture)) + "\\"); var svdfile3 = surveyManager.GetFileById(file3.FileId); Assert.AreEqual <VLFile>(file3, svdfile3); //τώρα έχουμε τρία αρχεία για αυτό το survey Assert.IsTrue(surveyManager.GetFiles(survey1).Count == 3); //διαγράφουμε το ένα surveyManager.Removefile(file3.FileId); Assert.IsNull(surveyManager.GetFileById(file3.FileId)); //τώρα έχουμε δύο αρχεία για αυτό το survey Assert.IsTrue(surveyManager.GetFiles(survey1).Count == 2); //διαγράφουμε το ένα surveyManager.Removefile(file2.FileId); Assert.IsNull(surveyManager.GetFileById(file2.FileId)); //τώρα έχουμε δύο αρχεία για αυτό το survey Assert.IsTrue(surveyManager.GetFiles(survey1).Count == 1); } finally { var clients = systemManager.GetClients(); foreach (var client in clients) { if (client.IsBuiltIn) { continue; } var surveys = surveyManager.GetSurveysForClient(client.ClientId); foreach (var survey in surveys) { surveyManager.DeleteSurvey(survey.SurveyId); } systemManager.DeleteClient(client); } } }
public void CollectorTests02_02() { var surveyManager = VLSurveyManager.GetAnInstance(admin); var systemManager = VLSystemManager.GetAnInstance(admin); try { #region Δημιουργία πελάτη, και λίστας με 10 επαφές: //Δημιουργούμε ένα πελάτη var client1 = systemManager.CreateClient("MySoftavia S.A.", BuiltinCountries.Greece, "man", profile: BuiltinProfiles.UTESTFree.ProfileId); //We create a contact list: var list01 = systemManager.CreateClientList(client1.ClientId, "my-list-01"); //Εισαγωγή 10 γραμμών using (var fs = new FileStream(Path.Combine(_ImportFilesPath, "MOCK_DATA_10a.csv"), FileMode.Open)) { systemManager.ImportContactsFromCSV(list01.ListId, fs, new ContactImportOptions { HasHeaderRecord = true, ContinueOnError = true, EmailOrdinal = 2, FirstNameOrdinal = 3, LastNameOrdinal = 4 }); } //Η λίστα μας έχει τωρα 10 contacts: list01 = systemManager.GetClientListById(list01.ListId); Assert.IsTrue(list01.TotalContacts == 10); Assert.IsTrue(systemManager.GetContacts(list01.ListId).Count == 10); //Κανένα contact δεν είναι OptedOut ή Bounced: Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 0); //We create a contact list: var list02 = systemManager.CreateClientList(client1.ClientId, "my-list-02"); //Εισαγωγή 10 γραμμών using (var fs = new FileStream(Path.Combine(_ImportFilesPath, "MOCK_DATA_10a.csv"), FileMode.Open)) { systemManager.ImportContactsFromCSV(list02.ListId, fs, new ContactImportOptions { HasHeaderRecord = true, ContinueOnError = true, EmailOrdinal = 2, FirstNameOrdinal = 3, LastNameOrdinal = 4 }); } //Η λίστα μας έχει τωρα 10 contacts: list02 = systemManager.GetClientListById(list02.ListId); Assert.IsTrue(list02.TotalContacts == 10); Assert.IsTrue(systemManager.GetContacts(list02.ListId).Count == 10); //Κανένα contact δεν είναι OptedOut ή Bounced: Assert.IsTrue(systemManager.GetOptedOutContacts(list02).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list02).Count == 0); #endregion //We create a survey: var survey1 = surveyManager.CreateSurvey(client1, "Questionnaire #1", "Risk assessment"); //We create a collector: var collector01 = surveyManager.CreateCollector(survey1.SurveyId, CollectorType.Email, "COLLECTOR01_email1"); //Δημιουργούμε στον collector 10 recipients: surveyManager.ImportRecipientsFromList(collector01, list01); //We create a collector: var collector02 = surveyManager.CreateCollector(survey1.SurveyId, CollectorType.Email, "COLLECTOR02_email1"); //Δημιουργούμε στον collector 10 recipients: surveyManager.ImportRecipientsFromList(collector02, list01); //Τώρα ο collector01 έχει 10 recipients: collector01 = surveyManager.GetCollectorById(collector01.CollectorId); Assert.IsTrue(surveyManager.GetRecipients(collector01).Count == 10); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector01).Count == 0); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector01).Count == 0); //Τώρα ο collector02 έχει 10 recipients: collector02 = surveyManager.GetCollectorById(collector02.CollectorId); Assert.IsTrue(surveyManager.GetRecipients(collector02).Count == 10); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector02).Count == 0); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector02).Count == 0); //Κάνουμε bounced τρία emails: Assert.IsTrue(surveyManager.BounceRecipient(collector01, "*****@*****.**") == 2); Assert.IsTrue(surveyManager.BounceRecipient(collector01, "*****@*****.**") == 2); Assert.IsTrue(surveyManager.BounceRecipient(collector01, "*****@*****.**") == 2); //Τώρα έχουμε τρία (3) bounced emails στον Collector, και στην λίστα του πελάτη μας: Assert.IsTrue(surveyManager.GetRecipients(collector01).Count == 10); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector01).Count == 0); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector01).Count == 3); Assert.IsTrue(surveyManager.GetRecipients(collector02).Count == 10); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector02).Count == 0); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector02).Count == 3); // Assert.IsTrue(systemManager.GetContacts(list01.ListId).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 3); Assert.IsTrue(systemManager.GetContacts(list02.ListId).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list02).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list02).Count == 3); //Κάνουμε optedOut τρία emails: Assert.IsTrue(surveyManager.OptOutRecipient(collector01, "*****@*****.**") == 2); Assert.IsTrue(surveyManager.OptOutRecipient(collector01, "*****@*****.**") == 2); Assert.IsTrue(surveyManager.OptOutRecipient(collector01, "*****@*****.**") == 2); //Τώρα έχουμε τρία (3) OptedOut emails στον Collector, και στην λίστα του πελάτη μας: Assert.IsTrue(surveyManager.GetRecipients(collector01).Count == 10); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector01).Count == 3); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector01).Count == 3); Assert.IsTrue(surveyManager.GetRecipients(collector02).Count == 10); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector02).Count == 3); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector02).Count == 3); // Assert.IsTrue(systemManager.GetContacts(list01.ListId).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 3); Assert.IsTrue(systemManager.GetContacts(list02.ListId).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list02).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list02).Count == 3); #region Διαγραφές //Θα διαγράψουμε τα OptedOut recipients: Assert.IsTrue(surveyManager.RemoveAllOptedOutRecipients(collector01) == 3); //Ελέγχουμε: Assert.IsTrue(surveyManager.GetRecipients(collector01).Count == 7); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector01).Count == 0); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector01).Count == 3); Assert.IsTrue(surveyManager.GetRecipients(collector02).Count == 10); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector02).Count == 3); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector02).Count == 3); // Assert.IsTrue(systemManager.GetContacts(list01.ListId).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 3); Assert.IsTrue(systemManager.GetContacts(list02.ListId).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list02).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list02).Count == 3); //θα διαγράψουμε τα bounced recipients: Assert.IsTrue(surveyManager.RemoveAllBouncedRecipients(collector01) == 3); //Ελέγχουμε: Assert.IsTrue(surveyManager.GetRecipients(collector01).Count == 4); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector01).Count == 0); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector01).Count == 0); Assert.IsTrue(surveyManager.GetRecipients(collector02).Count == 10); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector02).Count == 3); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector02).Count == 3); // Assert.IsTrue(systemManager.GetContacts(list01.ListId).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 3); Assert.IsTrue(systemManager.GetContacts(list02.ListId).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list02).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list02).Count == 3); //Θα διαγράψουμε όλες τις επαφές απο την λίστα μας: systemManager.RemoveAllContactsFromList(list01.ListId); list01 = systemManager.GetClientListById(list01.ListId); //Ελέγχουμε: Assert.IsTrue(surveyManager.GetRecipients(collector01).Count == 4); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector01).Count == 0); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector01).Count == 0); Assert.IsTrue(surveyManager.GetRecipients(collector02).Count == 10); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector02).Count == 3); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector02).Count == 3); // Assert.IsTrue(list01.TotalContacts == 0); Assert.IsTrue(systemManager.GetContacts(list01.ListId).Count == 0); Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 0); Assert.IsTrue(systemManager.GetContacts(list02.ListId).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list02).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list02).Count == 3); //Θα διαγράχουμε όλα τα unsent recipients απο τον collector: Assert.IsTrue(surveyManager.RemoveAllUnsentRecipients(collector02) == 10); //Ελέγχουμε: Assert.IsTrue(surveyManager.GetRecipients(collector01).Count == 4); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector01).Count == 0); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector01).Count == 0); Assert.IsTrue(surveyManager.GetRecipients(collector02).Count == 0); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector02).Count == 0); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector02).Count == 0); // Assert.IsTrue(list01.TotalContacts == 0); Assert.IsTrue(systemManager.GetContacts(list01.ListId).Count == 0); Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 0); Assert.IsTrue(systemManager.GetContacts(list02.ListId).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list02).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list02).Count == 3); #endregion } finally { var surveys = surveyManager.GetSurveys(textsLanguage: BuiltinLanguages.PrimaryLanguage); foreach (var item in surveys) { if (item.IsBuiltIn) { continue; } surveyManager.DeleteSurvey(item); } var clients = systemManager.GetClients(); foreach (var client in clients) { if (client.IsBuiltIn) { continue; } systemManager.DeleteClient(client); } } }
public void CollectorTests02_01() { var surveyManager = VLSurveyManager.GetAnInstance(admin); var systemManager = VLSystemManager.GetAnInstance(admin); try { #region Δημιουργία πελάτη, και λίστας με 10 επαφές: //Δημιουργούμε ένα πελάτη var client1 = systemManager.CreateClient("MySoftavia S.A.", BuiltinCountries.Greece, "man", profile: BuiltinProfiles.UTESTFree.ProfileId); //We create a contact list: var list01 = systemManager.CreateClientList(client1.ClientId, "my-list-01"); //Εισαγωγή 10 γραμμών ContactImportResult importResult = null; using (var fs = new FileStream(Path.Combine(_ImportFilesPath, "MOCK_DATA_10a.csv"), FileMode.Open)) { importResult = systemManager.ImportContactsFromCSV(list01.ListId, fs, new ContactImportOptions { HasHeaderRecord = true, ContinueOnError = true, EmailOrdinal = 2, FirstNameOrdinal = 3, LastNameOrdinal = 4 }); } //Η λίστα μας έχει τωρα 10 contacts: list01 = systemManager.GetClientListById(list01.ListId); Assert.IsTrue(list01.TotalContacts == 10); Assert.IsTrue(systemManager.GetContacts(list01.ListId).Count == 10); //Κανένα contact δεν είναι OptedOut ή Bounced: Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 0); #endregion //We create a survey: var survey1 = surveyManager.CreateSurvey(client1, "Questionnaire #1", "Risk assessment"); //We create a collector: var collector01 = surveyManager.CreateCollector(survey1.SurveyId, CollectorType.Email, "COLLECTOR01_email1"); //Δημιουργούμε στον collector 10 recipients: surveyManager.ImportRecipientsFromList(collector01, list01); //Τώρα ο collector μας έχει 10 recipients: collector01 = surveyManager.GetCollectorById(collector01.CollectorId); Assert.IsTrue(surveyManager.GetRecipients(collector01).Count == 10); //Κανένα recipient δεν είναι OptedOut ή Bounced: var recipients = surveyManager.GetRecipients(collector01); foreach (var item in recipients) { Assert.IsFalse(item.IsSentEmail); Assert.IsFalse(item.IsOptedOut); Assert.IsFalse(item.IsBouncedEmail); Assert.IsFalse(item.HasResponded); } Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector01).Count == 0); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector01).Count == 0); //Κάνουμε bounced τρία emails: var email01b = recipients[0].Email; var email02b = recipients[1].Email; var email03b = recipients[2].Email; Assert.IsTrue(surveyManager.BounceRecipient(collector01, email01b) == 1); Assert.IsTrue(surveyManager.BounceRecipient(collector01, email02b) == 1); Assert.IsTrue(surveyManager.BounceRecipient(collector01, email03b) == 1); //Τώρα έχουμε τρία (3) bounced emails στον Collector, και στην λίστα του πελάτη μας: Assert.IsTrue(surveyManager.GetRecipients(collector01).Count == 10); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector01).Count == 0); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector01).Count == 3); // Assert.IsTrue(systemManager.GetContacts(list01.ListId).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 3); //Κάνουμε optedOut τρία emails: var email01o = recipients[7].Email; var email02o = recipients[8].Email; var email03o = recipients[9].Email; Assert.IsTrue(surveyManager.OptOutRecipient(collector01, email01o) == 1); Assert.IsTrue(surveyManager.OptOutRecipient(collector01, email02o) == 1); Assert.IsTrue(surveyManager.OptOutRecipient(collector01, email03o) == 1); //Τώρα έχουμε τρία (3) OptedOut emails στον Collector, και στην λίστα του πελάτη μας: Assert.IsTrue(surveyManager.GetRecipients(collector01).Count == 10); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector01).Count == 3); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector01).Count == 3); Assert.IsTrue(surveyManager.GetEmailedRecipients(collector01).Count == 0); // Assert.IsTrue(systemManager.GetContacts(list01.ListId).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 3); #region Διαγραφές //Θα διαγράψουμε τα OptedOut recipients: Assert.IsTrue(surveyManager.RemoveAllOptedOutRecipients(collector01) == 3); //Ελέγχουμε: Assert.IsTrue(surveyManager.GetRecipients(collector01).Count == 7); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector01).Count == 0); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector01).Count == 3); // Assert.IsTrue(systemManager.GetContacts(list01.ListId).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 3); //θα διαγράψουμε τα bounced recipients: Assert.IsTrue(surveyManager.RemoveAllBouncedRecipients(collector01) == 3); //Ελέγχουμε: Assert.IsTrue(surveyManager.GetRecipients(collector01).Count == 4); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector01).Count == 0); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector01).Count == 0); // Assert.IsTrue(systemManager.GetContacts(list01.ListId).Count == 10); Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 3); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 3); //Θα διαγράψουμε όλες τις επαφές απο την λίστα μας: systemManager.RemoveAllContactsFromList(list01.ListId); list01 = systemManager.GetClientListById(list01.ListId); //Ελέγχουμε: Assert.IsTrue(surveyManager.GetRecipients(collector01).Count == 4); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector01).Count == 0); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector01).Count == 0); // Assert.IsTrue(list01.TotalContacts == 0); Assert.IsTrue(systemManager.GetContacts(list01.ListId).Count == 0); Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 0); //Θα διαγράχουμε όλα τα unsent recipients απο τον collector: Assert.IsTrue(surveyManager.RemoveAllUnsentRecipients(collector01) == 4); //Ελέγχουμε: Assert.IsTrue(surveyManager.GetRecipients(collector01).Count == 0); Assert.IsTrue(surveyManager.GetOptedOutRecipients(collector01).Count == 0); Assert.IsTrue(surveyManager.GetBouncedRecipients(collector01).Count == 0); // Assert.IsTrue(list01.TotalContacts == 0); Assert.IsTrue(systemManager.GetContacts(list01.ListId).Count == 0); Assert.IsTrue(systemManager.GetOptedOutContacts(list01).Count == 0); Assert.IsTrue(systemManager.GetBouncedContacts(list01).Count == 0); #endregion } finally { var surveys = surveyManager.GetSurveys(textsLanguage: BuiltinLanguages.PrimaryLanguage); foreach (var item in surveys) { if (item.IsBuiltIn) { continue; } surveyManager.DeleteSurvey(item); } var clients = systemManager.GetClients(); foreach (var client in clients) { if (client.IsBuiltIn) { continue; } systemManager.DeleteClient(client); } } }
public void SurveyResponsesTest01_03() { var systemManager = VLSystemManager.GetAnInstance(admin); var surveyManager = VLSurveyManager.GetAnInstance(admin); try { //We create a customer: var client = systemManager.CreateClient("MySoftavia S.A.", BuiltinCountries.Greece, "man", profile: BuiltinProfiles.UTESTFree.ProfileId); //We create a survey: var survey1 = CreateSurvey1(surveyManager, client); Assert.IsNotNull(survey1); //Τραβάμε τις ερωτήσεις: var questions = surveyManager.GetQuestionsForSurvey(survey1); Assert.IsTrue(questions.Count == 14); Assert.IsTrue(surveyManager.GetResponses(survey1.SurveyId).Count == 0); Assert.IsTrue(survey1.RecordedResponses == 0); Assert.IsFalse(survey1.HasResponses); var _now = Utility.RoundToSeconds(Utility.UtcNow()); //Δημιουργούμε ένα Response: var response1 = surveyManager.CreateResponse(survey1.SurveyId, null, null, _now); //Εχει αλλάξει το survey1: survey1 = surveyManager.GetSurveyById(survey1.SurveyId); Assert.IsTrue(survey1.RecordedResponses == 1); Assert.IsTrue(survey1.HasResponses); //Δημιουργούμε ένα Response: var response2 = surveyManager.CreateResponse(survey1.SurveyId, null, null, _now); //Εχει αλλάξει το survey1: survey1 = surveyManager.GetSurveyById(survey1.SurveyId); Assert.IsTrue(survey1.RecordedResponses == 2); Assert.IsTrue(survey1.HasResponses); //Δημιουργούμε ένα Response: var response3 = surveyManager.CreateResponse(survey1.SurveyId, null, null, _now); //Εχει αλλάξει το survey1: survey1 = surveyManager.GetSurveyById(survey1.SurveyId); Assert.IsTrue(survey1.RecordedResponses == 3); Assert.IsTrue(survey1.HasResponses); //Δημιουργούμε ένα collector: var collector = surveyManager.CreateCollector(survey1, CollectorType.WebLink, "test1"); Assert.IsTrue(collector.Status == CollectorStatus.Open); Assert.IsTrue(collector.Responses == 0); //Δημιουργούμε ένα Response: var response4 = surveyManager.CreateResponse(survey1.SurveyId, collector.CollectorId, null, _now); //εχει αλλάξει ο collector: collector = surveyManager.GetCollectorById(collector.CollectorId); Assert.IsTrue(collector.Responses == 1); //Εχει αλλάξει το survey1: survey1 = surveyManager.GetSurveyById(survey1.SurveyId); Assert.IsTrue(survey1.RecordedResponses == 4); Assert.IsTrue(survey1.HasResponses); //Δημιουργούμε ένα Response: var response5 = surveyManager.CreateResponse(survey1.SurveyId, collector.CollectorId, null, _now); //εχει αλλάξει ο collector: collector = surveyManager.GetCollectorById(collector.CollectorId); Assert.IsTrue(collector.Responses == 2); //Εχει αλλάξει το survey1: survey1 = surveyManager.GetSurveyById(survey1.SurveyId); Assert.IsTrue(survey1.RecordedResponses == 5); Assert.IsTrue(survey1.HasResponses); //Δημιουργούμε ένα Response: var response6 = surveyManager.CreateResponse(survey1.SurveyId, collector.CollectorId, null, _now); //εχει αλλάξει ο collector: collector = surveyManager.GetCollectorById(collector.CollectorId); Assert.IsTrue(collector.Responses == 3); //Εχει αλλάξει το survey1: survey1 = surveyManager.GetSurveyById(survey1.SurveyId); Assert.IsTrue(survey1.RecordedResponses == 6); Assert.IsTrue(survey1.HasResponses); Assert.IsTrue(surveyManager.GetResponses(survey1.SurveyId).Count == 6); //διαγράφουμε ένα response: surveyManager.DeleteResponse(response5.ResponseId); Assert.IsTrue(surveyManager.GetResponses(survey1.SurveyId).Count == 5); //εχει αλλάξει ο collector: collector = surveyManager.GetCollectorById(collector.CollectorId); Assert.IsTrue(collector.Responses == 2); //Εχει αλλάξει το survey1: survey1 = surveyManager.GetSurveyById(survey1.SurveyId); Assert.IsTrue(survey1.RecordedResponses == 5); Assert.IsTrue(survey1.HasResponses); //διαγράφουμε ta ρεσπονσεσ του collector: surveyManager.ClearResponsesForCollector(collector.CollectorId); //εχει αλλάξει ο collector: collector = surveyManager.GetCollectorById(collector.CollectorId); Assert.IsTrue(collector.Responses == 0); //Εχει αλλάξει το survey1: survey1 = surveyManager.GetSurveyById(survey1.SurveyId); Assert.IsTrue(survey1.RecordedResponses == 3); Assert.IsTrue(survey1.HasResponses); //Διαγράφουμε όλα τα responses: var responses = surveyManager.GetResponses(survey1.SurveyId); foreach (var r in responses) { surveyManager.DeleteResponse(r.ResponseId); } //Εχει αλλάξει το survey1: survey1 = surveyManager.GetSurveyById(survey1.SurveyId); Assert.IsTrue(survey1.RecordedResponses == 0); Assert.IsFalse(survey1.HasResponses); } finally { var surveys = surveyManager.GetSurveys(textsLanguage: BuiltinLanguages.PrimaryLanguage); foreach (var item in surveys) { var collectors = surveyManager.GetCollectors(item); foreach (var c in collectors) { if (c.Status == CollectorStatus.Open) { surveyManager.CloseCollector(c); } } if (item.IsBuiltIn) { continue; } surveyManager.DeleteSurvey(item); } var clients = systemManager.GetClients(); foreach (var client in clients) { if (client.IsBuiltIn) { continue; } systemManager.DeleteClient(client); } } }