Beispiel #1
0
    def render_admin_panel( self, req, cat, page, path_info):
        #req.perm.assert_permission('TRAC_ADMIN')
        userProfile_id = path_info
        teamRosterData={}
        userProfilesSystem = UserProfilesSystem(self.env)
        
        if req.args.has_key('tr_cancel'):
            req.redirect(req.href.admin(cat, page))
        
        if userProfile_id:
            userProfile = userProfilesSystem.get_userProfile(userProfile_id)
            if userProfile.exists:
                if self._do_updateUserProfile(req, userProfile, teamRosterData):
                    req.redirect(req.href.admin(cat, page))
                
                teamRosterData['userProfile']=userProfile
                add_stylesheet(req, 'tracteamroster/css/teamroster.css')    
                
                # wiki toolbar
                add_script(req, 'common/js/wikitoolbar.js')
                add_stylesheet(req, 'common/css/wiki.css')

                return 'admin_teamroster_userProfile.html', {'teamRoster':teamRosterData}
            else:
                req.redirect(req.href.admin(cat, page))
        teamRosterData['lastUpdatedProfile']= UserProfile()
        
        # manage team
        if req.method=="POST":
            if req.args.has_key("tr_userProfile_update"):
                userProfile = userProfilesSystem.get_userProfile(req.args.get('tr_userProfile_id'))
                if userProfile.exists:
                    self._do_updateUserProfile(req, userProfile, teamRosterData)
                    teamRosterData['lastUpdatedProfile']=userProfile
                
            if req.args.has_key("tr_userProfile_search"):
                self._do_searchUserProfile(req, userProfilesSystem, teamRosterData)
            
            if req.args.has_key("tr_userProfile_add"):
                self._do_addUserProfile(req, userProfilesSystem, teamRosterData)
            
            if req.args.has_key("tr_userProfile_create"):
                self._do_createUserProfile(req, userProfilesSystem, teamRosterData)
            
            if req.args.has_key("tr_userProfile_remove"):
                self._do_removeUserProfile(req, userProfilesSystem, teamRosterData)
                
        self._do_listActiveProfiles(req, userProfilesSystem, cat, page, teamRosterData)
        
        add_script(req, 'tracteamroster/js/teamroster.js')
        add_stylesheet(req, 'tracteamroster/css/teamroster.css')    
        
        # wiki toolbar
        add_script(req, 'common/js/wikitoolbar.js')
        add_stylesheet(req, 'common/css/wiki.css')
        
        return 'admin_teamroster_team.html', {'teamRoster':teamRosterData}
Beispiel #2
0
    def render_preference_panel(self, req, panel):
        """"""
        userProfileData = {}
        userProfile = UserProfilesSystem(self.env).get_userProfile(
            req.session.sid)

        if req.method == 'POST':
            userProfile.name = req.args.get('tr_userProfile_name')
            userProfile.email = req.args.get('tr_userProfile_email')
            userProfile.bio = req.args.get('tr_userProfile_bio')
            userProfile.picture_href = TeamAdminPage(
                self.env)._do_uploadPicture(req, userProfile, {},
                                            'tr_userProfile_picture')
            userProfile.role = req.args.get('tr_userProfile_role')
            if userProfile.save():
                userProfileData['message'] = 'Profile updated'

        userProfileData['userProfile'] = userProfile
        add_stylesheet(req, 'tracteamroster/css/teamroster.css')

        # wiki toolbar
        add_script(req, 'common/js/wikitoolbar.js')
        add_stylesheet(req, 'common/css/wiki.css')

        return 'prefs_teamroster_user.html', {'teamRoster': userProfileData}
Beispiel #3
0
 def getTeamRoster(self, req, listUserProfilesTemplate=[]):
     """Returns project's team roster.
     
     Usage:
         {{{ teamroster.getTeamRoster() # without arguments returns current active user profiles (with enabled='1') }}}
         {{{ teamroster.getTeamRoster([{role='developer', enabled='1'}]) # Returns all userProfiles with role='developer' and enabled='1' }}}
         {{{ teamroster.getTeamRoster([{name='%someName%'}]) # Returns all userProfiles with name like 'someName' }}}
     """
     if isinstance(listUserProfilesTemplate, list) and len(listUserProfilesTemplate)>0:    
         userProfileTemplates = []
         for listItem in listUserProfilesTemplate:
             if isinstance(listItem, dict):
                 userProfileTemplates.append(UserProfile(**listItem))
         
         userProfiles = UserProfilesSystem(self.env).search_userProfile(userProfileTemplates)
         return [dict(listItem) for listItem in userProfiles]
     else:
         return [dict(listItem) for listItem in UserProfilesSystem(self.env).get_active_userProfiles()]
Beispiel #4
0
    def search_userProfile(self, userProfileTemplate=None):
        if self.masterUserProfilesStore == '':
            return []

        _masterEnv = open_environment(self.masterUserProfilesStore)

        def _changeStore(userProfile):
            userProfile.project_name = userProfile.store.env.project_name
            userProfile.store = self
            return userProfile

        return map(
            _changeStore,
            UserProfilesSystem(_masterEnv).search_userProfile(
                userProfileTemplate))
Beispiel #5
0
 def render_preference_panel(self, req, panel):
     """"""
     userProfileData={}
     userProfile = UserProfilesSystem(self.env).get_userProfile(req.session.sid)
     
     if req.method=='POST' :
         userProfile.name = req.args.get('tr_userProfile_name')
         userProfile.email = req.args.get('tr_userProfile_email')
         userProfile.bio = req.args.get('tr_userProfile_bio')
         userProfile.picture_href = TeamAdminPage(self.env)._do_uploadPicture(req, userProfile, {},'tr_userProfile_picture')
         userProfile.role = req.args.get('tr_userProfile_role')
         if userProfile.save():
             userProfileData['message']='Profile updated'
     
     userProfileData['userProfile']=userProfile
     add_stylesheet(req, 'tracteamroster/css/teamroster.css')    
     
     # wiki toolbar
     add_script(req, 'common/js/wikitoolbar.js')
     add_stylesheet(req, 'common/css/wiki.css')
             
     return 'prefs_teamroster_user.html', {'teamRoster':userProfileData}
Beispiel #6
0
 def setUp(self):
     self.basedir = os.path.realpath(tempfile.mkdtemp())
     self.env = EnvironmentStub(enable=['trac.*', 'tracteamroster.*'])
     self.env.path = os.path.join(self.basedir, 'trac-tempenv')
     os.mkdir(self.env.path)
     self.userProfilesSystem = UserProfilesSystem(self.env)
Beispiel #7
0
class DefaultUserProfilesStoreTestCase(unittest.TestCase):
    def setUp(self):
        self.basedir = os.path.realpath(tempfile.mkdtemp())
        self.env = EnvironmentStub(enable=['trac.*', 'tracteamroster.*'])
        self.env.path = os.path.join(self.basedir, 'trac-tempenv')
        os.mkdir(self.env.path)
        self.userProfilesSystem = UserProfilesSystem(self.env)

    def tearDown(self):
        shutil.rmtree(self.basedir)

    def test_add_userProfile_1(self):
        """Add new userProfile """

        newUserProfile = UserProfile()
        newUserProfile.id = _testUserProfiles[0].get('_user')
        newUserProfile.name = _testUserProfiles[0].get('_name')
        newUserProfile.email = _testUserProfiles[0].get('_email')
        newUserProfile.picture_href = _testUserProfiles[0].get('_picture_href')
        newUserProfile.bio = _testUserProfiles[0].get('_bio')
        newUserProfile.role = _testUserProfiles[0].get('_role')

        self.userProfilesSystem.add_userProfile(newUserProfile)

        db = self.env.get_db_cnx()
        cursor = db.cursor()
        cursor.execute(
            'SELECT name, value FROM session_attribute WHERE sid=%s',
            (_testUserProfiles[0].get('_user'), ))

        _result = {}
        for name, value in cursor:
            _result[name] = value

        self.assertEqual(_result['enabled'], "1")
        self.assertEqual(_result['name'], _testUserProfiles[0].get('_name'))
        self.assertEqual(_result['email'], _testUserProfiles[0].get('_email'))
        self.assertEqual(_result['picture_href'],
                         _testUserProfiles[0].get('_picture_href'))
        self.assertEqual(_result['bio'], _testUserProfiles[0].get('_bio'))
        self.assertEqual(_result['role'], _testUserProfiles[0].get('_role'))

    def test_add_userProfile_2(self):
        """Add new userProfile using only the constructor"""

        newUserProfile = UserProfile(
            id=_testUserProfiles[1].get('_user'),
            name=_testUserProfiles[1].get('_name'),
            email=_testUserProfiles[1].get('_email'),
            picture_href=_testUserProfiles[1].get('_picture_href'),
            bio=_testUserProfiles[1].get('_bio'),
            role=_testUserProfiles[1].get('_role'))

        self.userProfilesSystem.add_userProfile(newUserProfile)

        db = self.env.get_db_cnx()
        cursor = db.cursor()
        cursor.execute(
            'SELECT name, value FROM session_attribute WHERE sid=%s',
            (_testUserProfiles[1].get('_user'), ))

        _result = {}
        for name, value in cursor:
            _result[name] = value

        self.assertEqual(_result['enabled'], "1")
        self.assertEqual(_result['name'], _testUserProfiles[1].get('_name'))
        self.assertEqual(_result['email'], _testUserProfiles[1].get('_email'))
        self.assertEqual(_result['picture_href'],
                         _testUserProfiles[1].get('_picture_href'))
        self.assertEqual(_result['bio'], _testUserProfiles[1].get('_bio'))
        self.assertEqual(_result['role'], _testUserProfiles[1].get('_role'))

    def test_get_activeUserProfiles(self):
        """Get team"""
        self._loadData()

        team = self.userProfilesSystem.get_active_userProfiles()
        self.assertEqual(len(list(team)), 3)

    def test_get_userProfileById(self):
        """Get userProfile by id"""
        self._loadData()

        userProfile = self.userProfilesSystem.get_userProfile(
            _testUserProfiles[0].get('_user'))

        self.assertEqual(userProfile.name, _testUserProfiles[0].get('_name'))
        self.assertEqual(userProfile.email, _testUserProfiles[0].get('_email'))
        self.assertEqual(userProfile.picture_href,
                         _testUserProfiles[0].get('_picture_href'))
        self.assertEqual(userProfile.bio, _testUserProfiles[0].get('_bio'))
        self.assertEqual(userProfile.role, _testUserProfiles[0].get('_role'))

    def test_get_searchUserProfilesByName(self):
        """Search userProfiles by name"""

        self._loadData()

        searchResult = list(
            self.userProfilesSystem.search_userProfile(
                UserProfile(name="%Foo%")))

        self.assertEqual(len(searchResult), 2)

        self.assertEqual(searchResult[0].name,
                         _testUserProfiles[0].get('_name'))
        self.assertEqual(searchResult[0].email,
                         _testUserProfiles[0].get('_email'))
        self.assertEqual(searchResult[0].picture_href,
                         _testUserProfiles[0].get('_picture_href'))
        self.assertEqual(searchResult[0].bio, _testUserProfiles[0].get('_bio'))
        self.assertEqual(searchResult[0].role,
                         _testUserProfiles[0].get('_role'))

        self.assertEqual(searchResult[1].name,
                         _testUserProfiles[1].get('_name'))
        self.assertEqual(searchResult[1].email,
                         _testUserProfiles[1].get('_email'))
        self.assertEqual(searchResult[1].picture_href,
                         _testUserProfiles[1].get('_picture_href'))
        self.assertEqual(searchResult[1].bio, _testUserProfiles[1].get('_bio'))
        self.assertEqual(searchResult[1].role,
                         _testUserProfiles[1].get('_role'))

    def test_get_searchUserProfiles(self):
        """Search userProfiles """

        self._loadData()

        searchResult = list(
            self.userProfilesSystem.search_userProfile(
                UserProfile(name="John%", role="%Dev%")))

        self.assertEqual(len(searchResult), 2)

        self.assertEqual(searchResult[0].name,
                         _testUserProfiles[0].get('_name'))
        self.assertEqual(searchResult[0].email,
                         _testUserProfiles[0].get('_email'))
        self.assertEqual(searchResult[0].picture_href,
                         _testUserProfiles[0].get('_picture_href'))
        self.assertEqual(searchResult[0].bio, _testUserProfiles[0].get('_bio'))
        self.assertEqual(searchResult[0].role,
                         _testUserProfiles[0].get('_role'))

        self.assertEqual(searchResult[1].name,
                         _testUserProfiles[1].get('_name'))
        self.assertEqual(searchResult[1].email,
                         _testUserProfiles[1].get('_email'))
        self.assertEqual(searchResult[1].picture_href,
                         _testUserProfiles[1].get('_picture_href'))
        self.assertEqual(searchResult[1].bio, _testUserProfiles[1].get('_bio'))
        self.assertEqual(searchResult[1].role,
                         _testUserProfiles[1].get('_role'))

    def test_updateUserProfile(self):
        """Update userProfile"""

        self._loadData()

        userProfile4 = self.userProfilesSystem.get_userProfile(
            _testUserProfiles[1].get('_user'))
        userProfile4.email = "*****@*****.**"
        userProfile4.name = "Matei"
        userProfile4.enabled = "0"
        userProfile4.save()

        userProfile_new = self.userProfilesSystem.get_userProfile(
            _testUserProfiles[1].get('_user'))
        self.assertEqual(userProfile_new.email, "*****@*****.**")
        self.assertEqual(userProfile_new.name, "Matei")
        self.assertEqual(userProfile4.enabled, "0")

    def _loadData(self):
        self.userProfilesSystem.add_userProfile(
            UserProfile(id=_testUserProfiles[0].get('_user'),
                        name=_testUserProfiles[0].get('_name'),
                        email=_testUserProfiles[0].get('_email'),
                        picture_href=_testUserProfiles[0].get('_picture_href'),
                        bio=_testUserProfiles[0].get('_bio'),
                        role=_testUserProfiles[0].get('_role')))

        self.userProfilesSystem.add_userProfile(
            UserProfile(id=_testUserProfiles[1].get('_user'),
                        name=_testUserProfiles[1].get('_name'),
                        email=_testUserProfiles[1].get('_email'),
                        picture_href=_testUserProfiles[1].get('_picture_href'),
                        bio=_testUserProfiles[1].get('_bio'),
                        role=_testUserProfiles[1].get('_role')))

        self.userProfilesSystem.add_userProfile(
            UserProfile(id=_testUserProfiles[2].get('_user'),
                        name=_testUserProfiles[2].get('_name'),
                        email=_testUserProfiles[2].get('_email'),
                        picture_href=_testUserProfiles[2].get('_picture_href'),
                        bio=_testUserProfiles[2].get('_bio'),
                        role=_testUserProfiles[2].get('_role')))
Beispiel #8
0
    def expand_macro(self, formatter, name, content):

        teamRosterData = dict(userProfiles=[])
        rendered_result = ""
        contentArgs = {}
        layoutArgs = {}
        userProfileTemplates = []

        # collecting arguments
        if content:
            for i, macroArgs in enumerate(content.split('|')):
                if i == 0:
                    contentArgs = MacroArguments(macroArgs)
                    self.log.error(contentArgs)
                    continue
                if i == 1:
                    layoutArgs = MacroArguments(macroArgs)
                    break

            # extracting userProfile attrs
            if len(contentArgs) > 0:
                userProfileTemplates.append(UserProfile(**contentArgs))

            if len(contentArgs.getListArgs()) > 0:
                for listItem in contentArgs.getListArgs():
                    userProfileTemplates.append(
                        UserProfile(**MacroArguments(listItem[1:len(listItem) -
                                                              1])))

        # _fixes
        def _fixes(userProfile):
            userProfile.bio_html = wiki_to_html(userProfile.bio, self.env,
                                                formatter.req) or "[blank]"
            return userProfile

        # grabbing userProfiles
        if len(userProfileTemplates) > 0:
            teamRosterData['userProfiles'] = map(
                _fixes,
                UserProfilesSystem(
                    self.env).search_userProfile(userProfileTemplates))
        else:
            teamRosterData['userProfiles'] = map(
                _fixes,
                UserProfilesSystem(self.env).get_active_userProfiles())

        # add stylesheet&script
        add_stylesheet(formatter.req, 'tracteamroster/css/teamroster.css')
        add_script(formatter.req, 'tracteamroster/js/teamroster.js')

        # render template
        rendered_result = Chrome(self.env).render_template(
            formatter.req,
            'macro_teamroster_team.html', {'teamRoster': teamRosterData},
            fragment=True)

        # wrap everything
        if len(layoutArgs) > 0:
            rendered_result = html.div(rendered_result, **layoutArgs)

        return rendered_result
Beispiel #9
0
 def get_userProfile(self, userProfile_id):
     _masterEnv = open_environment(self.masterUserProfilesStore)
     return UserProfilesSystem(_masterEnv).get_userProfile(userProfile_id)
Beispiel #10
0
 def setUp(self):
     self.basedir = os.path.realpath(tempfile.mkdtemp())
     self.env = EnvironmentStub(enable=['trac.*','tracteamroster.*'])
     self.env.path = os.path.join(self.basedir, 'trac-tempenv')
     os.mkdir(self.env.path)    
     self.userProfilesSystem = UserProfilesSystem(self.env)
Beispiel #11
0
class DefaultUserProfilesStoreTestCase(unittest.TestCase):

    def setUp(self):
        self.basedir = os.path.realpath(tempfile.mkdtemp())
        self.env = EnvironmentStub(enable=['trac.*','tracteamroster.*'])
        self.env.path = os.path.join(self.basedir, 'trac-tempenv')
        os.mkdir(self.env.path)    
        self.userProfilesSystem = UserProfilesSystem(self.env)

    def tearDown(self):
        shutil.rmtree(self.basedir)

    def test_add_userProfile_1(self):
        """Add new userProfile """
        
        newUserProfile = UserProfile()
        newUserProfile.id = _testUserProfiles[0].get('_user')
        newUserProfile.name = _testUserProfiles[0].get('_name')
        newUserProfile.email =_testUserProfiles[0].get('_email')
        newUserProfile.picture_href = _testUserProfiles[0].get('_picture_href')
        newUserProfile.bio = _testUserProfiles[0].get('_bio')
        newUserProfile.role = _testUserProfiles[0].get('_role')
        
        self.userProfilesSystem.add_userProfile(newUserProfile)
        
        db=self.env.get_db_cnx()
        cursor = db.cursor()
        cursor.execute('SELECT name, value FROM session_attribute WHERE sid=%s',(_testUserProfiles[0].get('_user'),))
        
        _result = {}
        for name,value in cursor:
            _result[name]=value
        
        self.assertEqual(_result['enabled'], "1")
        self.assertEqual(_result['name'], _testUserProfiles[0].get('_name'))
        self.assertEqual(_result['email'], _testUserProfiles[0].get('_email'))
        self.assertEqual(_result['picture_href'], _testUserProfiles[0].get('_picture_href'))
        self.assertEqual(_result['bio'], _testUserProfiles[0].get('_bio'))
        self.assertEqual(_result['role'], _testUserProfiles[0].get('_role'))
    
    def test_add_userProfile_2(self):
        """Add new userProfile using only the constructor"""
        
        newUserProfile = UserProfile( id=_testUserProfiles[1].get('_user'),
                                      name=_testUserProfiles[1].get('_name'),
                                      email=_testUserProfiles[1].get('_email'),
                                      picture_href=_testUserProfiles[1].get('_picture_href'),
                                      bio=_testUserProfiles[1].get('_bio'),
                                      role=_testUserProfiles[1].get('_role')
                                    )
        
        self.userProfilesSystem.add_userProfile(newUserProfile)
        
        db=self.env.get_db_cnx()
        cursor = db.cursor()
        cursor.execute('SELECT name, value FROM session_attribute WHERE sid=%s',(_testUserProfiles[1].get('_user'),))
        
        _result = {}
        for name,value in cursor:
            _result[name]=value
        
        self.assertEqual(_result['enabled'], "1")
        self.assertEqual(_result['name'], _testUserProfiles[1].get('_name'))
        self.assertEqual(_result['email'], _testUserProfiles[1].get('_email'))
        self.assertEqual(_result['picture_href'], _testUserProfiles[1].get('_picture_href'))
        self.assertEqual(_result['bio'], _testUserProfiles[1].get('_bio'))
        self.assertEqual(_result['role'], _testUserProfiles[1].get('_role'))
        
        
       
    def test_get_activeUserProfiles(self):
        """Get team""" 
        self._loadData()
        
        team = self.userProfilesSystem.get_active_userProfiles()
        self.assertEqual(len(list(team)),3)
    
    def test_get_userProfileById(self):
        """Get userProfile by id"""
        self._loadData()
        
        userProfile=self.userProfilesSystem.get_userProfile(_testUserProfiles[0].get('_user'))
        
        self.assertEqual(userProfile.name,_testUserProfiles[0].get('_name') )
        self.assertEqual(userProfile.email,_testUserProfiles[0].get('_email') )
        self.assertEqual(userProfile.picture_href,_testUserProfiles[0].get('_picture_href') )
        self.assertEqual(userProfile.bio,_testUserProfiles[0].get('_bio') )
        self.assertEqual(userProfile.role,_testUserProfiles[0].get('_role') )
            
    def test_get_searchUserProfilesByName(self):
        """Search userProfiles by name""" 
        
        self._loadData()
        
        searchResult = list(self.userProfilesSystem.search_userProfile(UserProfile(name="%Foo%")))
        
        self.assertEqual(len(searchResult),2)
        
        self.assertEqual(searchResult[0].name,_testUserProfiles[0].get('_name') )
        self.assertEqual(searchResult[0].email,_testUserProfiles[0].get('_email') )
        self.assertEqual(searchResult[0].picture_href,_testUserProfiles[0].get('_picture_href') )
        self.assertEqual(searchResult[0].bio,_testUserProfiles[0].get('_bio') )
        self.assertEqual(searchResult[0].role,_testUserProfiles[0].get('_role') )
        
        self.assertEqual(searchResult[1].name,_testUserProfiles[1].get('_name') )
        self.assertEqual(searchResult[1].email,_testUserProfiles[1].get('_email') )
        self.assertEqual(searchResult[1].picture_href,_testUserProfiles[1].get('_picture_href') )
        self.assertEqual(searchResult[1].bio,_testUserProfiles[1].get('_bio') )
        self.assertEqual(searchResult[1].role,_testUserProfiles[1].get('_role') )
    
    def test_get_searchUserProfiles(self):
        """Search userProfiles """ 
        
        self._loadData()
        
        searchResult = list(self.userProfilesSystem.search_userProfile(UserProfile(name="John%", role="%Dev%")))
        
        self.assertEqual(len(searchResult),2)
        
        self.assertEqual(searchResult[0].name,_testUserProfiles[0].get('_name') )
        self.assertEqual(searchResult[0].email,_testUserProfiles[0].get('_email') )
        self.assertEqual(searchResult[0].picture_href,_testUserProfiles[0].get('_picture_href') )
        self.assertEqual(searchResult[0].bio,_testUserProfiles[0].get('_bio') )
        self.assertEqual(searchResult[0].role,_testUserProfiles[0].get('_role') )
        
        self.assertEqual(searchResult[1].name,_testUserProfiles[1].get('_name') )
        self.assertEqual(searchResult[1].email,_testUserProfiles[1].get('_email') )
        self.assertEqual(searchResult[1].picture_href,_testUserProfiles[1].get('_picture_href') )
        self.assertEqual(searchResult[1].bio,_testUserProfiles[1].get('_bio') )
        self.assertEqual(searchResult[1].role,_testUserProfiles[1].get('_role') )
    
    
    def test_updateUserProfile(self):
        """Update userProfile""" 
        
        self._loadData()
    
        userProfile4=self.userProfilesSystem.get_userProfile(_testUserProfiles[1].get('_user'))
        userProfile4.email="*****@*****.**"
        userProfile4.name="Matei"
        userProfile4.enabled="0"
        userProfile4.save()
        
        userProfile_new=self.userProfilesSystem.get_userProfile(_testUserProfiles[1].get('_user'))
        self.assertEqual(userProfile_new.email, "*****@*****.**")
        self.assertEqual(userProfile_new.name, "Matei")
        self.assertEqual(userProfile4.enabled,"0")
        
    def _loadData(self):
        self.userProfilesSystem.add_userProfile(UserProfile(
                                      id=_testUserProfiles[0].get('_user'),
                                      name=_testUserProfiles[0].get('_name'),
                                      email=_testUserProfiles[0].get('_email'),
                                      picture_href=_testUserProfiles[0].get('_picture_href'),
                                      bio=_testUserProfiles[0].get('_bio'),
                                      role=_testUserProfiles[0].get('_role')
                                    )
        )
        
        
        self.userProfilesSystem.add_userProfile(UserProfile(
                                      id=_testUserProfiles[1].get('_user'),
                                      name=_testUserProfiles[1].get('_name'),
                                      email=_testUserProfiles[1].get('_email'),
                                      picture_href=_testUserProfiles[1].get('_picture_href'),
                                      bio=_testUserProfiles[1].get('_bio'),
                                      role=_testUserProfiles[1].get('_role')
                                    )
        )
        
        self.userProfilesSystem.add_userProfile(UserProfile(
                                      id=_testUserProfiles[2].get('_user'),
                                      name=_testUserProfiles[2].get('_name'),
                                      email=_testUserProfiles[2].get('_email'),
                                      picture_href=_testUserProfiles[2].get('_picture_href'),
                                      bio=_testUserProfiles[2].get('_bio'),
                                      role=_testUserProfiles[2].get('_role')
                                    )
        )