コード例 #1
0
        //QueueInfo как работает?
        //public QueueInfo SearchOne(Credentials cr, Options o)
        //{
        //    try
        //    {
        //        List<string> s = TestOptions.GetReferralId(o);
        //        var r = client.GetQueueInfo(cr, o);
        //        if (s.Count != 1)
        //            if (r. != 0)
        //                Global.errors1.Add("Найдено больше одного совпадения, но SearchOne нашел " +
        //                                   r.QLength.ToString());
        //            else;
        //        else if (!TestReferral.BuildReferralFromDataBaseData(s[0]).Equals(new TestReferral(r.Referral)))
        //        {
        //            Global.errors1.AddRange(Global.errors2);
        //            Global.errors1.Add("Несовпадение");
        //        }
        //        return r;
        //    }
        //    catch (System.ServiceModel.FaultException<MqTests.WebReference.MqFault> e)
        //    {
        //        getErrors(e.Detail);
        //        Global.errors1.Add("ЭКСЕПШН");
        //        return null;
        //    }
        //}

        public SearchManyDirectionResult SearchMany(Credentials cr, Options o)
        {
            try
            {
                List <string> s = TestOptions.GetReferralId(o);
                var           r = client.SearchMany(cr, o);
                if ((s.Count != r.QLength) && (s.Count < 1000))
                {
                    Global.errors1.Add("Найдено " + s.Count.ToString() + " совпадений, но SearchMany нашел " +
                                       r.QLength.ToString());
                }
                else
                {
                    List <TestReferral> lr  = new List <TestReferral>();
                    List <TestReferral> rlr = new List <TestReferral>();
                    foreach (var i in s)
                    {
                        lr.Add(TestReferral.BuildReferralFromDataBaseData(i));
                    }
                    foreach (var i in r.Referrals)
                    {
                        rlr.Add(new TestReferral(i));
                    }
                    if (!Global.IsEqual(lr.ToArray(), rlr.ToArray()))
                    {
                        Global.errors1.AddRange(Global.errors2);
                        Global.errors1.Add("Несовпадение");
                    }
                }
                return(r);
            }
            catch (System.ServiceModel.FaultException <MqTests.WebReference.MqFault> e)
            {
                getErrors(e.Detail);
                Global.errors1.Add("ЭКСЕПШН");
                return(null);
            }
        }