コード例 #1
0
    def __init__(self, app_name=None, unique=False, **kwargs):
        super(FacebookTestUser, self).__init__(**kwargs)
        self.app_name = app_name
        self.unique = unique

        self.graph = get_static_graph(self.app_name)
        self.testusers = TestUsers(self.graph)
        self.users = []
        self.index = 0
コード例 #2
0
    def handle(self, *args, **options):
        installed = options.get('installed')
        apps = []
        if args:
            for arg in args:
                try:
                    application = settings.FACEBOOK_APPS[arg]
                    apps.append(application)
                except KeyError:
                    raise CommandError('Application %s does not exist' % arg)
        else:
            apps.append(settings.FACEBOOK_APPS.values()[0])

        for app in apps:
            graph = get_static_graph(app_dict=app)
            testusers = TestUsers(graph)
            user = testusers.generate_new_test_user(installed=installed)
            self.stdout.write(u'Generated new Testuser: %s\n' % user)
コード例 #3
0
    def __init__(self, app_name=None, unique=False, **kwargs):
        super(FacebookTestUser, self).__init__(**kwargs)
        self.app_name = app_name
        self.unique = unique

        self.graph = get_static_graph(self.app_name)
        self.testusers = TestUsers(self.graph)
        self.users = []
        self.index = 0
コード例 #4
0
 def handle(self, *args, **options):
     installed = options.get('installed')
     apps = []
     if args:
         for arg in args:
             try:
                 application = settings.FACEBOOK_APPS[arg]
                 apps.append(application)
             except KeyError:
                 raise CommandError('Application %s does not exist' %arg )
     else:
          apps.append(settings.FACEBOOK_APPS.values()[0])
     
     for app in apps:
         graph = get_static_graph(app_dict=app)
         testusers = TestUsers(graph)
         user = testusers.generate_new_test_user(installed=installed)
         self.stdout.write(u'Generated new Testuser: %s\n' % user)
コード例 #5
0
 def handle(self, *args, **options):
     apps = []
     update = options.get('update')  # Not implemented yet. Always update.
     if args:
         for arg in args:
             try:
                 application = settings.FACEBOOK_APPS[arg]
                 apps.append(application)
             except KeyError:
                 raise CommandError('Application %s does not exist' %arg )
     else:
          apps.append(settings.FACEBOOK_APPS.values()[0])
     
     for app in apps:
         graph = get_static_graph(app_dict=app)
         testusers = TestUsers(graph)
         users = testusers.get_test_users()
         self.stdout.write(u' Testusers: %s\n' % users)
         for user in users:
             installed = '*' if getattr(user, 'access_token', False) else ''
             self.stdout.write(u'%s\t%s %s\n' % (user.id, user.login_url, installed))
コード例 #6
0
    def handle(self, *args, **options):
        if args:
            try:
                arg1 = int(args[0])
            except AttributeError:
                raise CommandError('Arg %s must be integer' % user1)

            try:
                arg2 = int(args[1])
            except IndexError:
                arg2 = None
            except AttributeError:
                raise CommandError(
                    'Arg %s must be integer or empty for all users.' % user2)
            try:
                app = args[2]
            except IndexError:
                app = None
        else:
            raise CommandError('Need at least one user_id.')

        graph = get_static_graph(app_dict=app)
        testusers = TestUsers(graph)
        try:
            user1 = TestUser.objects.get(id=arg1)
        except TestUser.DoesNotExist:
            raise CommandError('User1 does not exist.')
        if arg2:
            try:
                user2 = TestUser.objects.get(id=arg2)
            except TestUser.DoesNotExist:
                raise CommandError('User2 does not exist.')
            response = testusers.make_friends_with(user1, user2)
            self.stdout.write(u' %s\n' % response)
        else:
            users = TestUser.objects.exclude(id=user1.id)
            for user in users:
                response = testusers.make_friends_with(user1, user)
                self.stdout.write(u' %s\n' % response)
コード例 #7
0
    def handle(self, *args, **options):
        if args:
            try:
                arg1 = int(args[0])
            except AttributeError:
                raise CommandError('Arg %s must be integer' %user1 )

            try:
                arg2 = int(args[1])
            except IndexError:
                arg2 = None
            except AttributeError:
                raise CommandError('Arg %s must be integer or empty for all users.' %user2 )  
            try:
                app = args[2]
            except IndexError:
                app = None
        else:
             raise CommandError('Need at least one user_id.')

        graph = get_static_graph(app_dict=app)
        testusers = TestUsers(graph)
        try:
            user1 = TestUser.objects.get(id=arg1)
        except TestUser.DoesNotExist:
            raise CommandError('User1 does not exist.')
        if arg2:
            try:
                user2 = TestUser.objects.get(id=arg2)
            except TestUser.DoesNotExist:
                raise CommandError('User2 does not exist.')
            response = testusers.make_friends_with(user1, user2)
            self.stdout.write(u' %s\n' % response)
        else:
            users = TestUser.objects.exclude(id=user1.id)
            for user in users:
                response = testusers.make_friends_with(user1, user)
                self.stdout.write(u' %s\n' % response)
コード例 #8
0
ファイル: fb_tags.py プロジェクト: cuongluu/django-tutorial
def fb_testuser_menu(app_name=None):
    graph = get_static_graph(app_name)
    tu = TestUsers(graph)
    testusers = tu.get_test_users()
    return {'users': testusers}
コード例 #9
0
class FacebookTestUser(Tube):
    def __init__(self, app_name=None, unique=False, **kwargs):
        super(FacebookTestUser, self).__init__(**kwargs)
        self.app_name = app_name
        self.unique = unique

        self.graph = get_static_graph(self.app_name)
        self.testusers = TestUsers(self.graph)
        self.users = []
        self.index = 0

    def __iter__(self):
        return self

    def set_up(self, cls, count, **kwargs):
        testuser_list = self.testusers.get_test_users()

        if count and count > len(testuser_list):
            remaining = count - len(testuser_list)
            try:
                print 'Not enough Test users (%s). Generating %s more.\n' % (
                    len(testuser_list), count - len(testuser_list))
            except IOError:
                pass
            for i in range(remaining):
                self._generate_new_user()
        self._user_for_testuser(testuser_list)

    def _user_for_testuser(self, testuser_list):
        try:
            print u'Checking for Facebook Test users...:\n'
        except IOError:
            pass
        for testuser in testuser_list:
            user, created = User.objects.get_or_create(id=int(testuser.id))
            if created:
                user.get_from_facebook(self.graph, save=True)
            self.users.append(user)
        try:
            print u'Done. Found %s testusers.' % len(testuser_list)
        except IOError:
            pass

    def _generate_new_user(self):
        newuser = self.testusers.generate_new_test_user(installed=True,
                                                        permissions=['email'])
        try:
            print u'Generated new Testuser: %s\n' % newuser
        except IOError:
            pass
        # The App wants Facebook Users, not Testusers.
        user, created = User.objects.get_or_create(id=int(newuser.id))
        if created:
            user.get_from_facebook(self.graph, save=True)
        self.users.append(user)
        return user

    def next(self):
        if self.index == len(self.users) - 1:
            if self.unique:
                try:
                    return self._generate_new_user()
                except GraphAPIError:
                    raise StopIteration
            else:
                self.index = 0
                return self.users[self.index]
        self.index += 1
        return self.users[self.index]
コード例 #10
0
class FacebookTestUser(Tube):
    def __init__(self, app_name=None, unique=False, **kwargs):
        super(FacebookTestUser, self).__init__(**kwargs)
        self.app_name = app_name
        self.unique = unique

        self.graph = get_static_graph(self.app_name)
        self.testusers = TestUsers(self.graph)
        self.users = []
        self.index = 0

    def __iter__(self):
        return self

    def set_up(self, cls, count, **kwargs):
        testuser_list = self.testusers.get_test_users()

        if count and count > len(testuser_list):
            remaining = count - len(testuser_list)
            try:
                print "Not enough Test users (%s). Generating %s more.\n" % (
                    len(testuser_list),
                    count - len(testuser_list),
                )
            except IOError:
                pass
            for i in range(remaining):
                self._generate_new_user()
        self._user_for_testuser(testuser_list)

    def _user_for_testuser(self, testuser_list):
        try:
            print u"Checking for Facebook Test users...:\n"
        except IOError:
            pass
        for testuser in testuser_list:
            user, created = User.objects.get_or_create(id=int(testuser.id))
            if created:
                user.get_from_facebook(self.graph, save=True)
            self.users.append(user)
        try:
            print u"Done. Found %s testusers." % len(testuser_list)
        except IOError:
            pass

    def _generate_new_user(self):
        newuser = self.testusers.generate_new_test_user(installed=True, permissions=["email"])
        try:
            print u"Generated new Testuser: %s\n" % newuser
        except IOError:
            pass
        # The App wants Facebook Users, not Testusers.
        user, created = User.objects.get_or_create(id=int(newuser.id))
        if created:
            user.get_from_facebook(self.graph, save=True)
        self.users.append(user)
        return user

    def next(self):
        if self.index == len(self.users) - 1:
            if self.unique:
                try:
                    return self._generate_new_user()
                except GraphAPIError:
                    raise StopIteration
            else:
                self.index = 0
                return self.users[self.index]
        self.index += 1
        return self.users[self.index]