// Path: test/com/google/enterprise/adaptor/sharepoint/FormsAuthenticationHandlerTest.java
// static class UnsupportedScheduledExecutor extends CallerRunsExecutor 
//     implements ScheduledExecutorService {
// 
//   public ScheduledFuture<?> schedule(Runnable command, long delay,
//       TimeUnit unit) {
//     throw new UnsupportedOperationException();
//   }
// 
//   public <V> ScheduledFuture<V> schedule(Callable<V> callable, long delay,
//       TimeUnit unit) {
//     throw new UnsupportedOperationException();
//   }
// 
//   public ScheduledFuture<?> scheduleAtFixedRate(Runnable command,
//       long initialDelay, long period, TimeUnit unit) {
//     throw new UnsupportedOperationException();
//   }
// 
//   public ScheduledFuture<?> scheduleWithFixedDelay(Runnable command,
//       long initialDelay, long delay, TimeUnit unit) {
//     throw new UnsupportedOperationException(); 
//   }
//     
// }


import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
import com.google.enterprise.adaptor.sharepoint.FormsAuthenticationHandlerTest.UnsupportedScheduledExecutor;
import com.microsoft.schemas.sharepoint.soap.authentication.AuthenticationMode;
import com.microsoft.schemas.sharepoint.soap.authentication.AuthenticationSoap;
import com.microsoft.schemas.sharepoint.soap.authentication.LoginErrorCode;
import com.microsoft.schemas.sharepoint.soap.authentication.LoginResult;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
import java.io.IOException;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.Callable;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit;
import javax.xml.ws.Binding;
import javax.xml.ws.BindingProvider;
import javax.xml.ws.EndpointReference;
import javax.xml.ws.handler.MessageContext;
    @Override
    public AuthenticationMode mode() {
      return AuthenticationMode.FORMS; 
    }

    public Map<String, Object> getRequestContext() {
      throw new UnsupportedOperationException(); 
    }

    public Map<String, Object> getResponseContext() {
      throw new UnsupportedOperationException();
    }

    public Binding getBinding() {
      throw new UnsupportedOperationException();
    }

    public EndpointReference getEndpointReference() {
      throw new UnsupportedOperationException();
    }

    public <T extends EndpointReference> T 
        getEndpointReference(Class<T> clazz) {
      throw new UnsupportedOperationException();
    }
  }
  
  @Test
  public void testBuilder() {
    new SharePointFormsAuthenticationHandler.Builder("username", "password",
// Path: test/com/google/enterprise/adaptor/sharepoint/FormsAuthenticationHandlerTest.java
// static class UnsupportedScheduledExecutor extends CallerRunsExecutor 
//     implements ScheduledExecutorService {
// 
//   public ScheduledFuture<?> schedule(Runnable command, long delay,
//       TimeUnit unit) {
//     throw new UnsupportedOperationException();
//   }
// 
//   public <V> ScheduledFuture<V> schedule(Callable<V> callable, long delay,
//       TimeUnit unit) {
//     throw new UnsupportedOperationException();
//   }
// 
//   public ScheduledFuture<?> scheduleAtFixedRate(Runnable command,
//       long initialDelay, long period, TimeUnit unit) {
//     throw new UnsupportedOperationException();
//   }
// 
//   public ScheduledFuture<?> scheduleWithFixedDelay(Runnable command,
//       long initialDelay, long delay, TimeUnit unit) {
//     throw new UnsupportedOperationException(); 
//   }
//     
// }


// Path: test/com/google/enterprise/adaptor/sharepoint/SharePointFormsAuthenticationHandlerTest.java
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
import com.google.enterprise.adaptor.sharepoint.FormsAuthenticationHandlerTest.UnsupportedScheduledExecutor;
import com.microsoft.schemas.sharepoint.soap.authentication.AuthenticationMode;
import com.microsoft.schemas.sharepoint.soap.authentication.AuthenticationSoap;
import com.microsoft.schemas.sharepoint.soap.authentication.LoginErrorCode;
import com.microsoft.schemas.sharepoint.soap.authentication.LoginResult;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
import java.io.IOException;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.Callable;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit;
import javax.xml.ws.Binding;
import javax.xml.ws.BindingProvider;
import javax.xml.ws.EndpointReference;
import javax.xml.ws.handler.MessageContext;

    @Override
    public AuthenticationMode mode() {
      return AuthenticationMode.FORMS; 
    }

    public Map<String, Object> getRequestContext() {
      throw new UnsupportedOperationException(); 
    }

    public Map<String, Object> getResponseContext() {
      throw new UnsupportedOperationException();
    }

    public Binding getBinding() {
      throw new UnsupportedOperationException();
    }

    public EndpointReference getEndpointReference() {
      throw new UnsupportedOperationException();
    }

    public <T extends EndpointReference> T 
        getEndpointReference(Class<T> clazz) {
      throw new UnsupportedOperationException();
    }
  }
  
  @Test
  public void testBuilder() {
    new SharePointFormsAuthenticationHandler.Builder("username", "password",
        new UnsupportedScheduledExecutor(),