Example #1
0
    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'))
Example #2
0
 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 get_userProfile(self, userProfile_id):
        """ Returns userProfile from store.
        
        @param userProfile_id: str
        @return: tracteamroster.api.UserProfile
        """
        
        db = self.env.get_db_cnx()
        cursor = db.cursor()
        cursor.execute("SELECT sid, name, value FROM session_attribute "
                        "WHERE sid=%s and authenticated=1 ORDER BY sid", (userProfile_id,))
        _newUserProfile=UserProfile(userProfile_id, self)

        for sid, name, value in cursor:
            _newUserProfile[name] = value
            _newUserProfile.id = sid
            _newUserProfile.exists = True
        
        _newUserProfile.store = self
        
        return _newUserProfile
Example #4
0
    def get_userProfile(self, userProfile_id):
        """ Returns userProfile from store.
        
        @param userProfile_id: str
        @return: tracteamroster.api.UserProfile
        """

        db = self.env.get_db_cnx()
        cursor = db.cursor()
        cursor.execute(
            "SELECT sid, name, value FROM session_attribute "
            "WHERE sid=%s and authenticated=1 ORDER BY sid",
            (userProfile_id, ))
        _newUserProfile = UserProfile(userProfile_id, self)

        for sid, name, value in cursor:
            _newUserProfile[name] = value
            _newUserProfile.id = sid
            _newUserProfile.exists = True

        _newUserProfile.store = self

        return _newUserProfile
 def _get_userProfiles(self, userProfile_ids, grabAllFieldsFromDB=False):
     """This method returns the profiles defined by id 
     in userProfile_ids.
     
     How it works:
     
      1. Selecting only userProfile_ids
         userProfile_id      name    value
         jdoe                name    John Doe
         jdoe                email   [email protected]
         jdoe                role    Technical Arhitect
         jsmith              name    Joe Smith
         jsmith              email   [email protected]
         jsmith              role    Senior Developer
     
     2. marching through result set 
         
         _blankProfile=UserProfile(-1)
         for sid, name, value in thisExampleData:
             if _blankProfile.id!=sid:
                 if not firstLoop:
                     #loaded _blankProfile
                     yield _blankProfile
                 _blankProfile.id==sid
             _blankProfile[name]=value
         
     # Last item from loop (in thisExampleData it's about jsmith profile ).
     # We could avoid this by adding another loop / blank line
     yield _blankProfile
      
     @todo: Cache userProfiles
     
     @param userProfile_ids: list
     @return: list
     """
     
     db = self.env.get_db_cnx()
     cursor = db.cursor()
     if grabAllFieldsFromDB:
         cursor.execute("SELECT sid, name, value FROM session_attribute "
                        "WHERE sid in ('%s') ORDER BY sid"%("','".join(userProfile_ids)))
     else:
         cursor.execute("SELECT sid, name, value FROM session_attribute "
                        "WHERE sid in ('%s') and name in ('%s') ORDER BY sid"%("','".join(userProfile_ids), "','".join(UserProfile())))
     _newUserProfile=UserProfile(-1, self)
     _fieldsFromDb=[]
     for sid, name, value in cursor:
         if _newUserProfile.id!=sid:
             if _newUserProfile.id!=-1:
                 _newUserProfile.store=self
                 _newUserProfile.exists=True 
                 object.__setattr__(_newUserProfile, '_fieldsFromDb', _fieldsFromDb)
                 yield _newUserProfile
                 _newUserProfile=UserProfile(0, self)
                 _fieldsFromDb=[]
             _newUserProfile.id=sid
         _newUserProfile[name]=value
         _fieldsFromDb.append(name)
     
     # last _newUserProfile 
     if _newUserProfile.id!=-1:
         _newUserProfile.store=self
         _newUserProfile.exists=True
         object.__setattr__(_newUserProfile, '_fieldsFromDb', _fieldsFromDb)
         yield _newUserProfile
Example #6
0
    def _get_userProfiles(self, userProfile_ids, grabAllFieldsFromDB=False):
        """This method returns the profiles defined by id 
        in userProfile_ids.
        
        How it works:
        
         1. Selecting only userProfile_ids
            userProfile_id      name    value
            jdoe                name    John Doe
            jdoe                email   [email protected]
            jdoe                role    Technical Arhitect
            jsmith              name    Joe Smith
            jsmith              email   [email protected]
            jsmith              role    Senior Developer
        
        2. marching through result set 
            
            _blankProfile=UserProfile(-1)
            for sid, name, value in thisExampleData:
                if _blankProfile.id!=sid:
                    if not firstLoop:
                        #loaded _blankProfile
                        yield _blankProfile
                    _blankProfile.id==sid
                _blankProfile[name]=value
            
        # Last item from loop (in thisExampleData it's about jsmith profile ).
        # We could avoid this by adding another loop / blank line
        yield _blankProfile
         
        @todo: Cache userProfiles
        
        @param userProfile_ids: list
        @return: list
        """

        db = self.env.get_db_cnx()
        cursor = db.cursor()
        if grabAllFieldsFromDB:
            cursor.execute("SELECT sid, name, value FROM session_attribute "
                           "WHERE sid in ('%s') ORDER BY sid" %
                           ("','".join(userProfile_ids)))
        else:
            cursor.execute(
                "SELECT sid, name, value FROM session_attribute "
                "WHERE sid in ('%s') and name in ('%s') ORDER BY sid" %
                ("','".join(userProfile_ids), "','".join(UserProfile())))
        _newUserProfile = UserProfile(-1, self)
        _fieldsFromDb = []
        for sid, name, value in cursor:
            if _newUserProfile.id != sid:
                if _newUserProfile.id != -1:
                    _newUserProfile.store = self
                    _newUserProfile.exists = True
                    object.__setattr__(_newUserProfile, '_fieldsFromDb',
                                       _fieldsFromDb)
                    yield _newUserProfile
                    _newUserProfile = UserProfile(0, self)
                    _fieldsFromDb = []
                _newUserProfile.id = sid
            _newUserProfile[name] = value
            _fieldsFromDb.append(name)

        # last _newUserProfile
        if _newUserProfile.id != -1:
            _newUserProfile.store = self
            _newUserProfile.exists = True
            object.__setattr__(_newUserProfile, '_fieldsFromDb', _fieldsFromDb)
            yield _newUserProfile