public void ShouldNotAppendValueIfNull()
 {
     var emptyAddress = new Address()
     {
         City = null,
         Line1 = "duong7,phuocbinh"
     };
     var expected = LuceneBuilder.Create().WhereEquals(() => emptyAddress.City).And().WhereEquals(() => emptyAddress.Line1).ToString();
     StringAssert.AreEqualIgnoringCase("Line1:\"duong7,phuocbinh\"", expected);
 }
 public void Init()
 {
     address = new Address()
     {
         City = "HCM",
         Country = "VietNam",
         Line1 = "Phuoc binh",
         Line2 = "Quan9",
         PostalCode = "99999",
         Region = "Duong7"
     };
     luceneBuilder = new LuceneBuilder<Address>();
 }
 public void ShouldNotAppendValueIfNullAndBeforeSymbolSyntax()
 {
     var emptyAddress = new Address()
     {
         PostalCode = "123",
         City = null,
         Line1 = "duong7,phuocbinh"
     };
     var expected = LuceneBuilder.Create()
         .WhereEquals(() => emptyAddress.PostalCode)
         .Or()
         .WhereEquals(() => emptyAddress.City)
         .And()
         .WhereEquals(() => emptyAddress.Line1).ToString();
     StringAssert.AreEqualIgnoringCase("PostalCode:\"123\" AND Line1:\"duong7,phuocbinh\"", expected);
 }
 public void RemoveSyntaxWhenPropertyNull()
 {
     var addressEmpty = new Address()
     {
         Country = null,
         City = String.Empty,
         PostalCode = String.Empty
     };
     var actual =
         LuceneBuilder.Create()
             .WhereEquals(() => addressEmpty.City)
             .And()
             .Pharase(
                 builder =>
                     builder.WhereEquals(() => addressEmpty.PostalCode).And().WhereEquals(() => addressEmpty.Region)).ToString();
         
     StringAssert.AreEqualIgnoringCase(String.Empty, actual);
 }
 public void Init()
 {
     address = new Address()
     {
         City = "HCM",
         Country = "VietNam",
         Line1 = "Phuoc binh",
         Line2 = "Quan9",
         PostalCode = "99999",
         Region = "Duong7",
     };
     Customer = new Customer()
     {
         Address = address,
         FirstName = "Cuong",
         LastName = "Tran"
     };
 }
        public void RemoveValueInPharaseIfPropertiesIsEmpty()
        {
            var emptyAddress = new Address()
            {
                Line1 = null,
                Country = "VietName",
                PostalCode = ""
            };
            var expected =
                LuceneBuilder.Create().Pharase(
                    builder =>
                        builder.WhereEquals(() => emptyAddress.Line1)
                            .And()
                            .WhereEquals(() => emptyAddress.Country)
                            .Or()
                            .WhereEquals(() => emptyAddress.PostalCode)).ToString();

            StringAssert.AreEqualIgnoringCase("(Country:\"VietName\")", expected);
        }