示例#1
0
 /// <exception cref="System.Exception"/>
 protected internal virtual void _testAuthentication(Authenticator authenticator,
                                                     bool doPost)
 {
     Start();
     try
     {
         Uri url = new Uri(GetBaseURL());
         AuthenticatedURL.Token token = new AuthenticatedURL.Token();
         NUnit.Framework.Assert.IsFalse(token.IsSet());
         AuthenticatorTestCase.TestConnectionConfigurator connConf = new AuthenticatorTestCase.TestConnectionConfigurator
                                                                         ();
         AuthenticatedURL  aUrl = new AuthenticatedURL(authenticator, connConf);
         HttpURLConnection conn = aUrl.OpenConnection(url, token);
         Assert.True(connConf.invoked);
         string tokenStr = token.ToString();
         if (doPost)
         {
             conn.SetRequestMethod("POST");
             conn.SetDoOutput(true);
         }
         conn.Connect();
         if (doPost)
         {
             TextWriter writer = new OutputStreamWriter(conn.GetOutputStream());
             writer.Write(Post);
             writer.Close();
         }
         Assert.Equal(HttpURLConnection.HttpOk, conn.GetResponseCode());
         if (doPost)
         {
             BufferedReader reader = new BufferedReader(new InputStreamReader(conn.GetInputStream
                                                                                  ()));
             string echo = reader.ReadLine();
             Assert.Equal(Post, echo);
             NUnit.Framework.Assert.IsNull(reader.ReadLine());
         }
         aUrl = new AuthenticatedURL();
         conn = aUrl.OpenConnection(url, token);
         conn.Connect();
         Assert.Equal(HttpURLConnection.HttpOk, conn.GetResponseCode());
         Assert.Equal(tokenStr, token.ToString());
     }
     finally
     {
         Stop();
     }
 }
示例#2
0
 public virtual void TestToken()
 {
     AuthenticatedURL.Token token = new AuthenticatedURL.Token();
     NUnit.Framework.Assert.IsFalse(token.IsSet());
     token = new AuthenticatedURL.Token("foo");
     Assert.True(token.IsSet());
     Assert.Equal("foo", token.ToString());
 }
示例#3
0
 /*
  * Check if the passed token is of type "kerberos" or "kerberos-dt"
  */
 /// <exception cref="Org.Apache.Hadoop.Security.Authentication.Client.AuthenticationException
 ///     "/>
 private bool IsTokenKerberos(AuthenticatedURL.Token token)
 {
     if (token.IsSet())
     {
         AuthToken aToken = AuthToken.Parse(token.ToString());
         if (aToken.GetType().Equals("kerberos") || aToken.GetType().Equals("kerberos-dt"))
         {
             return(true);
         }
     }
     return(false);
 }
示例#4
0
        public virtual void TestExtractTokenOK()
        {
            HttpURLConnection conn = Org.Mockito.Mockito.Mock <HttpURLConnection>();

            Org.Mockito.Mockito.When(conn.GetResponseCode()).ThenReturn(HttpURLConnection.HttpOk
                                                                        );
            string tokenStr = "foo";
            IDictionary <string, IList <string> > headers = new Dictionary <string, IList <string>
                                                                            >();
            IList <string> cookies = new AList <string>();

            cookies.AddItem(AuthenticatedURL.AuthCookie + "=" + tokenStr);
            headers["Set-Cookie"] = cookies;
            Org.Mockito.Mockito.When(conn.GetHeaderFields()).ThenReturn(headers);
            AuthenticatedURL.Token token = new AuthenticatedURL.Token();
            AuthenticatedURL.ExtractToken(conn, token);
            Assert.Equal(tokenStr, token.ToString());
        }