public void TestQueryIsPerson()
 {
     Assert.AreNotEqual(0, ADObjectQuery.List(this.ADOperator, new IsUser()).Count);
     foreach (var adObject in ADObjectQuery.List(this.ADOperator, new IsPerson()))
     {
         using (adObject)
         {
             Assert.IsTrue((adObject.Type == ADObjectType.User || adObject.Type == ADObjectType.Contact), adObject.Path);
         }
     }
 }
 public void TestQueryIsUser()
 {
     Assert.AreNotEqual(0, ADObjectQuery.List(this.ADOperator, new IsUser()).Count);
     foreach (var adObject in ADObjectQuery.List(this.ADOperator, new IsUser()))
     {
         using (adObject)
         {
             Assert.AreEqual(ADObjectType.User, adObject.Type, adObject.Path);
         }
     }
 }
        public void TestLargeADObjectAmount()
        {
            var adObjects = ADObjectQuery.List(this.LargeAmountADOperator, new IsUser());

            Assert.Greater(adObjects.Count, 1000);
            foreach (var adObject in adObjects)
            {
                using (adObject)
                {
                }
            }
            Assert.Pass(String.Format(@"AD object amount is {0}", adObjects.Count));
        }
 public void TestQueryFromPath()
 {
     // The ou must be contains a tree structure children.
     using (var organizationalUnitObject = OrganizationalUnitObject.FindOneByOU(this.ADOperator, this.QueryRootOUName))
     {
         var userObjects = ADObjectQuery.List(this.ADOperator, new IsUser(), organizationalUnitObject.Path, QueryScopeType.OneLevel);
         Assert.Greater(userObjects.Count, 0);
         foreach (var userObject in userObjects)
         {
             Assert.AreEqual(ADObjectType.User, userObject.Type);
             Console.WriteLine(userObject.CN);
         }
         var allUserObjects = ADObjectQuery.List(this.ADOperator, new IsUser(), organizationalUnitObject.Path, QueryScopeType.Subtree);
         Assert.Greater(allUserObjects.Count, 0);
         foreach (var userObject in allUserObjects)
         {
             Assert.AreEqual(ADObjectType.User, userObject.Type);
             Console.WriteLine(userObject.CN);
         }
         Assert.Greater(allUserObjects.Count, userObjects.Count);
     }
 }
        public void TestQueryIsUserOrIsContact()
        {
            var persons         = ADObjectQuery.List(this.ADOperator, new IsPerson());
            var userAndContacts = ADObjectQuery.List(this.ADOperator, new Or(new IsContact(), new IsUser()));

            Assert.AreNotEqual(0, persons.Count);
            Assert.AreNotEqual(0, userAndContacts.Count);
            Assert.AreEqual(persons.Count, userAndContacts.Count);
            foreach (var adObject in userAndContacts)
            {
                using (adObject)
                {
                    Assert.IsTrue((adObject.Type == ADObjectType.User || adObject.Type == ADObjectType.Contact), adObject.Path);
                }
            }
            foreach (var adObject in persons)
            {
                using (adObject)
                {
                    Assert.IsTrue((adObject.Type == ADObjectType.User || adObject.Type == ADObjectType.Contact), adObject.Path);
                }
            }
        }