2025-03-03 00:42:20 +01:00
|
|
|
using LightBDD.Framework;
|
|
|
|
|
using LightBDD.Framework.Scenarios;
|
|
|
|
|
using LightBDD.MsTest3;
|
|
|
|
|
|
|
|
|
|
namespace PlanTempus.X.BDD.Scenarios;
|
2026-01-09 22:14:46 +01:00
|
|
|
|
|
|
|
|
[TestClass]
|
2025-03-03 00:42:20 +01:00
|
|
|
public partial class EmailConfirmationSpecs : FeatureFixtures.EmailConfirmationSpecs
|
|
|
|
|
{
|
|
|
|
|
[Scenario]
|
|
|
|
|
[TestMethod]
|
|
|
|
|
public async Task Confirm_valid_email_address()
|
|
|
|
|
{
|
|
|
|
|
await Runner.RunScenarioAsync(
|
2026-01-09 22:14:46 +01:00
|
|
|
_ => Given_an_account_exists_with_unconfirmed_email("test@example.com"),
|
2025-03-03 00:42:20 +01:00
|
|
|
_ => When_I_click_the_valid_confirmation_link_for("test@example.com"),
|
2026-01-09 22:14:46 +01:00
|
|
|
_ => Then_the_accounts_email_confirmed_should_be_true(),
|
2025-03-03 00:42:20 +01:00
|
|
|
_ => And_I_should_be_redirected_to_the_welcome_page()
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
[Scenario]
|
|
|
|
|
[TestMethod]
|
|
|
|
|
public async Task Handle_invalid_confirmation_link()
|
|
|
|
|
{
|
|
|
|
|
await Runner.RunScenarioAsync(
|
|
|
|
|
_ => When_I_click_an_invalid_confirmation_link(),
|
|
|
|
|
_ => Then_I_should_see_an_error_message("Invalid confirmation link"),
|
|
|
|
|
_ => And_my_email_remains_unconfirmed()
|
|
|
|
|
);
|
|
|
|
|
}
|
2026-01-09 22:14:46 +01:00
|
|
|
}
|