示例#1
0
 public void Test01CreateAUserFromDNAUserID()
 {
     FullInputContext context = new FullInputContext(true);
     User user = new User(null, null, null);
     Assert.IsTrue(user.CreateUserFromDnaUserID(TestUserAccounts.GetModeratorAccount.UserID, 1));
     Assert.IsTrue(user.IsUserA(UserTypes.Moderator));
     Assert.IsFalse(user.IsUserA(UserTypes.Editor));
 }
示例#2
0
        public Stream GetUserInfo(string sitename, string identityusername)
        {
            var userNameType = QueryStringHelper.GetQueryParameterAsString("idtype", string.Empty).ToUpper();
            ISite site = GetSite(sitename);
            BBC.Dna.Users.User userInfo = new BBC.Dna.Users.User(readerCreator, dnaDiagnostic, cacheManager);
            bool foundUser = false;
            try
            {
                if (userNameType == "DNAUSERID")
                {
                    int dnaUserId = 0;
                    try
                    {
                        dnaUserId = Convert.ToInt32(identityusername);
                    }
                    catch (Exception)
                    {
                        throw ApiException.GetError(ErrorType.UserNotFound);
                    }
                    foundUser = userInfo.CreateUserFromDnaUserID(dnaUserId, site.SiteID);
                }
                else if (userNameType == "IDENTITYUSERID")
                {
                    foundUser = userInfo.CreateUserFromIdentityUserID(identityusername, site.SiteID);
                }
                else //identityusername
                {
                    foundUser = userInfo.CreateUserFromIdentityUserName(identityusername, site.SiteID);
                }

                if (!foundUser)
                {
                    throw ApiException.GetError(ErrorType.UserNotFound);
                }

            }
            catch (ApiException ex)
            {
                throw new DnaWebProtocolException(ex);
            }

            return GetOutputStream(userInfo);
        }
示例#3
0
        public void UserHasPrimarySiteHavingVisitedMultipleSites()
        {
            UserGroup g = new UserGroup();
            int primarySiteId = 60;
            var cache = _mocks.DynamicMock<ICacheManager>();
            cache.Stub(x => x.Contains("")).Constraints(Is.Anything()).Return(false);

            var readerMembers = _mocks.DynamicMock<IDnaDataReader>();
            readerMembers.Stub(x => x.Read()).Return(true);
            readerMembers.Stub(x => x.HasRows).Return(true);
            readerMembers.Stub(x => x.GetInt32NullAsZero("PrimarySiteId")).Return(60);

            var creator = _mocks.DynamicMock<IDnaDataReaderCreator>();
            creator.Stub(x => x.CreateDnaDataReader("finduserfromid")).Return(readerMembers);

            var diag = _mocks.DynamicMock<IDnaDiagnostics>();
            _mocks.ReplayAll();

            var user = new User(creator, diag, cache, null);
            user.CreateUserFromDnaUserID(1090501859, 60);

            

            Assert.AreEqual(primarySiteId, user.PrimarySiteId);
        }