public IEnumerator T_TestSetUpRemovesSignin()
    {
        yield return(T_AuthSignIn());

        FirebaseToolkit <FT> .TestSetUp();

        Assert.That(FirebaseToolkit <FT> .IsSignedIn, Is.Not.True, $"We should be able to use TestSetUp to reset FirebaseToolkit so we can run multiple tests consecutively.");
        FirebaseToolkit <FT> .TestSetUp();

        Assert.That(FirebaseToolkit <FT> .IsSignedIn, Is.Not.True, $"Running TestSetUp many times is OK");
    }
    public IEnumerator T_GetInstanceManyTimes()
    {
        FirebaseApp fa  = FirebaseToolkit <FT> .CurrentFirebaseApp;
        FirebaseApp fa2 = FirebaseToolkit <FT> .CurrentFirebaseApp;
        FirebaseApp fa3 = FirebaseToolkit <FT> .CurrentFirebaseApp;

        Assert.That(object.ReferenceEquals(fa, fa2), "It does not creates a new instance on every call.");
        Assert.That(object.ReferenceEquals(fa2, fa3), "It does not creates a new instance on every call.");

        FirebaseToolkit <FT> .TestSetUp();

        FirebaseApp newApp = FirebaseToolkit <FT> .CurrentFirebaseApp;

        Assert.That(object.ReferenceEquals(fa, newApp), Is.Not.True, $"After a {nameof(FirebaseToolkit<FT>.TestSetUp)} now we get a different instance.");
        Assert.That(fa.Name, Is.Not.EqualTo(newApp.Name));

        yield break;
    }
 public void SetUpFirebaseToolkit() => FirebaseToolkit <FT> .TestSetUp();