public void TestStartsWithFilter()
        {
            StartsWithFilter v1 = new StartsWithFilter(ConnectorAttributeBuilder.Build("foo", "bar"));
            StartsWithFilter v2 = (StartsWithFilter)CloneObject(v1);

            Assert.AreEqual(v1.GetAttribute(), v2.GetAttribute());
        }
        protected override String CreateStartsWithExpression(StartsWithFilter filter,
                                                             Boolean not)
        {
            String[] attrNames = GetLdapNamesForAttribute(filter.GetAttribute());
            if (attrNames == null)
            {
                return(null);
            }

            StringBuilder builder = new StringBuilder();

            if (not)
            {
                builder.Append("(!");
            }
            if (attrNames.Length == 1)
            {
                builder.Append('(');
                builder.Append(attrNames[0]);
                builder.Append('=');
                GetLdapFilterValue(builder, attrNames[0], filter.GetValue());
                builder.Append("*)");
            }
            else
            {
                builder.Append("(|");
                foreach (String attrName in attrNames)
                {
                    builder.Append('(');
                    builder.Append(attrName);
                    builder.Append('=');
                    GetLdapFilterValue(builder, attrName, filter.GetValue());
                    builder.Append("*)");
                }
                builder.Append(')');
            }
            if (not)
            {
                builder.Append(')');
            }
            return(builder.ToString());
        }
Esempio n. 3
0
 public void TestStartsWithFilter()
 {
     StartsWithFilter v1 = new StartsWithFilter(ConnectorAttributeBuilder.Build("foo", "bar"));
     StartsWithFilter v2 = (StartsWithFilter)CloneObject(v1);
     Assert.AreEqual(v1.GetAttribute(), v2.GetAttribute());
 }