コード例 #1
0
        public void Can_Link_Accounts()
        {
            // Arrange
            ConfigureExternalProvider((p) => p.ForAmazon().ForGoogle());

            AtPage <HomePage>(
                (homepage) =>
            {
                ManagePage page = homepage
                                  .SignIn()
                                  .SignInWithAmazon()
                                  .Manage();

                // Assert
                IReadOnlyCollection <LinkedAccount> accounts = page.LinkedAccounts();

                accounts.Count.ShouldBe(1);
                accounts.First().Name().ShouldBe("Amazon");

                // Act
                page = page.SignInWithGoogle();

                // Assert
                accounts = page.LinkedAccounts();

                accounts.Count.ShouldBe(2);
                accounts.First().Name().ShouldBe("Amazon");
                accounts.Last().Name().ShouldBe("Google");

                // Act
                page = accounts.First().Remove();

                // Assert
                accounts = page.LinkedAccounts();

                accounts.Count.ShouldBe(1);
                accounts.First().Name().ShouldBe("Google");
            });
        }