public void DeleteEntries_string_contains_condition() { ARLoginContext context = null; try { context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); ARSet <NRemedy_Test_Regular_Form> set = new ARSet <NRemedy_Test_Regular_Form>(context); var q = from s in set where s.CharacterField.Contains(TestCharacterFieldValueChinese + "%") && s.IntegerField == 3 select s.RequestID; Assert.AreEqual(2, q.Count()); proxy.DeleteEntryList("'Character Field' LIKE \"" + TestCharacterFieldValueChinese + "%\" AND 'Integer Field' = 3"); //after delete the count should be 0 Assert.AreEqual(0, q.Count()); } finally { if (context != null) { context.Dispose(); } } }
public void ARProxy_GetEntryList_qulifier_fieldIds_nopage_nocount_noorder_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { List <uint> fieldIds = new List <uint>(); fieldIds.Add(TestCharacterFieldId); //int totalMatch = -1; ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); var models = proxy.GetEntryList( "'Character Field' = \"Hello Remedy\"", fieldIds, 0, null, null, null); Assert.AreEqual(7, models.Count); foreach (var model in models) { Assert.AreEqual(TestCharacterFieldValue, model.CharacterField); } } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void DeleteEntries_single_condition() { ARLoginContext context = null; try { context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); ARSet <NRemedy_Test_Regular_Form> set = new ARSet <NRemedy_Test_Regular_Form>(context); var q = from s in set where s.CharacterField == TestCharacterFieldValue select s.RequestID; Assert.AreEqual(7, q.Count()); proxy.DeleteEntryList(m => m.CharacterField == TestCharacterFieldValue); //after delete the count should be 0 Assert.AreEqual(0, q.Count()); } finally { if (context != null) { context.Dispose(); } } }
public void ARProxy_GetEntryListStatictisc_by_Properties_Str_avg_qulifier_group_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); var retlist = proxy.GetListEntryStatictisc( "'Character Field' LIKE \"%你好%\"", TestIntFieldId, new string[] { "CharacterField" }, ARStatictisc.STAT_OP_AVERAGE ); Assert.AreEqual(2, retlist.Count); Dictionary <String, int> assertTable = new Dictionary <string, int>(); //assertTable.Add("Hello Remedy", 7); assertTable.Add("你好 RemedySet Something", 3); assertTable.Add("你好 Remedy", 2); Assert.AreEqual(assertTable[retlist[0].CharacterField], Convert.ToInt32(retlist[0].Statictisc)); Assert.AreEqual(assertTable[retlist[1].CharacterField], Convert.ToInt32(retlist[1].Statictisc)); } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void ARProxy_GetEntryListStatictisc_count_noqulifier_group_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { List <UInt32> groupIds = new List <UInt32>(); groupIds.Add(TestCharacterFieldId); ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); var retlist = proxy.GetListEntryStatictisc( null, ARStatictisc.STAT_OP_COUNT, null, groupIds ); Assert.AreEqual(3, retlist.Count); Dictionary <String, int> assertTable = new Dictionary <string, int>(); assertTable.Add("Hello Remedy", 7); assertTable.Add("你好 RemedySet Something", 2); assertTable.Add("你好 Remedy", 9); Assert.AreEqual(assertTable[retlist[0].CharacterField], Convert.ToInt32(retlist[0].Statictisc)); Assert.AreEqual(assertTable[retlist[1].CharacterField], Convert.ToInt32(retlist[1].Statictisc)); Assert.AreEqual(assertTable[retlist[2].CharacterField], Convert.ToInt32(retlist[2].Statictisc)); } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void ARProxy_GetEntryListStatictisc_count_qulifier_nogroup_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { List <UInt32> groupIds = new List <UInt32>(); ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); groupIds.Add(TestCharacterFieldId); var retlist = proxy.GetListEntryStatictisc( "'Character Field' = \"Hello Remedy\"", ARStatictisc.STAT_OP_COUNT, null, null ); Assert.AreEqual(1, retlist.Count); Assert.AreEqual(7, Convert.ToInt32(retlist[0].Statictisc)); } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public static void Initialize(TestContext context2) { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { //int totalMatch = -1; ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); var models = proxy.GetEntryList( null, new string[] { "RequestID" }, null, 0, null, null); foreach (var model in models) { proxy.DeleteEntry(model); } } catch (Exception ex) { throw new Exception("env init in Construct error.", ex); } finally { context.Dispose(); } }
public void ARProxy_CreateEntry_from_delegation() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); DateTime dt = DateTime.Now; string entryId = proxy.CreateEntry(new NRemedy_Test_Regular_Form { CharacterField = "should not changed", Status = NRemedy_Test_Regular_Form.Status_Enum.Fixed, }, //define a delegate only save status delegate(System.Reflection.PropertyInfo pi) { return(pi.Name == "Status"); } ); Assert.AreNotEqual(null, entryId); NRemedy_Test_Regular_Form model = proxy.GetEntry(entryId); Assert.AreEqual(NRemedy_Test_Regular_Form.Status_Enum.Fixed, model.Status); Assert.AreEqual(null, null);// } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void LinqParse_select_anouymous_object_clause() { using (ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd)) { ARSet <NRemedy_Test_Regular_Form> set = new ARSet <NRemedy_Test_Regular_Form>(context); var q = from s in set select new { s.RealNumberField, s.DateTimeField }; Assert.IsTrue(q.Provider is ARQueryProvider <NRemedy_Test_Regular_Form>); TranslateResult tr = q.Translate <NRemedy_Test_Regular_Form>(); Assert.IsTrue(tr.SelectResult != null); DateTime dt = DateTime.Now; NRemedy_Test_Regular_Form tmp = new NRemedy_Test_Regular_Form(); tmp.RealNumberField = 3.14; tmp.DateTimeField = dt; var fun = tr.SelectResult.SelectExpression.Compile(); dynamic dymic = fun.DynamicInvoke(tmp); Assert.AreEqual(3.14, dymic.RealNumberField); Assert.AreEqual(dt, dymic.DateTimeField); Assert.IsTrue(tr.SelectResult.SelectedProperties.First(m => m == "RealNumberField") != null); Assert.IsTrue(tr.SelectResult.SelectedProperties.First(m => m == "DateTimeField") != null); } }
public void GetEntryList_by_expression_qulifier_fieldIds_nopage_nocount_noorder_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); var models = proxy.GetEntryList( m => m.CharacterField == TestCharacterFieldValue, 0, null, null, null, m => m.CharacterField ); Assert.AreEqual(7, models.Count); foreach (var model in models) { Assert.AreEqual(TestCharacterFieldValue, model.CharacterField); } } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void ARProxy_CreateEntry_datatype_int() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); string entryId = proxy.CreateEntry(new NRemedy_Test_Regular_Form { CharacterField = "should not changed", IntegerField = 256 }); Assert.AreNotEqual(null, entryId); NRemedy_Test_Regular_Form model = proxy.GetEntry(entryId); Assert.AreEqual(256, model.IntegerField); model.IntegerField = 512; proxy.SetEntry(model); Assert.AreEqual(512, model.IntegerField); Assert.AreEqual("should not changed", model.CharacterField); } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void ARProxy_GetEntryListStatictisc_avg_qulifier_group_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { List<UInt32> groupIds = new List<UInt32>(); groupIds.Add(TestCharacterFieldId); ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); var retlist = proxy.GetListEntryStatictisc( "'Character Field' LIKE \"%你好%\"", ARStatictisc.STAT_OP_AVERAGE, TestIntFieldId, groupIds ); Assert.AreEqual(2, retlist.Count); Dictionary<String, int> assertTable = new Dictionary<string, int>(); //assertTable.Add("Hello Remedy", 7); assertTable.Add("你好 RemedySet Something", 3); assertTable.Add("你好 Remedy", 2); Assert.AreEqual(assertTable[retlist[0].CharacterField], Convert.ToInt32(retlist[0].Statictisc)); Assert.AreEqual(assertTable[retlist[1].CharacterField], Convert.ToInt32(retlist[1].Statictisc)); } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void ARProxy_CreateEntry_datatype_Enum() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); DateTime dt = DateTime.Now; string entryId = proxy.CreateEntry(new NRemedy_Test_Regular_Form { CharacterField = "should not changed", Status = NRemedy_Test_Regular_Form.Status_Enum.Fixed }); Assert.AreNotEqual(null, entryId); NRemedy_Test_Regular_Form model = proxy.GetEntry(entryId); Assert.AreEqual(NRemedy_Test_Regular_Form.Status_Enum.Fixed, model.Status); model.Status = NRemedy_Test_Regular_Form.Status_Enum.Rejected; proxy.SetEntry(model); Assert.AreEqual(NRemedy_Test_Regular_Form.Status_Enum.Rejected, model.Status); //Assert.AreEqual(dt + new TimeSpan(1, 1, 1), model.DateTimeField); Assert.AreEqual("should not changed", model.CharacterField); } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public static void Initialize(TestContext context2) { ARLoginContext context = null; try { context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); //int totalMatch = -1; ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); var models = proxy.GetEntryList( null, new string[] { "RequestID" }, null, 0, null, null); foreach (var model in models) { proxy.DeleteEntry(model); } } catch (Exception ex) { throw new Exception("env init in Construct error.", ex); } finally { context.Dispose(); } }
public void ARProxy_DeleteEntry_By_EntryId() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); DateTime dt = DateTime.Now; string entryId = proxy.CreateEntry(new NRemedy_Test_Regular_Form { CharacterField = "should not changed", Status = NRemedy_Test_Regular_Form.Status_Enum.Fixed, } ); Assert.AreNotEqual(null, entryId); NRemedy_Test_Regular_Form model = proxy.GetEntry(entryId); Assert.AreEqual(NRemedy_Test_Regular_Form.Status_Enum.Fixed, model.Status); //delete proxy.DeleteEntry(entryId); NRemedy_Test_Regular_Form model2 = proxy.GetEntry(entryId); Assert.IsNull(model2); } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void LinqQuery_select_anouymous_object_clause() { using (ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd)) { ARSet <NRemedy_Test_Regular_Form> set = new ARSet <NRemedy_Test_Regular_Form>(context); var q = from s in set select new { s.CharacterField, s.IntegerField }; int count = 0; foreach (var g in q) { if (g.IntegerField == 1) { Assert.AreEqual(TestCharacterFieldValue, g.CharacterField); } if (g.IntegerField == 2) { Assert.AreEqual(TestCharacterFieldValueChinese, g.CharacterField); } if (g.IntegerField == 3) { Assert.AreEqual(TestCharacterFieldValueChinese + "Set Something", g.CharacterField); } count++; } Assert.AreEqual(18, count); } }
public void ARProxy_CreateEntry_simple_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { //create a generic type proxy to perform API ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); //simply use a model instance to create an entry string entryId = proxy.CreateEntry(new NRemedy_Test_Regular_Form { CharacterField = TestCharacterFieldValue }); Assert.AreNotEqual(null, entryId); //also use a entryid(request id) to get entry from AR NRemedy_Test_Regular_Form model = proxy.GetEntry(entryId); Assert.AreEqual(TestCharacterFieldValue, model.CharacterField); } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void LinqParse_select_another_object_clause() { using (ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd)) { ARSet <NRemedy_Test_Regular_Form> set = new ARSet <NRemedy_Test_Regular_Form>(context); var q = from s in set select new Temp { Str = s.CharacterField, dt = (DateTime)s.DateTimeField, de = (Decimal)s.DecimalNumberField }; Assert.IsTrue(q.Provider is ARQueryProvider <NRemedy_Test_Regular_Form>); //var tr2 = ((ARQueryProvider<NRemedy_Test_Regular_Form>)q.Provider).ExecuteOnlyTranslate(q.Expression); TranslateResult tr = q.Translate <NRemedy_Test_Regular_Form>(); Assert.IsTrue(tr.SelectResult != null); DateTime dt = DateTime.Now; NRemedy_Test_Regular_Form tmp = new NRemedy_Test_Regular_Form(); tmp.CharacterField = "3.14"; tmp.DateTimeField = dt; tmp.DecimalNumberField = 3.14m; var fun = tr.SelectResult.SelectExpression.Compile(); Temp temp = (Temp)fun.DynamicInvoke(tmp); Assert.AreEqual("3.14", temp.Str); Assert.AreEqual(dt, temp.dt); Assert.AreEqual(3.14m, temp.de); Assert.IsTrue(tr.SelectResult.SelectedProperties.First(m => m == "CharacterField") != null); Assert.IsTrue(tr.SelectResult.SelectedProperties.First(m => m == "DateTimeField") != null); Assert.IsTrue(tr.SelectResult.SelectedProperties.First(m => m == "DecimalNumberField") != null); } }
public void GetEntryList_by_expression_qulifier_fieldIds_haspage_hascount_noorder_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { TotalMatch total = new TotalMatch(); ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); var retlist = proxy.GetEntryList( m => m.CharacterField.Contains("%你好%"), 0, 5, total, null, m => m.CharacterField, m => m.RequestID ); Assert.AreEqual(5, retlist.Count); Assert.AreEqual(11, total.Value); foreach (var entry in retlist) { Assert.AreEqual(true, entry.CharacterField.Contains("你好")); } Assert.AreEqual(4, Convert.ToInt32(retlist.Max(m => m.RequestID)) - Convert.ToInt32(retlist.Min(m => m.RequestID))); } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void Login_with_admin_failed_and_try_a_success_again() { ARLoginContext context = null; try { context = new ARLoginContext(TestServer, TestChineseUser, TestChineseUserPwd + "something"); } catch (ARException ex) { Assert.AreEqual(623, ex.MessageNumber); //183977-ErrorMsgs-7604.pdf page 72 try { context = new ARLoginContext(TestServer, TestChineseUser, TestChineseUserPwd); } catch { Assert.AreEqual(null, ex); } } finally { if (context != null) { context.Dispose(); } } }
public void SetEntries_single_condition() { ARLoginContext context = null; try { context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); ARSet <NRemedy_Test_Regular_Form> set = new ARSet <NRemedy_Test_Regular_Form>(context); var q = from s in set where s.CharacterField == TestCharacterFieldValue select s.IntegerField; Assert.AreEqual(7, q.Count()); NRemedy_Test_Regular_Form model = new NRemedy_Test_Regular_Form(); model.IntegerField = 10;//original is 1 proxy.SetEntryList("'Character Field' = \"" + TestCharacterFieldValue + "\"", model, new string[] { "IntegerField" }); foreach (var i in q) { Assert.AreEqual(10, i); } } finally { if (context != null) { context.Dispose(); } } }
public static void Initialize(TestContext context2) { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { //int totalMatch = -1; ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); var models = proxy.GetEntryList( null, new string[] { "RequestID" }, null, 0, null, null); foreach (var model in models) { proxy.DeleteEntry(model); } NRemedy_Test_Regular_Form newentry = new NRemedy_Test_Regular_Form(); newentry.CharacterField = TestCharacterFieldValue; newentry.Radio_Button_Field = null; newentry.IntegerField = 1; for (int i = 0; i < 7; i++) { proxy.CreateEntry(newentry); } newentry.CharacterField = TestCharacterFieldValueChinese; newentry.IntegerField = 2; for (int i = 0; i < 9; i++) { proxy.CreateEntry(newentry); } newentry.CharacterField = TestCharacterFieldValueChinese + "Set Something"; newentry.IntegerField = 3; for (int i = 0; i < 2; i++) { proxy.CreateEntry(newentry); } } catch (Exception ex) { throw new Exception("env init in Construct error.", ex); } finally { context.Dispose(); } }
public void SetEntries_All() { ARLoginContext context = null; try { context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); NRemedy_Test_Regular_Form newentry = new NRemedy_Test_Regular_Form(); newentry.CharacterField = TestCharacterFieldValue; newentry.Radio_Button_Field = null; newentry.IntegerField = 1; for (int i = 0; i < 7; i++) { proxy.CreateEntry(newentry); } newentry.CharacterField = TestCharacterFieldValueChinese; newentry.IntegerField = 2; for (int i = 0; i < 9; i++) { proxy.CreateEntry(newentry); } ARSet <NRemedy_Test_Regular_Form> set = new ARSet <NRemedy_Test_Regular_Form>(context); var q = from s in set select s.IntegerField; int count = q.Count(); Assert.IsTrue(count > 0); NRemedy_Test_Regular_Form model = new NRemedy_Test_Regular_Form(); model.IntegerField = 110;//original is 1 proxy.SetEntryList(null, model, new string[] { "IntegerField" }); //after delete the count should be 0 foreach (var i in q) { Assert.AreEqual(110, i); } } finally { if (context != null) { context.Dispose(); } } }
public static void Initialize(TestContext context2) { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { //int totalMatch = -1; ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); var models = proxy.GetEntryList( null, new string[] { "RequestID" }, null, 0, null, null); foreach (var model in models) { proxy.DeleteEntry(model); } NRemedy_Test_Regular_Form newentry = new NRemedy_Test_Regular_Form(); newentry.CharacterField = TestCharacterFieldValue; newentry.Radio_Button_Field = null; newentry.IntegerField = 1; for (int i = 0; i < 7; i++) { proxy.CreateEntry(newentry); } newentry.CharacterField = TestCharacterFieldValueChinese; newentry.IntegerField = 2; for (int i = 0; i < 9; i++) { proxy.CreateEntry(newentry); } newentry.CharacterField = TestCharacterFieldValueChinese + "Set Something"; newentry.IntegerField = 3; for (int i = 0; i < 2; i++) { proxy.CreateEntry(newentry); } } catch (Exception ex) { throw new Exception("env init in Construct error.", ex); } finally { context.Dispose(); } }
public void ARProxy_GetEntryList_by_filter_qulifier_fieldIds_nopage_nocount_noorder_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); var models = proxy.GetEntryList( "'Character Field' = \"Hello Remedy\"", 0, delegate(System.Reflection.PropertyInfo pi){ return(pi.Name == "CharacterField"); }, null, null, null); Assert.AreEqual(7, models.Count); foreach (var model in models) { Assert.AreEqual(TestCharacterFieldValue, model.CharacterField); Assert.AreEqual(null, model.IntegerField); } var models2 = proxy.GetEntryList( "'Character Field' = \"Hello Remedy\"", 0, delegate(System.Reflection.PropertyInfo pi) { return(pi.Name == "CharacterField" || pi.Name == "IntegerField"); }, null, null, null); Assert.AreEqual(7, models2.Count); foreach (var model in models2) { Assert.AreEqual(TestCharacterFieldValue, model.CharacterField); Assert.AreEqual(1, model.IntegerField); } } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void LinqParse_OrderByDescending_clause() { using (ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd)) { ARSet <NRemedy_Test_Regular_Form> set = new ARSet <NRemedy_Test_Regular_Form>(context); var q = from s in set orderby s.CharacterField descending select s; TranslateResult tr = q.Translate <NRemedy_Test_Regular_Form>(); Assert.IsTrue(tr.OrderByResult != null); Assert.AreEqual("CharacterField", tr.OrderByResult.OrderByList.First().Property); Assert.AreEqual("OrderByDescending", tr.OrderByResult.OrderByList.First().Method); } }
public void LinqParse_Take_Skip_Combine_clause() { using (ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd)) { ARSet <NRemedy_Test_Regular_Form> set = new ARSet <NRemedy_Test_Regular_Form>(context); var q = from s in set.Take(10).Skip(2) select s; TranslateResult tr = q.Translate <NRemedy_Test_Regular_Form>(); Assert.IsTrue(tr.NoQueryableResult.HasTake); Assert.IsTrue(tr.NoQueryableResult.HasSkip); Assert.AreEqual(10, tr.NoQueryableResult.Take); Assert.AreEqual(2, tr.NoQueryableResult.Skip); } }
public void LinqParse_Take_const_clause() { using (ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd)) { ARSet <NRemedy_Test_Regular_Form> set = new ARSet <NRemedy_Test_Regular_Form>(context); var q = from s in set.Take(11) select s; Assert.IsTrue(q.Provider is ARQueryProvider <NRemedy_Test_Regular_Form>); TranslateResult tr = q.Translate <NRemedy_Test_Regular_Form>(); Assert.IsTrue(tr.NoQueryableResult.HasTake); Assert.IsNotNull(tr.NoQueryableResult.Take); Assert.AreEqual(11, tr.NoQueryableResult.Take); } }
public void LinqParse_where_gt_clause() { using (ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd)) { ARSet <NRemedy_Test_Regular_Form> set = new ARSet <NRemedy_Test_Regular_Form>(context); var q = from s in set where s.IntegerField > 1 select s; Assert.IsTrue(q.Provider is ARQueryProvider <NRemedy_Test_Regular_Form>); TranslateResult tr = q.Translate <NRemedy_Test_Regular_Form>(); Assert.IsTrue(tr.ConditionResult != null); Assert.AreEqual("('20000002' > 1)", tr.ConditionResult.Qulification.ToString()); } }
public void ARProxy_Create_Entry_JoinForm_No_Assert() { using (ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd)) { ARProxy <NRemedy_Test_Join_Form> proxy = new ARProxy <NRemedy_Test_Join_Form>(context); string entryid = proxy.CreateEntry(new NRemedy_Test_Join_Form { GUID = Guid.NewGuid().ToString(), ShortDescription = "shortdescription1", ShortDescription2 = "shortdescription2", CharacterField = "CharacterField", CharacterField2 = "CharacterField2" }); } }
public void ARProxy_Create_Entry_JoinForm_No_Assert() { using (ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd)) { ARProxy<NRemedy_Test_Join_Form> proxy = new ARProxy<NRemedy_Test_Join_Form>(context); string entryid = proxy.CreateEntry(new NRemedy_Test_Join_Form { GUID = Guid.NewGuid().ToString(), ShortDescription = "shortdescription1", ShortDescription2 = "shortdescription2", CharacterField = "CharacterField", CharacterField2 = "CharacterField2" }); } }
public void ARProxy_GetEntryList_qulifier_fieldIds_nopage_hascount_hasorder_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { TotalMatch total = new TotalMatch(); List <UInt32> fieldIds = new List <UInt32>(); fieldIds.Add(TestCharacterFieldId); fieldIds.Add(TestIntFieldId); fieldIds.Add(1u); List <ARSortInfo> sortInfo = new List <ARSortInfo>(); sortInfo.Add(new ARSortInfo { FieldId = TestCharacterFieldId, Order = SortOrder.SORT_DESCENDING }); ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); var retlist = proxy.GetEntryList( "'Character Field' LIKE \"%你好%\"", fieldIds, 0, null, total, sortInfo ); Assert.AreEqual(11, retlist.Count); Assert.AreEqual(11, total.Value); foreach (var entry in retlist) { Assert.AreEqual(true, entry.CharacterField.Contains("你好")); } Assert.AreEqual(10, Convert.ToInt32(retlist.Max(m => m.RequestID)) - Convert.ToInt32(retlist.Min(m => m.RequestID))); Assert.AreEqual(TestCharacterFieldValueChinese + "Set Something", retlist[0].CharacterField); Assert.AreEqual(TestCharacterFieldValueChinese + "Set Something", retlist[1].CharacterField); } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void ARProxy_SetEntry_By_Properties_Ids() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context); DateTime dt = DateTime.Now; string entryId = proxy.CreateEntry(new NRemedy_Test_Regular_Form { CharacterField = "should not changed", Status = NRemedy_Test_Regular_Form.Status_Enum.Fixed, DecimalNumberField = 3.13m, IntegerField = 10 } ); Assert.AreNotEqual(null, entryId); NRemedy_Test_Regular_Form model = proxy.GetEntry(entryId); //Assert.AreEqual(NRemedy_Test_Regular_Form.Status_Enum.Fixed, model.Status); model.CharacterField = "don not want changed"; model.Status = NRemedy_Test_Regular_Form.Status_Enum.New; model.DecimalNumberField = 3.14m; model.IntegerField = 11; List <ARFieldValue> up_fvs = new List <ARFieldValue>(); up_fvs.Add(new ARFieldValue(TestDecimalFieldId, 3.14m, ARDataType.DATA_TYPE_DECIMAL)); up_fvs.Add(new ARFieldValue(7u, NRemedy_Test_Regular_Form.Status_Enum.New, ARDataType.DATA_TYPE_ENUM)); up_fvs.Add(new ARFieldValue(TestIntFieldId, 11, ARDataType.DATA_TYPE_INTEGER)); //set proxy.SetEntry(entryId, up_fvs); NRemedy_Test_Regular_Form model2 = proxy.GetEntry(entryId); Assert.AreEqual(NRemedy_Test_Regular_Form.Status_Enum.New, model2.Status); Assert.AreEqual(3.14m, model2.DecimalNumberField); Assert.AreEqual(11, model2.IntegerField); Assert.AreEqual("should not changed", model2.CharacterField); } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void LinqParse_Skip_var_clause() { using (ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd)) { string i = "10"; ARSet <NRemedy_Test_Regular_Form> set = new ARSet <NRemedy_Test_Regular_Form>(context); var q = from s in set.Skip(Convert.ToInt32(i)) select s; Assert.IsTrue(q.Provider is ARQueryProvider <NRemedy_Test_Regular_Form>); TranslateResult tr = q.Translate <NRemedy_Test_Regular_Form>(); Assert.IsTrue(tr.NoQueryableResult.HasSkip); Assert.IsNotNull(tr.NoQueryableResult.Skip); Assert.AreEqual(10, tr.NoQueryableResult.Skip); } }
public void SetEntries_All() { ARLoginContext context = null; try { context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); NRemedy_Test_Regular_Form newentry = new NRemedy_Test_Regular_Form(); newentry.CharacterField = TestCharacterFieldValue; newentry.Radio_Button_Field = null; newentry.IntegerField = 1; for (int i = 0; i < 7; i++) { proxy.CreateEntry(newentry); } newentry.CharacterField = TestCharacterFieldValueChinese; newentry.IntegerField = 2; for (int i = 0; i < 9; i++) { proxy.CreateEntry(newentry); } ARSet<NRemedy_Test_Regular_Form> set = new ARSet<NRemedy_Test_Regular_Form>(context); var q = from s in set select s.IntegerField; int count = q.Count(); Assert.IsTrue(count > 0); NRemedy_Test_Regular_Form model = new NRemedy_Test_Regular_Form(); model.IntegerField = 110;//original is 1 proxy.SetEntryList(null,model,new string[] { "IntegerField" }); //after delete the count should be 0 foreach(var i in q) { Assert.AreEqual(110, i); } } finally { if (context != null) context.Dispose(); } }
public void DeleteEntries_constant_condition_true() { ARLoginContext context = null; try { context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); NRemedy_Test_Regular_Form newentry = new NRemedy_Test_Regular_Form(); newentry.CharacterField = TestCharacterFieldValue; newentry.Radio_Button_Field = null; newentry.IntegerField = 1; for (int i = 0; i < 7; i++) { proxy.CreateEntry(newentry); } newentry.CharacterField = TestCharacterFieldValueChinese; newentry.IntegerField = 2; for (int i = 0; i < 9; i++) { proxy.CreateEntry(newentry); } ARSet<NRemedy_Test_Regular_Form> set = new ARSet<NRemedy_Test_Regular_Form>(context); var q = from s in set select s.RequestID; int count = q.Count(); Assert.IsTrue(count > 0); proxy.DeleteEntryList(null); //after delete the count should be 0 Assert.AreEqual(0, q.Count()); } finally { if (context != null) context.Dispose(); } }
public void ARProxy_GetEntry_JoinForm() { List<Guid> guid = new List<Guid>(); for (int i = 0; i < 10; i++) { guid.Add(Guid.NewGuid()); } using (ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd)) { ARProxy<NRemedy_Test_Join_Form> proxy = new ARProxy<NRemedy_Test_Join_Form>(context); foreach (var g in guid) { proxy.CreateEntry(new NRemedy_Test_Join_Form { GUID = g.ToString(), ShortDescription = "shortdescription1", ShortDescription2 = "shortdescription2", CharacterField = "CharacterField", CharacterField2 = "CharacterField2" }); } ARSet<NRemedy_Test_Join_Form> set = new ARSet<NRemedy_Test_Join_Form>(context); foreach (var g in guid) { var q = from s in set where s.GUID == g.ToString() select s; foreach (var r in q) { Assert.AreEqual( g.ToString(),r.GUID); } } } }
public void GetEntry_by_Expression_single_condition() { ARLoginContext context = null; try { context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); string entryId = proxy.CreateEntry(new NRemedy_Test_Regular_Form { CharacterField = "should not changed", Status = NRemedy_Test_Regular_Form.Status_Enum.Fixed, DecimalNumberField = 3.13m, IntegerField = 10 } ); Assert.AreNotEqual(null, entryId); NRemedy_Test_Regular_Form entry = proxy.GetEntry(entryId, m => m.CharacterField, m => m.Status, m => m.DecimalNumberField ); Assert.AreEqual("should not changed", entry.CharacterField); Assert.AreEqual(NRemedy_Test_Regular_Form.Status_Enum.Fixed, entry.Status); Assert.AreEqual(3.13m, entry.DecimalNumberField); Assert.AreEqual(null, entry.IntegerField); } finally { if (context != null) context.Dispose(); } }
public void GetEntryList_by_expression_qulifier_fieldIds_haspage_hascount_noorder_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { TotalMatch total = new TotalMatch(); ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); var retlist = proxy.GetEntryList( m => m.CharacterField.Contains("%你好%"), 0, 5, total, null, m => m.CharacterField, m => m.RequestID ); Assert.AreEqual(5, retlist.Count); Assert.AreEqual(11, total.Value); foreach (var entry in retlist) { Assert.AreEqual(true, entry.CharacterField.Contains("你好")); } Assert.AreEqual(4, Convert.ToInt32(retlist.Max(m => m.RequestID)) - Convert.ToInt32(retlist.Min(m => m.RequestID))); } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void DeleteEntries_string_contains_condition() { ARLoginContext context = null; try { context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); ARSet<NRemedy_Test_Regular_Form> set = new ARSet<NRemedy_Test_Regular_Form>(context); var q = from s in set where s.CharacterField.Contains(TestCharacterFieldValueChinese + "%") && s.IntegerField == 3 select s.RequestID; Assert.AreEqual(2, q.Count()); proxy.DeleteEntryList("'Character Field' LIKE \"" + TestCharacterFieldValueChinese + "%\" AND 'Integer Field' = 3"); //after delete the count should be 0 Assert.AreEqual(0, q.Count()); } finally { if (context != null) context.Dispose(); } }
public void SetEntries_single_condition() { ARLoginContext context = null; try { context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); ARSet<NRemedy_Test_Regular_Form> set = new ARSet<NRemedy_Test_Regular_Form>(context); var q = from s in set where s.CharacterField == TestCharacterFieldValue select s.IntegerField; Assert.AreEqual(7, q.Count()); NRemedy_Test_Regular_Form model = new NRemedy_Test_Regular_Form(); model.IntegerField = 10;//original is 1 proxy.SetEntryList("'Character Field' = \"" + TestCharacterFieldValue + "\"", model, new string[] { "IntegerField" }); foreach (var i in q) { Assert.AreEqual(10, i); } } finally { if (context != null) context.Dispose(); } }
public void ARProxy_GetListEntry_MaxEntries_Cover_notCover() { Clean(); ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); NRemedy_Test_Regular_Form newentry = new NRemedy_Test_Regular_Form(); newentry.CharacterField = TestCharacterFieldValue; newentry.IntegerField = 1; for (int i = 0; i < 588; i++) { proxy.CreateEntry(newentry); } var results = proxy.GetEntryList( null, new string[] { "RequestID" }, null, 0, null, null); Assert.AreEqual(588, results.Count); var results2 = proxy.GetEntryList( null, new string[] { "RequestID" }, 300, 10, null, null); Assert.AreEqual(300, results2.Count); var results3 = proxy.GetEntryList( null, new string[] { "RequestID" }, 100, 10, null, null); Assert.AreEqual(100, results3.Count); for (int i = 0; i < 100; i++) { Assert.AreEqual(results3[i].RequestID, results2[i].RequestID); } var results4 = proxy.GetEntryList( null, new string[] { "RequestID" }, 200, 400, null, null); Assert.AreEqual(188, results4.Count); var results5 = proxy.GetEntryList( null, new string[] { "RequestID" }, null, 400, null, null); Assert.AreEqual(188, results5.Count); } catch (Exception ex) { throw new Exception("env init in Construct error.", ex); } finally { context.Dispose(); } }
public void DeleteEntries_single_condition() { ARLoginContext context = null; try { context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); ARSet<NRemedy_Test_Regular_Form> set = new ARSet<NRemedy_Test_Regular_Form>(context); var q = from s in set where s.CharacterField == TestCharacterFieldValue select s.RequestID; Assert.AreEqual(7, q.Count()); proxy.DeleteEntryList(m => m.CharacterField == TestCharacterFieldValue); //after delete the count should be 0 Assert.AreEqual(0, q.Count()); } finally { if (context != null) context.Dispose(); } }
public void GetEntryList_by_expression_qulifier_fieldIds_nopage_nocount_noorder_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); var models = proxy.GetEntryList( m => m.CharacterField == TestCharacterFieldValue, 0, null, null, null, m => m.CharacterField ); Assert.AreEqual(7, models.Count); foreach (var model in models) { Assert.AreEqual(TestCharacterFieldValue, model.CharacterField); } } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void ARProxy_GetEntryList_qulifier_fieldIds_nopage_nocount_noorder_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { List<uint> fieldIds = new List<uint>(); fieldIds.Add(TestCharacterFieldId); //int totalMatch = -1; ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); var models = proxy.GetEntryList( "'Character Field' = \"Hello Remedy\"", fieldIds, 0, null, null, null); Assert.AreEqual(7, models.Count); foreach (var model in models) { Assert.AreEqual(TestCharacterFieldValue, model.CharacterField); } } catch(Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void ARProxy_GetEntryListStatictisc_count_qulifier_nogroup_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { List<UInt32> groupIds = new List<UInt32>(); ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); groupIds.Add(TestCharacterFieldId); var retlist = proxy.GetListEntryStatictisc( "'Character Field' = \"Hello Remedy\"", ARStatictisc.STAT_OP_COUNT, null, null ); Assert.AreEqual(1, retlist.Count); Assert.AreEqual(7, Convert.ToInt32(retlist[0].Statictisc)); } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void ARProxy_GetEntryList_by_filter_qulifier_fieldIds_nopage_nocount_noorder_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); var models = proxy.GetEntryList( "'Character Field' = \"Hello Remedy\"", 0, delegate(System.Reflection.PropertyInfo pi){ return pi.Name == "CharacterField"; }, null, null, null); Assert.AreEqual(7, models.Count); foreach (var model in models) { Assert.AreEqual(TestCharacterFieldValue, model.CharacterField); Assert.AreEqual(null, model.IntegerField); } var models2 = proxy.GetEntryList( "'Character Field' = \"Hello Remedy\"", 0, delegate(System.Reflection.PropertyInfo pi) { return pi.Name == "CharacterField" || pi.Name == "IntegerField"; }, null, null, null); Assert.AreEqual(7, models2.Count); foreach (var model in models2) { Assert.AreEqual(TestCharacterFieldValue, model.CharacterField); Assert.AreEqual(1, model.IntegerField); } } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void ARProxy_GetEntryList_by_Properties_Str_qulifier_fieldIds_nopage_nocount_noorder_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); var models = proxy.GetEntryList( "'Character Field' = \"Hello Remedy\"", new string[]{ "CharacterField" }, null, 0, null, null); Assert.AreEqual(7, models.Count); foreach (var model in models) { Assert.AreEqual(TestCharacterFieldValue, model.CharacterField); Assert.AreEqual(null, model.IntegerField); } var models2 = proxy.GetEntryList( "'Character Field' = \"Hello Remedy\"", new string[] { "CharacterField", "IntegerField" }, null, 0, null, null); Assert.AreEqual(7, models2.Count); foreach (var model in models2) { Assert.AreEqual(TestCharacterFieldValue, model.CharacterField); Assert.AreEqual(1, model.IntegerField); } } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void ARProxy_GetEntryList_qulifier_fieldIds_haspage_nocount_noorder_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { //int total = -1; List<UInt32> fieldIds = new List<UInt32>(); fieldIds.Add(TestCharacterFieldId); fieldIds.Add(TestIntFieldId); fieldIds.Add(1u); ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); var retlist = proxy.GetEntryList( "'Character Field' LIKE \"%你好%\"", fieldIds, 0, 5, null, null ); //paged count should be 5,although total matched count is 11 Assert.AreEqual(5, retlist.Count); //Assert.AreEqual(-1, total); foreach (var entry in retlist) { Assert.AreEqual(true, entry.CharacterField.Contains("你好")); } //assert the max id is greater 4 than min id //which means return the continous id list Assert.AreEqual(4, Convert.ToInt32(retlist.Max(m => m.RequestID)) - Convert.ToInt32(retlist.Min(m => m.RequestID))); } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }
public void ARProxy_GetEntryList_qulifier_fieldIds_nopage_hascount_hasorder_success() { ARLoginContext context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd); try { TotalMatch total = new TotalMatch(); List<UInt32> fieldIds = new List<UInt32>(); fieldIds.Add(TestCharacterFieldId); fieldIds.Add(TestIntFieldId); fieldIds.Add(1u); List<ARSortInfo> sortInfo = new List<ARSortInfo>(); sortInfo.Add(new ARSortInfo { FieldId = TestCharacterFieldId, Order = SortOrder.SORT_DESCENDING }); ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context); var retlist = proxy.GetEntryList( "'Character Field' LIKE \"%你好%\"", fieldIds, 0, null, total, sortInfo ); Assert.AreEqual(11, retlist.Count); Assert.AreEqual(11, total.Value); foreach (var entry in retlist) { Assert.AreEqual(true, entry.CharacterField.Contains("你好")); } Assert.AreEqual(10, Convert.ToInt32(retlist.Max(m => m.RequestID)) - Convert.ToInt32(retlist.Min(m => m.RequestID))); Assert.AreEqual(TestCharacterFieldValueChinese + "Set Something", retlist[0].CharacterField); Assert.AreEqual(TestCharacterFieldValueChinese + "Set Something", retlist[1].CharacterField); } catch (Exception ex) { Assert.AreEqual(null, ex); } finally { context.Dispose(); } }