Exemplo n.º 1
0
    private string DetermineIcon(BitPersonaPresenceStatus presence, bool isOutofOffice)
    {
        string oofIcon = "presence_oof";

        return(presence switch
        {
            BitPersonaPresenceStatus.Online => "presence_available",
            BitPersonaPresenceStatus.Busy => "presence_busy",
            BitPersonaPresenceStatus.Away => isOutofOffice ? oofIcon : "presence_away",
            BitPersonaPresenceStatus.DND => "presence_dnd",
            BitPersonaPresenceStatus.Offline => isOutofOffice ? oofIcon : "presence_offline",
            _ => "presence_unknown",
        });
Exemplo n.º 2
0
    public void BitPersonaPresenceStatusClassNameTest(BitPersonaPresenceStatus presenceStatus, bool isOutOfOffice)
    {
        var component = RenderComponent <BitPersonaTest>(
            parameters =>
        {
            parameters.Add(p => p.Presence, presenceStatus);
            parameters.Add(p => p.IsOutOfOffice, isOutOfOffice);
        });

        var presenceStatusClassName = DetermineIcon(presenceStatus, isOutOfOffice);
        var personaStatus           = component.Find(".bit-prs-presence > i");

        Assert.AreEqual($"bit-prs-icon bit-icon--{presenceStatusClassName}", personaStatus.GetAttribute("class"));
    }
Exemplo n.º 3
0
    public void BitPersonaPresenceTitleTest(string presenceTitle, BitPersonaPresenceStatus presenceStatus)
    {
        var component = RenderComponent <BitPersonaTest>(
            parameters =>
        {
            parameters.Add(p => p.PresenceTitle, presenceTitle);
            parameters.Add(p => p.Presence, presenceStatus);
        });

        var precenseTitleClassName = component.Find(".bit-prs-presence");
        var title = precenseTitleClassName.GetAttribute("title");

        Assert.AreEqual(presenceTitle, title);
    }