Exemplo n.º 1
0
        public void TestKeepAliveWithoutTimeout()
        {
            CommonNUnitFunctions.StartOpenPetraServer("-D:Server.ClientKeepAliveTimeoutAfterXSeconds_LAN=10");

            try
            {
                // check number of connected clients
                string connectedClientsMessage = CommonNUnitFunctions.OpenPetraServerAdminConsole("ConnectedClients");
                StringAssert.Contains("* no connected Clients *", connectedClientsMessage, "there should not be any clients connected at the moment");

                TPetraConnector.Connect("../../etc/TestClient.config", "<add key=\"ServerObjectKeepAliveIntervalInSeconds\" value=\"5\"/>");

                connectedClientsMessage = CommonNUnitFunctions.OpenPetraServerAdminConsole("ConnectedClients");
                StringAssert.Contains("Connected since", connectedClientsMessage, "there should be one client connected");

                Thread.Sleep(Convert.ToInt32(TimeSpan.FromSeconds(15.0).TotalMilliseconds));

                connectedClientsMessage = CommonNUnitFunctions.OpenPetraServerAdminConsole("ConnectedClients");
                StringAssert.Contains("Connected since", connectedClientsMessage, "the client should still be connected, no timeout");

                TPetraConnector.Disconnect();

                connectedClientsMessage = CommonNUnitFunctions.OpenPetraServerAdminConsole("ConnectedClients");
                StringAssert.Contains("* no connected Clients *", connectedClientsMessage, "there should not be any clients connected anymore");
            }
            finally
            {
                // clean up
                CommonNUnitFunctions.nant("stopServer", false);
            }
        }
Exemplo n.º 2
0
        public void TestAuthentication()
        {
            // read original config file for client
            StreamReader sr     = new StreamReader("../../etc/TestClient.config");
            string       config = sr.ReadToEnd();

            sr.Close();
            string tempConfigFile = Path.GetTempFileName();

            // Testing successful login
            Assert.AreEqual(eLoginEnum.eLoginSucceeded, TPetraConnector.Connect("../../etc/TestClient.config", false), "should connect fine");
            TPetraConnector.Disconnect();

            // pass invalid password
            StreamWriter sw = new StreamWriter(tempConfigFile);

            sw.Write(config.Replace("key=\"AutoLoginPasswd\" value=\"demo\"",
                                    "key=\"AutoLoginPasswd\" value=\"demoFalse\""));
            sw.Close();

            Assert.AreEqual(eLoginEnum.eLoginAuthenticationFailed, TPetraConnector.Connect(tempConfigFile, false), "should fail on wrong password");

            // pass invalid user
            sw = new StreamWriter(tempConfigFile);
            sw.Write(config.Replace("key=\"AutoLogin\" value=\"demo\"",
                                    "key=\"AutoLogin\" value=\"demoNonExisting\""));
            sw.Close();
            Assert.AreEqual(eLoginEnum.eLoginAuthenticationFailed, TPetraConnector.Connect(tempConfigFile, false), "should fail on wrong user");

            // clean up
            File.Delete(tempConfigFile);
        }
Exemplo n.º 3
0
        /// <summary>
        /// clean up, disconnect from OpenPetra server
        /// </summary>
        public override void TearDown()
        {
            if (!FConnectedToServer)
            {
                return;
            }

            TPetraConnector.Disconnect();
        }
Exemplo n.º 4
0
        /// <summary>
        /// clean up, disconnect from OpenPetra server
        /// </summary>
        public override void TearDown()
        {
            if (!FConnectedToServer)
            {
                return;
            }

            FMainDS.DeleteAllRows();
            FMainDS.SaveChanges();

            TPetraConnector.Disconnect();
        }
Exemplo n.º 5
0
        public void TestVersionMismatch()
        {
            StreamReader     sr = new StreamReader("../../delivery/bin/version.txt");
            string           strServerVersion = sr.ReadLine();
            TFileVersionInfo ServerVersion    = new TFileVersionInfo(strServerVersion);

            sr.Close();

            Assert.AreEqual(eLoginEnum.eLoginSucceeded, TPetraConnector.Connect(
                                "../../etc/TestClient.config", false), "connecting with the same version number");
            TPetraConnector.Disconnect();

            TFileVersionInfo.FManualApplicationVersion =
                new TFileVersionInfo(new Version(ServerVersion.FileMajorPart, ServerVersion.FileMinorPart, ServerVersion.FileBuildPart,
                                                 ServerVersion.FilePrivatePart + 1));
            Assert.AreEqual(eLoginEnum.eLoginVersionMismatch, TPetraConnector.Connect(
                                "../../etc/TestClient.config", false), "client is too new, only change in private part");

            int FileMajorPart   = ServerVersion.FileMajorPart;
            int FileMinorPart   = ServerVersion.FileMinorPart;
            int FileBuildPart   = ServerVersion.FileBuildPart - 1;
            int FilePrivatePart = ServerVersion.FilePrivatePart;

            if (FileBuildPart < 0)
            {
                FileMinorPart -= 1;
                FileBuildPart  = 0;
            }
            else if (FileMinorPart < 0)
            {
                FileMajorPart -= 1;
                FileMinorPart  = 0;
            }

            TFileVersionInfo.FManualApplicationVersion =
                new TFileVersionInfo(new Version(FileMajorPart, FileMinorPart, FileBuildPart,
                                                 FilePrivatePart));
            Assert.AreEqual(eLoginEnum.eLoginVersionMismatch, TPetraConnector.Connect("../../etc/TestClient.config", false), "client is too old");

            TFileVersionInfo.FManualApplicationVersion =
                new TFileVersionInfo(new Version(ServerVersion.FileMajorPart, ServerVersion.FileMinorPart, ServerVersion.FileBuildPart + 1,
                                                 ServerVersion.FilePrivatePart));
            Assert.AreEqual(eLoginEnum.eLoginVersionMismatch, TPetraConnector.Connect("../../etc/TestClient.config", false), "client is too new");

            TFileVersionInfo.FManualApplicationVersion = new TFileVersionInfo(new Version());
            Assert.AreEqual(eLoginEnum.eLoginVersionMismatch, TPetraConnector.Connect(
                                "../../etc/TestClient.config", false), "version 0.0.0.0 should not be accepted");

            // reset values
            TFileVersionInfo.FManualApplicationVersion = ServerVersion;
        }
 public void Dispose()
 {
     TPetraConnector.Disconnect();
 }
Exemplo n.º 7
0
 /// <summary>
 /// clean up, disconnect from OpenPetra server
 /// </summary>
 public override void TearDown()
 {
     TPetraConnector.Disconnect();
 }
Exemplo n.º 8
0
 public void TearDown()
 {
     TPetraConnector.Disconnect();
 }