From e83a2b5ffcc1a7f688701a7f5303543fbeb0096e Mon Sep 17 00:00:00 2001 From: JustTestingV Date: Sun, 18 Feb 2024 17:55:04 +0300 Subject: [PATCH] uncommented test --- crates/projection-irc/tests/lib.rs | 98 +++++++++++++++--------------- 1 file changed, 49 insertions(+), 49 deletions(-) diff --git a/crates/projection-irc/tests/lib.rs b/crates/projection-irc/tests/lib.rs index 2c49016..5564fca 100644 --- a/crates/projection-irc/tests/lib.rs +++ b/crates/projection-irc/tests/lib.rs @@ -220,55 +220,55 @@ async fn scenario_cap_short_negotiation() -> Result<()> { server.server.terminate().await?; Ok(()) } -// -// #[tokio::test] -// async fn scenario_cap_sasl_fail() -> std::result::Result<()> { -// let mut server = TestServer::start().await?; -// -// // test scenario -// -// server.storage.create_user("tester").await?; -// server.storage.set_password("tester", "password").await?; -// -// let mut stream = TcpStream::connect(server.server.addr).await?; -// let mut s = TestScope::new(&mut stream); -// -// s.send("CAP LS 302").await?; -// s.send("NICK tester").await?; -// s.send("USER UserName 0 * :Real Name").await?; -// s.expect(":testserver CAP * LS :sasl=PLAIN").await?; -// s.send("CAP REQ :sasl").await?; -// s.expect(":testserver CAP tester ACK :sasl").await?; -// s.send("AUTHENTICATE SHA256").await?; -// s.expect(":testserver 904 tester :Unsupported mechanism").await?; -// s.send("AUTHENTICATE PLAIN").await?; -// s.expect(":testserver AUTHENTICATE +").await?; -// s.send("AUTHENTICATE dGVzdGVyAHRlc3RlcgBwYXNzd29yZDE=").await?; -// s.expect(":testserver 904 tester :Bad credentials").await?; -// s.send("AUTHENTICATE dGVzdGVyAHRlc3RlcgBwYXNzd29yZA==").await?; // base64-encoded 'tester\x00tester\x00password' -// s.expect(":testserver 900 tester tester tester :You are now logged in as tester").await?; -// s.expect(":testserver 903 tester :SASL authentication successful").await?; -// -// s.send("CAP END").await?; -// -// s.expect(":testserver 001 tester :Welcome to Kek Server").await?; -// s.expect(":testserver 002 tester :Welcome to Kek Server").await?; -// s.expect(":testserver 003 tester :Welcome to Kek Server").await?; -// s.expect(":testserver 004 tester testserver kek-0.1.alpha.3 r CFILPQbcefgijklmnopqrstvz").await?; -// s.expect(":testserver 005 tester CHANTYPES=# :are supported by this server").await?; -// s.expect_nothing().await?; -// s.send("QUIT :Leaving").await?; -// s.expect(":testserver ERROR :Leaving the server").await?; -// s.expect_eof().await?; -// -// stream.shutdown().await?; -// -// // wrap up -// -// server.server.terminate().await?; -// Ok(()) -// } -// + +#[tokio::test] +async fn scenario_cap_sasl_fail() -> std::result::Result<()> { + let mut server = TestServer::start().await?; + + // test scenario + + server.storage.create_user("tester").await?; + server.storage.set_password("tester", "password").await?; + + let mut stream = TcpStream::connect(server.server.addr).await?; + let mut s = TestScope::new(&mut stream); + + s.send("CAP LS 302").await?; + s.send("NICK tester").await?; + s.send("USER UserName 0 * :Real Name").await?; + s.expect(":testserver CAP * LS :sasl=PLAIN").await?; + s.send("CAP REQ :sasl").await?; + s.expect(":testserver CAP tester ACK :sasl").await?; + s.send("AUTHENTICATE SHA256").await?; + s.expect(":testserver 904 tester :Unsupported mechanism").await?; + s.send("AUTHENTICATE PLAIN").await?; + s.expect(":testserver AUTHENTICATE +").await?; + s.send("AUTHENTICATE dGVzdGVyAHRlc3RlcgBwYXNzd29yZDE=").await?; + s.expect(":testserver 904 tester :Bad credentials").await?; + s.send("AUTHENTICATE dGVzdGVyAHRlc3RlcgBwYXNzd29yZA==").await?; // base64-encoded 'tester\x00tester\x00password' + s.expect(":testserver 900 tester tester tester :You are now logged in as tester").await?; + s.expect(":testserver 903 tester :SASL authentication successful").await?; + + s.send("CAP END").await?; + + s.expect(":testserver 001 tester :Welcome to Kek Server").await?; + s.expect(":testserver 002 tester :Welcome to Kek Server").await?; + s.expect(":testserver 003 tester :Welcome to Kek Server").await?; + s.expect(":testserver 004 tester testserver kek-0.1.alpha.3 r CFILPQbcefgijklmnopqrstvz").await?; + s.expect(":testserver 005 tester CHANTYPES=# :are supported by this server").await?; + s.expect_nothing().await?; + s.send("QUIT :Leaving").await?; + s.expect(":testserver ERROR :Leaving the server").await?; + s.expect_eof().await?; + + stream.shutdown().await?; + + // wrap up + + server.server.terminate().await?; + Ok(()) +} + #[tokio::test] async fn terminate_socket_scenario() -> Result<()> {