示例#1
0
    def setup(self):
        super(TestListGames, self).setup()

        # Put some data into the database

        cat = models.SportCategory(name='Ball games')
        cat.put()

        cat1 = models.SportCategory(name='Basket Ball')
        cat1.add_parent(cat)
        cat1.put()

        cat2 = models.SportCategory(name='Football')
        cat2.add_parent(cat)
        cat2.put()

        user = usermodels.User(full_name="Adrian Letchford",
                               first_name="Adrian")
        user.put()

        tom = usermodels.User(full_name="Tom", first_name="Tom")
        tom.put()

        msg = messages.NewGame(categories=["Basket Ball"],
                               level=1,
                               time=datetime.now() + timedelta(days=5),
                               name="Adrian's big play off",
                               players_needed=2,
                               lat=34.0,
                               lon=89.0)

        game = actions.create_new_game(user, msg)

        actions.join_game(tom, game)
示例#2
0
    def test(self):

        tom = usermodels.User(full_name="Tom", first_name="Tom")
        tom.put()

        user = usermodels.User(full_name="Adrian", first_name="Adrian")
        user.put()

        msg = messages.NewGame(categories=["Basket Ball"],
                               level=1,
                               time=datetime.now(),
                               name="Adrian's big play off",
                               players_needed=2,
                               lat=34.0,
                               lon=89.0)

        game = actions.create_new_game(user, msg)

        actions.join_game(tom, game)

        game_list = models.UserGameList.get_or_create_addable_game_list(tom)
        game = game.key.get()

        assert game_list.games[0] == game.key
        assert game.players[0] == user.key
        assert game.players[1] == tom.key
        assert game.players_joined == 2
        assert not game.show_in_search
示例#3
0
    def setup(self):
        super(TestFriendships, self).setup()

        self.sender = models.User(full_name='hello', first_name="hello")
        self.sender.put()

        self.reciever = models.User(full_name='hello2', first_name="hello2")
        self.reciever.put()
示例#4
0
    def testGetByUsersEmpty(self):
        usera = models.User(full_name='Rowan Atkinson', first_name="Rowan")
        usera.put()
        userb = models.User(full_name='Stephen Fry', first_name="Stephen")
        userb.put()
        relationship = models.Relationship.get_by_users(self.usera, self.userb)

        assert relationship is None
示例#5
0
    def setup(self):
        super(TestUserSearch, self).setup()

        self.adrian = models.User(full_name='Adrian Letchford',
                                  first_name="Adrian")
        self.adrian.put()

        self.tom = models.User(full_name='Tom Haleminh', first_name="Tom")
        self.tom.put()
示例#6
0
    def setup(self):
        super(TestRelationshipModel, self).setup()

        # Create default users to use for these tests
        self.usera = models.User(full_name='Rowan Atkinson',
                                 first_name="Rowan")
        self.usera.put()

        self.userb = models.User(full_name='Stephen Fry', first_name="Stephan")
        self.userb.put()
示例#7
0
    def setup(self):
        super(TestGetNearbyUsers, self).setup()

        self.adrian = models.User(full_name='Adrian Letchford',
                                  first_name="Adrian")
        self.adrian.put()

        self.tom = models.User(full_name='Tom Haleminh', first_name="Tom")
        self.tom.put()

        self.barney = models.User(full_name='Barney', first_name="Barney")
        self.barney.put()
示例#8
0
    def setup(self):
        super(TestSportProfiles, self).setup()

        self.adrian = usermodels.User(full_name="Adrian", first_name="Adrian")
        self.adrian.initialise_new_token()
        self.adrian.put()

        self.tom = usermodels.User(full_name="Tom", first_name="Tom")
        self.tom.initialise_new_token()
        self.tom.put()

        self.cat = models.SportCategory(name='Basketball')
        self.cat.put()
示例#9
0
    def test_create_new_game(self):

        user = usermodels.User(full_name="Adrian", first_name="Adrian")
        user.put()

        msg = messages.NewGame(categories=["American Football"],
                               level=1,
                               time=datetime.now(),
                               name="Adrian's big play off",
                               players_needed=2,
                               location_name="Some place",
                               lat=34.0,
                               lon=89.0,
                               description="Please bring shoes.")

        game = actions.create_new_game(user, msg)

        game = game.key.get()

        assert game.key.parent() == user.key
        assert game.players_needed == 2
        assert game.category[0].id() == "american football"
        assert game.geo.lat == 34
        assert game.geo.lon == 89
        assert game.location_name == "Some place"
        assert game.creator == user.key
        assert len(game.players) == 1
        assert game.players[0] == user.key
        assert game.description == "Please bring shoes."
示例#10
0
    def test_game(self):

        start = datetime.now()
        end = datetime.now()

        user = usermodels.User(full_name="Adrian Letchford",
                               first_name="Adrian")
        user.put()

        game = models.Game(time=start,
                           end_time=end,
                           location_name="Some location",
                           geo=ndb.GeoPt(0, 0),
                           creator=user.key,
                           players=[user.key],
                           key=ndb.Key("Game", 'asdrfag'))

        msg = actions.game_model_to_message(game)

        assert msg.time == game.time
        assert msg.end_time == game.end_time
        assert msg.location_name == game.location_name
        assert msg.creator_id == user.key.id()
        assert msg.players[0].full_name == "Adrian Letchford"
        assert msg.player_ids[0] == user.key.id()
示例#11
0
    def test_no_token(self):
        user = models.User(full_name='a name', first_name="a")
        user.put()

        token = user.get_token()

        assert token is None
示例#12
0
    def test_get_or_create_first_time(self):
        user = models.User(full_name='Rowan Atkinson', first_name="Rowan")
        user.put()

        friend_list = models.FriendList.get_or_create_addable_friend_list(user)

        assert type(friend_list) is models.FriendList
        assert len(friend_list.friends) < 5000
示例#13
0
    def test_verify_and_get_user(self):
        user = models.User(full_name='hello', first_name="hello")
        user.initialise_new_token()
        user.put()

        result = actions.verify_and_get_user(token=user.get_token())

        assert user == result
示例#14
0
    def test_get_from_token(self):
        user = models.User(full_name='a name', first_name="a")
        user.initialise_new_token()
        user.put()
        token = user.get_token()

        ruser = models.User.get_from_token(token)

        assert ruser == user
示例#15
0
    def test_join_full_game(self):

        tom = usermodels.User(full_name="Tom", first_name="Tom")
        tom.put()

        user = usermodels.User(full_name="Adrian", first_name="Adrian")
        user.put()

        msg = messages.NewGame(categories=["Basket Ball"],
                               level=1,
                               time=datetime.now(),
                               name="Adrian's big play off",
                               players_needed=1,
                               lat=34.0,
                               lon=89.0)

        game = actions.create_new_game(user, msg)

        actions.join_game(tom, game)
示例#16
0
    def setup(self):
        super(TestLeaveGame, self).setup()

        self.tom = usermodels.User(full_name="Tom", first_name="Tom")
        self.tom.put()

        self.user = usermodels.User(full_name="Adrian", first_name="Adrian")
        self.user.put()

        msg = messages.NewGame(categories=["Basket Ball"],
                               level=1,
                               time=datetime.now(),
                               name="Adrian's big play off",
                               players_needed=2,
                               lat=34.0,
                               lon=89.0)

        self.game = actions.create_new_game(self.user, msg)

        actions.join_game(self.tom, self.game)
示例#17
0
    def setup(self):
        super(TestLeaveGame, self).setup()

        self.tom = usermodels.User(full_name="Tom", first_name="Tom")
        self.tom.initialise_new_token()
        self.tom.put()

        self.user = usermodels.User(full_name="Adrian", first_name="Adrian")
        self.user.put()

        cat = models.SportCategory(name='Basketball')
        cat.put()

        msg = messages.NewGame(categories=["Basketball"],
                               time=datetime.now(),
                               players_needed=2,
                               lat=34.0,
                               lon=89.0)

        self.game = actions.create_new_game(self.user, msg)
        actions.join_game(self.tom, self.game)
示例#18
0
    def setup(self):
        super(TestGetUpcoming, self).setup()

        self.tom = usermodels.User(full_name="Tom", first_name="Tom")
        self.tom.put()

        self.user = usermodels.User(full_name="Adrian", first_name="Adrian")
        self.user.put()

        self.cat = models.SportCategory(name='Basketball')
        self.cat.put()

        msg = messages.NewGame(categories=["Basketball"],
                               level=1,
                               time=datetime.now() + timedelta(days=7),
                               name="Adrian's big play off",
                               players_needed=2,
                               lat=34.0,
                               lon=89.0)

        self.game = actions.create_new_game(self.user, msg)

        actions.join_game(self.tom, self.game)
示例#19
0
    def test_get_sport_profiles(self):

        user = usermodels.User(full_name="Adrian", first_name="Adrian")
        user.put()

        cat = models.SportCategory(name='Basketball')
        cat.put()

        msg = messages.SportProfileRequest(sport_category_id=cat.key.id())

        actions.add_sport_profile(user, msg)

        profiles = actions.get_user_sport_profiles(user).profiles

        assert profiles[0].sport.name == "Basketball"
        assert profiles[0].level == 0
示例#20
0
    def test_delete_sport_profiles(self):

        user = usermodels.User(full_name="Bob", first_name="Bob")
        user.put()

        cat = models.SportCategory(name='Football')
        cat.put()

        msg = messages.SportProfileRequest(sport_category_id=cat.key.id())

        actions.add_sport_profile(user, msg)
        actions.delete_sport_profile(user, msg)

        profiles = actions.get_user_sport_profiles(user).profiles

        assert len(profiles) == 0
示例#21
0
    def setup(self):
        super(TestGameComments, self).setup()

        self.user = usermodels.User(full_name="Adrian", first_name="Adrian")
        self.user.initialise_new_token()
        self.user.put()

        self.cat = models.SportCategory(name='Basketball')
        self.cat.put()

        msg = messages.NewGame(categories=["Basketball"],
                               level=1,
                               time=datetime.now() - timedelta(days=2),
                               name="Adrian's big play off",
                               players_needed=2,
                               lat=34.0,
                               lon=89.0)

        self.game = actions.create_new_game(self.user, msg)
示例#22
0
    def test(self):

        user = usermodels.User(full_name="Adrian", first_name="Adrian")
        user.put()

        cat = models.SportCategory(name='Basketball')
        cat.put()

        msg = messages.SportProfileRequest(sport_category_id=cat.key.id())

        actions.add_sport_profile(user, msg)

        request = messages.SportmateSearchRequest()
        request.sport_category_id = 'basketball'

        result = actions.search_for_sportmates(request).profiles

        assert result[0].sport.name == "Basketball"
        assert result[0].user.full_name == "Adrian"
示例#23
0
    def test_create_new_game_minimum(self):

        user = usermodels.User(full_name="Adrian", first_name="Adrian")
        user.put()

        msg = messages.NewGame(categories=["American Football"],
                               time=datetime.now(),
                               players_needed=2,
                               location_name="Some place")

        game = actions.create_new_game(user, msg)

        game = game.key.get()

        assert game.key.parent() == user.key
        assert game.players_needed == 2
        assert game.category[0].id() == "american football"
        assert game.location_name == "Some place"
        assert game.creator == user.key
        assert len(game.players) == 1
        assert game.players[0] == user.key
示例#24
0
 def testInitialiseNewToken(self):
     user = models.User()
     user.initialise_new_token()
     assert type(user.dumb_token) is str
     assert len(user.dumb_token) == 40
示例#25
0
 def testSearchableNameUponUserInsert(self):
     user = models.User(full_name="Dicky Johnson", first_name="Dicky")
     user.put()
     assert_equals('dicky johnson', user.searchable_name)
示例#26
0
 def testUserType(self):
     user = models.User()
     assert type(user) is models.User
示例#27
0
    def setup(self):
        super(TestUserKeyIdToUser, self).setup()

        self.user = models.User(full_name='Stephen Fry', first_name="Stephen")
        self.user.put()
示例#28
0
 def testInsertUser(self):
     user = models.User(full_name="John Clease", first_name="John")
     user.put()
     result = models.User.query().fetch(2)
     assert_equals(1, len(result))
     assert_equals('John Clease', result[0].full_name)
示例#29
0
 def testSetName(self):
     user = models.User(full_name="John Clease", first_name="John")
     assert_equals('John Clease', user.full_name)
示例#30
0
 def testInsertUserWithoutName(self):
     models.User().put()