public void IsSupportedPCRShouldReturnTrueIfPCRIncluded()
        {
            var metadata = GetMetadataWithSupportedLoginHint(LoginHintPrefixes.PCR);

            var actual = LoginHint.IsSupportedForPcr(metadata);

            Assert.IsTrue(actual);
        }
        public void IsSupportedForShouldBeCaseInsensitive()
        {
            var metadata = GetMetadataWithSupportedLoginHint("MSISDN");

            var actual = LoginHint.IsSupportedFor(metadata, "MsIsDn");

            Assert.IsTrue(actual);
        }
        public void IsSupportedEncryptedMSISDNShouldReturnFalseIfEncryptedMSISDNNotIncluded()
        {
            var metadata = GetMetadataWithSupportedLoginHint(LoginHintPrefixes.PCR);

            var actual = LoginHint.IsSupportedForEncryptedMsisdn(metadata);

            Assert.IsFalse(actual);
        }
        public void IsSupportedMSISDNShouldReturnTrueIfMSISDNIncluded()
        {
            var metadata = GetMetadataWithSupportedLoginHint(LoginHintPrefixes.MSISDN);

            var actual = LoginHint.IsSupportedForEncryptedMsisdn(metadata);

            Assert.IsTrue(actual);
        }
        public void IsSupportedPCRShouldReturnTrueIfSupportedVersionIs1_2()
        {
            var metadata = new ProviderMetadata
            {
                MobileConnectVersionSupported = new SupportedVersions(new Dictionary <string, string> {
                    ["openid"] = "mc_v1.2"
                }),
                LoginHintMethodsSupported = null,
            };

            var actual = LoginHint.IsSupportedForMsisdn(metadata);

            Assert.IsTrue(actual);
        }
        public void IsSupportedPCRShouldReturnFalseIfMissingMetadata()
        {
            var actual = LoginHint.IsSupportedForPcr(null);

            Assert.IsFalse(actual);
        }
        public void IsSupportedEncryptedMSISDNShouldReturnTrueIfMissingMetadata()
        {
            var actual = LoginHint.IsSupportedForEncryptedMsisdn(null);

            Assert.IsTrue(actual);
        }
 public void GenerateForShouldReturnNullWhenPrefixEmpty()
 {
     Assert.IsNull(LoginHint.GenerateFor("", "testvalue"));
 }
 public void GenerateForShouldReturnNullWhenValueEmpty()
 {
     Assert.IsNull(LoginHint.GenerateFor("PCR", null));
 }
        public void GenerateForPCRShouldGenerateCorrectFormat()
        {
            var actual = LoginHint.GenerateForPcr("zmalqpwoeirutyfhdjskaslxzmxncbv");

            Assert.AreEqual("PCR:zmalqpwoeirutyfhdjskaslxzmxncbv", actual);
        }
        public void GenerateForEncryptedMSISDNShouldGenerateCorrectFormat()
        {
            var actual = LoginHint.GenerateForEncryptedMsisdn("zmalqpwoeirutyfhdjskaslxzmxncbv");

            Assert.AreEqual("ENCR_MSISDN:zmalqpwoeirutyfhdjskaslxzmxncbv", actual);
        }
        public void GenerateForMSISDNShouldGenerateCorrectFormat()
        {
            var actual = LoginHint.GenerateForMsisdn("+447700900250");

            Assert.AreEqual("MSISDN:447700900250", actual);
        }
        public void IsSupportedForShouldReturnFalseIfUnrecognisedPrefixAndMissingMetadata()
        {
            var actual = LoginHint.IsSupportedFor(null, "testprefix");

            Assert.IsFalse(actual);
        }