Example #1
0
 def test_login(self):
     url = get_url_by_name('login',{'user_id':'150014'})
     print bcolors.blue('REQUEST TO %s' % url)
     responce = requests.get(url)
     #outdata = json.loads(responce.content)
     #print bcolors.blue(outdata)
     self.assertEqual(responce.status_code, 200)
Example #2
0
 def test_profile_user(self):
     #import pdb; pdb.set_trace()
     url = get_url_by_name('get_profile_from_tpa',{'user_id':'150031'})
     print bcolors.blue('REQUEST TO %s' % url)
     responce = requests.get(url)
     outdata = json.loads(responce.content)
     print bcolors.blue(outdata)
    def test_get_room(self):
        '''
            Checking creating room by passing tree variables

            @caler_id: User whitch call enother one

            @opponent_id: User id who is called

            @app_name: Name of the application (TPA)      

            Router: [server]/api/[caler_id]/[opponent_id]/get_room_or_create 
            
            Example: http://chat.localhost/api/150031/150014/get_room_or_create 

            Response:
            
            {'status': 0, 'room_id': 234, participans: {'25': {'username': .....}} }


        '''
        apiconf = read_conf()
        data = {'appname': apiconf['config']['app_name'],'caler_id': '150031', 'opponent_id': '150014'}
        url =  get_url_by_name('get_room_or_create',{'app_name': apiconf['config']['app_name'],'caler_id': '150031', 'opponent_id': '150014'})
        print bcolors.blue('REQUEST TO %s' % url)
        headers = {'Content-type': 'application/json', 'Accept': 'text/plain'}
        responce = requests.get(url, data=json.dumps(data), headers=headers)
        self.assertEqual(responce.status_code, 200)
        outdata = json.loads(responce.content)
        print bcolors.blue(outdata)
        #import pdb; pdb.set_trace()
        self.assertEqual(outdata['status'], 0)
Example #4
0
def login(request,user_id, app_name):
    ''' 
        Login function. Set couple variables
 
             request.session['is_auth']

             request.session['user_id']  

            [server]/api/[user_id]/[app_name]login  

         Example: http://chat.localhost/api/150014/tpa1com/login   

            http://chat.localhost/api/150043/tpa1com/login
    
            http://chat.localhost/api/150031/tpa1com/login

        in session to determitate authentication status 
    '''
    try:
        cuser = ChatUser.objects.get(user_id=user_id)
    except:
        url = get_url_by_name('get_profile_from_tpa',{'user_id':user_id, 'app_name': app_name})
        print 'REQUEST_____%s' % url
        responce = requests.get(url)
        cuser = ChatUser.objects.get(user_id=user_id)
    request.session['is_auth'] = 'true'
    request.session['user_id'] = user_id
    #return { 'status': 0, 'user_id': user_id, 'username': cuser.name }
    from djapp.settings import TPA_SERVER
    return redirect('http://%s/video-chat' % TPA_SERVER)
Example #5
0
 def test_contact_list(self):
     #import pdb; pdb.set_trace()
     url = get_url_by_name('get_contact_list',{'user_id':'150031'})
     print bcolors.blue('REQUEST TO %s' % url)
     responce = requests.get(url)
     self.assertEqual(responce.status_code, 200)
     outdata = json.loads(responce.content)
     print bcolors.blue(outdata)
Example #6
0
def update_user(request,user_id,app_name):
    '''
         Function update or create user.
        
         Example: http://chat.locahost/api/tpa1com/150064/update_user
        
    '''
    url = get_url_by_name('get_profile_from_tpa',{'user_id':user_id,'app_name':app_name,'signal_server': TPA_SERVER})
    responce = requests.get(url)
    return {'status': 0, 'message': 'ok'}
Example #7
0
    def test_user_online(self):
        #import pdb; pdb.set_trace()
        url = get_url_by_name('get_online',{})
        print bcolors.blue('REQUEST TO %s' % url)
        responce = requests.get(url)
        try:
            outdata = json.loads(responce.content)
        except Exception:
            self.assertRaises(Exception)

        self.assertEqual(responce.status_code, 200)
    def test_add_contact_list(self):
        # import pdb; pdb.set_trace()
        url = get_url_by_name("add_contact", {"app_name": "tpa1com", "owner_id": "150031", "contact_id": "150014"})
        print bcolors.blue("REQUEST TO %s" % url)
        responce = requests.get(url)

        if responce.status_code <> 200:
            for par in re.findall('<pre class="exception_value">(.*?)<\/pre>', responce.content):
                print bcolors.red("#######%s######" % par)

        outdata = json.loads(responce.content)
        print bcolors.blue(outdata)
    def test_del_contact_list(self):
        #import pdb; pdb.set_trace()
        url = get_url_by_name('del_contact',{'app_name':'tpa1com','owner_id':'150031','contact_id':'150014'})
        print bcolors.blue('REQUEST TO %s' % url)
        responce = requests.get(url)

        if responce.status_code <> 200:
            for par in re.findall('<pre class="exception_value">(.*?)<\/pre>',responce.content):
                print bcolors.red('#######%s######' % par)

        outdata = json.loads(responce.content)
        print bcolors.blue(outdata)
 def test_profile_user_from_tpa(self):
     url = get_url_by_name('get_profile_from_tpa',{'user_id': '150031'})
     print bcolors.blue('REQUEST TO %s' % url)
     responce = requests.get(url)
     #print responce.content
     try:
         outdata = json.loads(responce.content)
     except Exception, err:
         
         
         for par in re.findall('<pre class="exception_value">(.*?)<\/pre>',responce.content):
             print bcolors.red('#######%s######' % par)
         #print responce.content
         self.fail(err)
Example #11
0
def get_online(request,app_name,user_id):
    '''
    Function return list of users with opposite gender who are on line

    [server]/api/[app_name]/[user_id]/get_online

    Example: http://chat.localhost/api/tpa1com/150031/get_online
    '''
    userlst_profile = []
    tpa = Tpa.objects.get(name=app_name)
    if user_id == 'undefined':
        return { 'status': 0, 'message': 'ok', 'user_list': {} }
    else:
        try:
            owner = ChatUser.objects.get(tpa=tpa,user_id=user_id)
        except:
            url = get_url_by_name('get_profile_from_tpa',{'user_id':user_id,'app_name':app_name,'signal_server': TPA_SERVER})
            responce = requests.get(url)
            owner = ChatUser.objects.get(tpa=tpa,user_id=user_id)
        users_online = ChatUser.objects.filter(tpa=tpa,is_online=1).exclude(gender=owner.gender)
        for u in users_online:        
            userlst_profile.append(serialize_user(u))
    return { 'status': 0, 'message': 'ok', 'user_list': userlst_profile }
Example #12
0
def get_profile(request,user_id,app_name):
    from djapp.settings import TPA_SERVER
    try:
        tpa = Tpa.objects.get(name=app_name)
        u_name = ChatUser.objects.get(user_id=user_id,tpa=tpa)
        out = {
            'status': 0,
            'user_profile': serialize_user(u_name)
        }
        return HttpResponse(json.dumps(out), content_type='application/json')
    except:
        url = get_url_by_name('get_profile_from_tpa',{'user_id':user_id,'app_name':app_name,'signal_server': TPA_SERVER})
        print 'REQUEST TO %s' % url
        responce = requests.get(url)
        outdata = json.loads(responce.content)
        print outdata  
       
        out = {
            'status': 0,
            'message': 'ok',
            'outdata': outdata
        }
        return HttpResponse(json.dumps(out), content_type='application/json')
Example #13
0
 def test_url_by_name(self):
     #import pdb; pdb.set_trace()
     dict_u = {'app_name':'tpa1com', 'user_id':'150031'}
     result = get_url_by_name('get_profile_from_tpa',dict_u)
     self.assertEqual('http://chat.localhost/api/tpa1com/get_profile_from_tpa/150031', result)