public void ItShouldExtractTheRightAttributesFromTheSamlResponse()
        {
            SsoResponseStub samlResp = new SsoResponseStub();
            var att = samlResp.GetAttributes();
            var membership = new Membership(samlResp);

            Assert.AreEqual(att["uid"], membership.UserUid);
            Assert.AreEqual(att["group_uid"], membership.GroupUid);
            Assert.AreEqual(att["group_role"], membership.Role);
        }
        public void ItShouldExtractTheRightAttributesFromTheSamlResponse()
        {
            SsoResponseStub samlResp = new SsoResponseStub();
            var att = samlResp.GetAttributes();
            var membership = new Membership(samlResp);

            Assert.AreEqual(att["uid"], membership.UserUid);
            Assert.AreEqual(att["group_uid"], membership.GroupUid);
            Assert.AreEqual(att["group_role"], membership.Role);
        }
示例#3
0
        public void ToEmail_WhenVirtual_ShouldReturnTheRightEmail()
        {
            // Configure environment
            MnoHelper.Environment      = "production";
            MnoHelper.Sso.CreationMode = "virtual";

            // Build user
            var samlResp = new SsoResponseStub();
            var user     = new User(samlResp);

            Assert.AreEqual(user.VirtualEmail, user.ToEmail());
        }
        public void ToUid_WhenReal_ShouldReturnTheRightUid()
        {
            // Configure environment
            MnoHelper.Environment = "production";
            MnoHelper.Sso.CreationMode = "real";

            // Build user
            var samlResp = new SsoResponseStub();
            var user = new User(samlResp);

            Assert.AreEqual(user.Uid, user.ToUid());
        }
示例#5
0
        public void ItShouldExtractTheRightAttributesFromTheSamlResponse()
        {
            SsoResponseStub samlResp = new SsoResponseStub();
            var             att      = samlResp.GetAttributes();
            var             group    = new Group(samlResp);

            Assert.AreEqual(att["group_uid"], group.Uid);
            Assert.AreEqual(att["group_name"], group.Name);
            Assert.AreEqual(att["group_email"], group.Email);
            Assert.AreEqual(DateTime.Parse(att["group_end_free_trial"]), group.FreeTrialEndAt);
            Assert.AreEqual(att["company_name"], group.CompanyName);
            Assert.AreEqual(att["group_has_credit_card"].Equals("true"), group.HasCreditCard);

            Assert.AreEqual(att["group_currency"], group.Currency);
            Assert.AreEqual(TimeZoneConverter.fromOlsonTz(att["group_timezone"]), group.Timezone);
            Assert.AreEqual(att["group_country"], group.Country);
            Assert.AreEqual(att["group_city"], group.City);
        }
        public void ItShouldExtractTheRightAttributesFromTheSamlResponse()
        {
            SsoResponseStub samlResp = new SsoResponseStub();
            var att = samlResp.GetAttributes();
            var group = new Group(samlResp);

            Assert.AreEqual(att["group_uid"], group.Uid);
            Assert.AreEqual(att["group_name"], group.Name);
            Assert.AreEqual(att["group_email"], group.Email);
            Assert.AreEqual(DateTime.Parse(att["group_end_free_trial"]), group.FreeTrialEndAt);
            Assert.AreEqual(att["company_name"], group.CompanyName);
            Assert.AreEqual(att["group_has_credit_card"].Equals("true"), group.HasCreditCard);

            Assert.AreEqual(att["group_currency"], group.Currency);
            Assert.AreEqual(TimeZoneConverter.fromOlsonTz(att["group_timezone"]), group.Timezone);
            Assert.AreEqual(att["group_country"], group.Country);
            Assert.AreEqual(att["group_city"], group.City);
        }
示例#7
0
        public void ItShouldExtractTheRightAttributesFromTheSamlResponse()
        {
            var samlResp = new SsoResponseStub();
            var att      = samlResp.GetAttributes();
            var user     = new User(samlResp);

            Assert.AreEqual(att["mno_session"], user.SsoSession);
            Assert.AreEqual(DateTime.Parse(att["mno_session_recheck"]), user.SsoSessionRecheck);
            Assert.AreEqual(att["group_uid"], user.GroupUid);
            Assert.AreEqual(att["group_role"], user.GroupRole);
            Assert.AreEqual(att["uid"], user.Uid);
            Assert.AreEqual(att["virtual_uid"], user.VirtualUid);
            Assert.AreEqual(att["email"], user.Email);
            Assert.AreEqual(att["virtual_email"], user.VirtualEmail);
            Assert.AreEqual(att["name"], user.FirstName);
            Assert.AreEqual(att["surname"], user.LastName);
            Assert.AreEqual(att["country"], user.Country);
            Assert.AreEqual(att["company_name"], user.CompanyName);
        }
示例#8
0
        public void ItContructsAnInstanceFromHttpSessionStateObjectAndSsoUser()
        {
            // Http context
            Helpers.injectMnoSession();
            var httpSession = Helpers.FakeHttpSessionState();

            // User
            var samlResp = new SsoResponseStub();
            var user     = new User(samlResp);


            Session mnoSession = new Session("maestrano", httpSession, user);

            Assert.AreEqual(httpSession, mnoSession.HttpSession);
            Assert.AreEqual(user.Uid, mnoSession.Uid);
            Assert.AreEqual(user.GroupUid, mnoSession.GroupUid);
            Assert.AreEqual(user.SsoSession, mnoSession.SessionToken);
            Assert.AreEqual(user.SsoSessionRecheck, mnoSession.Recheck);
        }
        public void ItShouldExtractTheRightAttributesFromTheSamlResponse()
        {
            var samlResp = new SsoResponseStub();
            var att = samlResp.GetAttributes();
            var user = new User(samlResp);

            Assert.AreEqual(att["mno_session"], user.SsoSession);
            Assert.AreEqual(DateTime.Parse(att["mno_session_recheck"]), user.SsoSessionRecheck);
            Assert.AreEqual(att["group_uid"], user.GroupUid);
            Assert.AreEqual(att["group_role"], user.GroupRole);
            Assert.AreEqual(att["uid"], user.Uid);
            Assert.AreEqual(att["virtual_uid"], user.VirtualUid);
            Assert.AreEqual(att["email"], user.Email);
            Assert.AreEqual(att["virtual_email"], user.VirtualEmail);
            Assert.AreEqual(att["name"], user.FirstName);
            Assert.AreEqual(att["surname"], user.LastName);
            Assert.AreEqual(att["country"], user.Country);
            Assert.AreEqual(att["company_name"], user.CompanyName);
        }
        public void Sso_SetSession_ItShouldSetTheUserInSession()
        {
            MnoHelper.Environment = "production";

            // Build context
            var samlResp = new SsoResponseStub();
            var att = samlResp.GetAttributes();
            var user = new User(samlResp);
            var session = Helpers.FakeHttpSessionState();
            MnoHelper.Sso.SetSession(session, user);

            // Decrypt session
            var enc = System.Text.Encoding.UTF8;
            var json = enc.GetString(Convert.FromBase64String(session["maestrano"].ToString()));
            var mnoObj = JObject.Parse(json);

            Assert.AreEqual(user.SsoSession, mnoObj.Value<String>("session"));
            Assert.AreEqual(user.Uid, mnoObj.Value<String>("uid"));
            Assert.AreEqual(user.GroupUid, mnoObj.Value<String>("group_uid"));
            Assert.AreEqual(user.SsoSessionRecheck, mnoObj.Value<DateTime>("session_recheck"));
        }
        public void Sso_ClearSession_ItShouldDeleteTheMaestranoSession()
        {
            MnoHelper.Environment = "production";

            // Build context
            var samlResp = new SsoResponseStub();
            var att = samlResp.GetAttributes();
            var user = new User(samlResp);
            var session = Helpers.FakeHttpSessionState();
            MnoHelper.Sso.SetSession(session, user);

            // Test
            MnoHelper.Sso.ClearSession(session);
            Assert.IsNull(session["maestrano"]);
        }
        public void ItContructsAnInstanceFromHttpSessionStateObjectAndSsoUser()
        {
            // Http context
            Helpers.injectMnoSession();
            var httpSession = Helpers.FakeHttpSessionState();

            // User
            var samlResp = new SsoResponseStub();
            var user = new User(samlResp);

            Session mnoSession = new Session(httpSession, user);

            Assert.AreEqual(httpSession, mnoSession.HttpSession);
            Assert.AreEqual(user.Uid, mnoSession.Uid);
            Assert.AreEqual(user.GroupUid, mnoSession.GroupUid);
            Assert.AreEqual(user.SsoSession, mnoSession.SessionToken);
            Assert.AreEqual(user.SsoSessionRecheck, mnoSession.Recheck);
        }