Esempio n. 1
0
class UserDetails(unittest.TestCase):
    def setUp(self):
        # First, create an instance of the Testbed class.
        self.testbed = testbed.Testbed()
        # Then activate the testbed, which prepares the service stubs for use.
        self.testbed.activate()
        # Next, declare which service stubs you want to use.
        self.testbed.init_datastore_v3_stub(User)
        self.testbed.init_memcache_stub()
        # Clear ndb's in-context cache between tests.
        # This prevents data from leaking between tests.
        # Alternatively, you could disable caching by
        # using ndb.get_context().set_cache_policy(False)
        ndb.get_context().clear_cache()
        self.mydb = DAL()
        self.obj = SearchEventsUsingAPI()

    def test_get_user_details(self):
        id = self.mydb.set_user_details(10204308876621622, 'Itamar', 'Sharify', '*****@*****.**')
        self.assertIsNotNone(self.mydb.get_user_details(user_id=id))

    def test_set_name(self):
        id = self.mydb.set_user_details(10204308876621622, 'Itamar', 'Sharify', '*****@*****.**')
        self.assertEqual(self.mydb.get_user_details(user_id=id)['name'], "Itamar")

    def test_set_event(self):
        self.mydb.set_event_details("222342395", "Hadoop Ecosystem Workshop", datetime.now(),
                                    "Tel Aviv-Yafo",  "Kiryat Atidim", "long-story-short", "rika pedro-shoham", "http://www.meetup.com", 64, "free", "All", "meetup")
        self.assertTrue(Event.check_event_exist("222342395"))

    def test_get_event_details(self):
        key = self.mydb.set_event_details("222342395", "Hadoop Ecosystem Workshop", datetime.now(),
                                    "Tel Aviv-Yafo",  "Kiryat Atidim", "long-story-short", "rika pedro-shoham", "http://www.meetup.com", 64, "free", "All", "meetup")
        self.assertIsNotNone(self.mydb.get_event_details(key.id()))

    def test_check_update_event_canceled(self):
        key = self.mydb.set_event_details("222342395", "Hadoop Ecosystem Workshop", datetime.now(),
                                    "Tel Aviv-Yafo",  "Kiryat Atidim", "long-story-short", "rika pedro-shoham", "http://www.meetup.com", 64, "free", "All", "meetup")
        key = self.mydb.set_event_details("222342395", "Canceled", datetime.now(),
                                    "Tel Aviv-Yafo",  "Kiryat Atidim", "long-story-short", "rika pedro-shoham", "http://www.meetup.com", 64, "free", "All", "meetup")
        results = Event.query(Event.id == "222342395")
        self.assertEqual(results.count(), 1)
        result = results.get()
        self.assertEqual("Canceled", result.name)

    def test_check_update_event_by_same_name(self):
        key = self.mydb.set_event_details("22234666", "Hadoop Ecosystem Workshop", datetime.now(),
                                    "Tel Aviv-Yafo",  "Kiryat Atidim", "long-story-short", "rika pedro-shoham", "http://www.meetup.com", 64, "free", "All", "meetup")

        key = self.mydb.set_event_details("222342395", "Hadoop Ecosystem Workshop", datetime.now(),
                                    "Tel Aviv-Yafo",  "Kiryat Atidim", "long-story-short", "rika pedro-shoham", "http://www.eventbrite.com", 64, "free", "All", "evenbrite")

        results = Event.query(Event.name == "Hadoop Ecosystem Workshop")
        self.assertEqual(results.count(), 1)

    def tearDown(self):
        self.testbed.deactivate()
Esempio n. 2
0
    def get(self):
        received = False
        _id = self.request.get("id").encode('ascii', 'ignore')
        token = self.request.get("token").encode('ascii', 'ignore')
        if _id == "" or token == "":
            received = False
        else:
            fb = fb_logic()
            if fb.test_id(_id) is False:
                received = 2
            else:
                fb = fb_logic()
                if fb.validate_fb_login(_id, access_token=token) is not False:
                    mydb = DAL()
                    user = fb.validate_fb_login(_id, access_token=token)
                    logging.info(user)
                    try:
                        email = user["email"].encode('ascii', 'ignore')
                    except:
                        email = None
                    received = mydb.set_user_details(
                        fb_id=int(_id),
                        name=user['first_name'].encode('ascii', 'ignore'),
                        last_name=user['last_name'].encode('ascii', 'ignore'),
                        email=email)

                    logging.info("received is " + str(received))
                else:
                    received = -1

        logging.info(received)
        self.post(received)
Esempio n. 3
0
    def get(self):
        received = False
        _id = self.request.get("id").encode('ascii', 'ignore')
        token = self.request.get("token").encode('ascii', 'ignore')
        if _id == "" or token == "":
            received = False
        else:
            fb = fb_logic()
            if fb.test_id(_id) is False:
                received = 2
            else:
                fb = fb_logic()
                if fb.validate_fb_login(_id, access_token=token) is not False:
                    mydb = DAL()
                    user = fb.validate_fb_login(_id, access_token=token)
                    logging.info(user)
                    try:
                        email = user["email"].encode('ascii', 'ignore')
                    except:
                        email = None
                    received = mydb.set_user_details(fb_id=int(_id), name=user['first_name'].encode('ascii', 'ignore'),
                                          last_name=user['last_name'].encode('ascii', 'ignore'),
                                          email=email)

                    logging.info("received is "+ str(received))
                else:
                    received = -1

        logging.info(received)
        self.post(received)
Esempio n. 4
0
class UserDetails(unittest.TestCase):
    def setUp(self):
        # First, create an instance of the Testbed class.
        self.testbed = testbed.Testbed()
        # Then activate the testbed, which prepares the service stubs for use.
        self.testbed.activate()
        # Next, declare which service stubs you want to use.
        self.testbed.init_datastore_v3_stub(User)
        self.testbed.init_memcache_stub()
        # Clear ndb's in-context cache between tests.
        # This prevents data from leaking between tests.
        # Alternatively, you could disable caching by
        # using ndb.get_context().set_cache_policy(False)
        ndb.get_context().clear_cache()
        self.mydb = DAL()
        self.obj = SearchEventsUsingAPI()

    def test_get_user_details(self):
        id = self.mydb.set_user_details(10204308876621622, 'Itamar', 'Sharify',
                                        '*****@*****.**')
        self.assertIsNotNone(self.mydb.get_user_details(user_id=id))

    def test_set_name(self):
        id = self.mydb.set_user_details(10204308876621622, 'Itamar', 'Sharify',
                                        '*****@*****.**')
        self.assertEqual(
            self.mydb.get_user_details(user_id=id)['name'], "Itamar")

    def test_set_event(self):
        self.mydb.set_event_details("222342395", "Hadoop Ecosystem Workshop",
                                    datetime.now(), "Tel Aviv-Yafo",
                                    "Kiryat Atidim", "long-story-short",
                                    "rika pedro-shoham",
                                    "http://www.meetup.com", 64, "free", "All",
                                    "meetup")
        self.assertTrue(Event.check_event_exist("222342395"))

    def test_get_event_details(self):
        key = self.mydb.set_event_details("222342395",
                                          "Hadoop Ecosystem Workshop",
                                          datetime.now(), "Tel Aviv-Yafo",
                                          "Kiryat Atidim", "long-story-short",
                                          "rika pedro-shoham",
                                          "http://www.meetup.com", 64, "free",
                                          "All", "meetup")
        self.assertIsNotNone(self.mydb.get_event_details(key.id()))

    def test_check_update_event_canceled(self):
        key = self.mydb.set_event_details("222342395",
                                          "Hadoop Ecosystem Workshop",
                                          datetime.now(), "Tel Aviv-Yafo",
                                          "Kiryat Atidim", "long-story-short",
                                          "rika pedro-shoham",
                                          "http://www.meetup.com", 64, "free",
                                          "All", "meetup")
        key = self.mydb.set_event_details("222342395", "Canceled",
                                          datetime.now(), "Tel Aviv-Yafo",
                                          "Kiryat Atidim", "long-story-short",
                                          "rika pedro-shoham",
                                          "http://www.meetup.com", 64, "free",
                                          "All", "meetup")
        results = Event.query(Event.id == "222342395")
        self.assertEqual(results.count(), 1)
        result = results.get()
        self.assertEqual("Canceled", result.name)

    def test_check_update_event_by_same_name(self):
        key = self.mydb.set_event_details("22234666",
                                          "Hadoop Ecosystem Workshop",
                                          datetime.now(), "Tel Aviv-Yafo",
                                          "Kiryat Atidim", "long-story-short",
                                          "rika pedro-shoham",
                                          "http://www.meetup.com", 64, "free",
                                          "All", "meetup")

        key = self.mydb.set_event_details("222342395",
                                          "Hadoop Ecosystem Workshop",
                                          datetime.now(), "Tel Aviv-Yafo",
                                          "Kiryat Atidim", "long-story-short",
                                          "rika pedro-shoham",
                                          "http://www.eventbrite.com", 64,
                                          "free", "All", "evenbrite")

        results = Event.query(Event.name == "Hadoop Ecosystem Workshop")
        self.assertEqual(results.count(), 1)

    def tearDown(self):
        self.testbed.deactivate()
Esempio n. 5
0
class UserDetails(unittest.TestCase):
    def setUp(self):
        self.testbed = testbed.Testbed()
        self.testbed.activate()
        self.testbed.init_datastore_v3_stub(User)
        self.testbed.init_memcache_stub()
        ndb.get_context().clear_cache()
        self.mydb = DAL()
        self.obj = SearchEventsUsingAPI()

    def test_check_login_that_already_fb_logged_in(self):
        self.mydb.set_user_details(12, "Itamar", "Sharify", "*****@*****.**")
        token = self.mydb.register("*****@*****.**", "12134", "Itamar", "Sharify")
        qry = User.query(User.email == "*****@*****.**")
        print "token", token
        for q in qry:
            print q.first_name , q.last_name, q.email
        self.assertTrue(qry.count() == 1)

    def test_register_new_user(self):
        token = self.mydb.register("*****@*****.**", "12134", "Itamar", "Sharify")
        qry = User.query(User.email == "*****@*****.**")
        print "token", token
        for q in qry:
            print q.first_name , q.last_name, q.email
        self.assertTrue(qry.count() == 1)

    def test_error_is_1_on_wrong_password(self):
        self.mydb.register("*****@*****.**", "12134", "Itamar", "Sharify")
        res = self.mydb.user_login("*****@*****.**", "12134")
        self.assertEqual(res, 1)

    def test_error_is_false_on_not_existing_email(self):
        self.mydb.register("*****@*****.**", "12134", "Itamar", "Sharify")
        res = self.mydb.user_login("*****@*****.**", "1213")
        self.assertFalse(res)

    def test_error_is_2_on_none_password(self):
        self.mydb.set_user_details(12, "Itamar", "Sharify", "*****@*****.**")
        qry = User.query(User.email == "*****@*****.**")
        res = self.mydb.user_login("*****@*****.**", "1213")
        self.assertEqual(res, 2)

    def test_check_token_exist(self):
        self.mydb.set_user_details(12, "Itamar", "Sharify", "*****@*****.**")
        self.assertTrue(self.mydb.check_token(1))

    def test_check_token_not_exist(self):
        self.mydb.set_user_details(12, "Itamar", "Sharify", "*****@*****.**")
        self.assertFalse(self.mydb.check_token(2))

    def test_check_json_for_get_user_by_token(self):
        self.mydb.set_user_details(12, "Itamar", "Sharify", "*****@*****.**")
        print self.mydb.get_user_by_token(1)
        self.assertTrue(json.loads(self.mydb.get_user_by_token(1)))

    def test_check_json_for_get_user_by_token_error(self):
        self.mydb.set_user_details(12, "Itamar", "Sharify", "*****@*****.**")
        res = self.mydb.get_user_by_token(35)
        self.assertEqual(1, res)
Esempio n. 6
0
class UserDetails(unittest.TestCase):
    def setUp(self):
        # First, create an instance of the Testbed class.
        self.testbed = testbed.Testbed()
        # Then activate the testbed, which prepares the service stubs for use.
        self.testbed.activate()
        # Next, declare which service stubs you want to use.
        self.testbed.init_datastore_v3_stub(User)
        self.testbed.init_memcache_stub()
        # Clear ndb's in-context cache between tests.
        # This prevents data from leaking between tests.
        # Alternatively, you could disable caching by
        # using ndb.get_context().set_cache_policy(False)
        ndb.get_context().clear_cache()
        self.mydb = DAL()
        self.obj = SearchEventsUsingAPI()
        event_id = self.mydb.set_event_details("222342395", "Hadoop Ecosystem Workshop", datetime.now(),
                                               "Tel Aviv-Yafo",  "Kiryat Atidim", "long-story-short", "rika pedro-shoham", "http://www.meetup.com", 64, "free", "All", "meetup")
        self.ev = event_id.id()

        self.mydb.set_user_details(10204308876621622, 'Itamar', 'Sharify', '*****@*****.**')
        self.mydb.set_user_details(10204308876621633, 'Olesya', 'Shapira', '*****@*****.**')
        self.mydb.set_user_details(10204308876621644, 'Rita', 'Markovich', '*****@*****.**')

    def test_get_attendings_after_attend(self):
        self.mydb.attend(2, self.ev)
        self.mydb.attend(3, self.ev)
        self.mydb.attend(4, self.ev)
        res1 = self.mydb.get_attendings(self.ev, 4)
        self.assertTrue(json.loads(res1))

    def test_get_attendings_after_unattend(self):
        self.mydb.attend(2, self.ev)
        self.mydb.unattend(2, self.ev)
        res1 = self.mydb.get_attendings(self.ev, 4)
        self.assertEqual(res1, '[]')

    def _test_get_attendings_not_my_self(self):
        self.mydb.attend(2, self.ev)
        res1 = self.mydb.get_attendings(self.ev, 2)
        self.assertEqual(res1, '[]')

    def test_attend(self):
        res = self.mydb.attend(2, self.ev)
        self.assertEqual(0, res)

    def test_attend_wrong_user_id_return_1(self):
        res = self.mydb.attend(1, self.ev)
        self.assertTrue(1, res)

    def test_attend_wrong_event_id_return_2(self):
        res = self.mydb.attend(2, 12)
        self.assertTrue(2, res)

    def test_unattend(self):
        self.mydb.attend(2, self.ev)
        res = self.mydb.unattend(2, self.ev)
        self.assertEqual(0, res)

    def test_get_all_user_events(self):
        self.mydb.attend(2, self.ev)
        event_id = self.mydb.set_event_details("2296", "Some Event", datetime.now(),
                                               "Tel Aviv-Yafo",  "Kiryat Atidim", "long-story-short", "rika pedro-shoham", "http://www.meetup.com", 64, "free", "All", "meetup")

        self.mydb.attend(2, event_id.id())
        res = self.mydb.get_all_user_events(2)
        print res
        self.assertTrue(json.loads(res))

    def tearDown(self):
        self.testbed.deactivate()
class UserDetails(unittest.TestCase):
    def setUp(self):
        # First, create an instance of the Testbed class.
        self.testbed = testbed.Testbed()
        # Then activate the testbed, which prepares the service stubs for use.
        self.testbed.activate()
        # Next, declare which service stubs you want to use.
        self.testbed.init_datastore_v3_stub(User)
        self.testbed.init_memcache_stub()
        # Clear ndb's in-context cache between tests.
        # This prevents data from leaking between tests.
        # Alternatively, you could disable caching by
        # using ndb.get_context().set_cache_policy(False)
        ndb.get_context().clear_cache()
        self.mydb = DAL()
        self.obj = SearchEventsUsingAPI()
        event_id = self.mydb.set_event_details("222342395", "Hadoop Ecosystem Workshop", datetime.now(),
                                               "Tel Aviv-Yafo",  "Kiryat Atidim", "long-story-short", "rika pedro-shoham", "http://www.meetup.com", 64, "free", "All", "meetup")
        self.ev = event_id.id()

        self.mydb.set_user_details(10204308876621622, 'Itamar', 'Sharify', '*****@*****.**')
        self.mydb.set_user_details(10204308876621633, 'Olesya', 'Shapira', '*****@*****.**')
        self.mydb.set_user_details(10204308876621644, 'Rita', 'Markovich', '*****@*****.**')

    def test_get_attendings_after_attend(self):
        self.mydb.attend(2, self.ev)
        self.mydb.attend(3, self.ev)
        self.mydb.attend(4, self.ev)
        res1 = self.mydb.get_attendings(self.ev, 4)
        self.assertTrue(json.loads(res1))

    def test_get_attendings_after_unattend(self):
        self.mydb.attend(2, self.ev)
        self.mydb.unattend(2, self.ev)
        res1 = self.mydb.get_attendings(self.ev, 4)
        self.assertEqual(res1, '[]')

    def _test_get_attendings_not_my_self(self):
        self.mydb.attend(2, self.ev)
        res1 = self.mydb.get_attendings(self.ev, 2)
        self.assertEqual(res1, '[]')

    def test_attend(self):
        res = self.mydb.attend(2, self.ev)
        self.assertEqual(0, res)

    def test_attend_wrong_user_id_return_1(self):
        res = self.mydb.attend(1, self.ev)
        self.assertTrue(1, res)

    def test_attend_wrong_event_id_return_2(self):
        res = self.mydb.attend(2, 12)
        self.assertTrue(2, res)

    def test_unattend(self):
        self.mydb.attend(2, self.ev)
        res = self.mydb.unattend(2, self.ev)
        self.assertEqual(0, res)

    def test_get_all_user_events(self):
        self.mydb.attend(2, self.ev)
        event_id = self.mydb.set_event_details("2296", "Some Event", datetime.now(),
                                               "Tel Aviv-Yafo",  "Kiryat Atidim", "long-story-short", "rika pedro-shoham", "http://www.meetup.com", 64, "free", "All", "meetup")

        self.mydb.attend(2, event_id.id())
        res = self.mydb.get_all_user_events(2)
        print res
        self.assertTrue(json.loads(res))

    def tearDown(self):
        self.testbed.deactivate()
Esempio n. 8
0
class UserDetails(unittest.TestCase):
    def setUp(self):
        self.testbed = testbed.Testbed()
        self.testbed.activate()
        self.testbed.init_datastore_v3_stub(User)
        self.testbed.init_memcache_stub()
        ndb.get_context().clear_cache()
        self.mydb = DAL()
        self.obj = SearchEventsUsingAPI()

    def test_check_login_that_already_fb_logged_in(self):
        self.mydb.set_user_details(12, "Itamar", "Sharify", "*****@*****.**")
        token = self.mydb.register("*****@*****.**", "12134", "Itamar", "Sharify")
        qry = User.query(User.email == "*****@*****.**")
        print "token", token
        for q in qry:
            print q.first_name , q.last_name, q.email
        self.assertTrue(qry.count() == 1)

    def test_register_new_user(self):
        token = self.mydb.register("*****@*****.**", "12134", "Itamar", "Sharify")
        qry = User.query(User.email == "*****@*****.**")
        print "token", token
        for q in qry:
            print q.first_name , q.last_name, q.email
        self.assertTrue(qry.count() == 1)

    def test_error_is_1_on_wrong_password(self):
        self.mydb.register("*****@*****.**", "12134", "Itamar", "Sharify")
        res = self.mydb.user_login("*****@*****.**", "12134")
        self.assertEqual(res, 1)

    def test_error_is_false_on_not_existing_email(self):
        self.mydb.register("*****@*****.**", "12134", "Itamar", "Sharify")
        res = self.mydb.user_login("*****@*****.**", "1213")
        self.assertFalse(res)

    def test_error_is_2_on_none_password(self):
        self.mydb.set_user_details(12, "Itamar", "Sharify", "*****@*****.**")
        qry = User.query(User.email == "*****@*****.**")
        res = self.mydb.user_login("*****@*****.**", "1213")
        self.assertEqual(res, 2)

    def test_check_token_exist(self):
        self.mydb.set_user_details(12, "Itamar", "Sharify", "*****@*****.**")
        self.assertTrue(self.mydb.check_token(1))

    def test_check_token_not_exist(self):
        self.mydb.set_user_details(12, "Itamar", "Sharify", "*****@*****.**")
        self.assertFalse(self.mydb.check_token(2))

    def test_check_json_for_get_user_by_token(self):
        self.mydb.set_user_details(12, "Itamar", "Sharify", "*****@*****.**")
        print self.mydb.get_user_by_token(1)
        self.assertTrue(json.loads(self.mydb.get_user_by_token(1)))

    def test_check_json_for_get_user_by_token_error(self):
        self.mydb.set_user_details(12, "Itamar", "Sharify", "*****@*****.**")
        res = self.mydb.get_user_by_token(35)
        self.assertEqual(1, res)