Пример #1
0
 def create_event_yandexafishacinema_cinema_venom(start_time=4695148800,
                                                  finish_time=4695235199,
                                                  duplicate_id=None):
     event = Event()
     event.source = "YandexAfishaCinema"
     event.title = "Веном"
     event.description = "С участием Вуди Харрельсона"
     event.url = "https://afisha.yandex.ru/moscow/cinema/venom-2018"
     event.categories = {
         "thriller", "adventure", "fiction", "action", "horror", "cinema"
     }
     event.image = "https://afisha.yandex.ru/13Iaf1251.jpg"
     event.start_time = start_time
     event.finish_time = finish_time
     event.join_anytime = True
     event.duplicate_id = duplicate_id
     event.source_rating_value = 7
     event.source_rating_count = 14379
     event.status = "active"
     return event
Пример #2
0
 def create_event_yandexafishatheater_theater_beshenyedengi(
         start_time=4697604000, finish_time=4697604000, duplicate_id=None):
     event = Event()
     event.source = "YandexAfishaTheater"
     event.title = "Бешеные деньги"
     event.description = "В главной роли Светлана Немоляева"
     event.url = "https://afisha.yandex.ru/moscow/theatre_show/beshenye-dengi-teatr-im-maiakovskogo"
     event.categories = {
         "theatre", "theatre_show", "nearest-events", "comedy",
         "season-premiere", "top-persons", "hitprodazh-badge",
         "newyear-vacations", "theatre-feedback", "family-theatre",
         "traditional-theatre", "theater"
     }
     event.image = "https://avatars.mds.yandex.net/get-afishanew/21422/5543036bb12f14c5b8ac13e180071c83/s270x135"
     event.start_time = start_time
     event.finish_time = finish_time
     event.join_anytime = False
     event.duplicate_id = duplicate_id
     event.source_rating_value = 9.1
     event.source_rating_count = 166
     event.status = "active"
     event.price_min = 400
     event.price_max = 6000
     return event
Пример #3
0
 def test_update_events_from_db(self, session, clear_data):
     # TODO: create events in abstract test class (remember that these events emulate events from database not from url)
     # Form event № 1
     event_from_database_for_updating = Event()
     event_from_database_for_updating._id = 78
     event_from_database_for_updating.source = "KudaGo"
     event_from_database_for_updating.title = "выставка Face 2 Face"
     event_from_database_for_updating.description = "Хотите лицом к лицу встретиться с героями известных фильмов? Добро пожаловать"
     event_from_database_for_updating.price_kudago = "от 0 до 650 рублей"
     event_from_database_for_updating.url = "https://kudago.com/msk/event/vyistavka-face-2-face"
     event_from_database_for_updating.categories = {
         "exhibition", "kids", "интерактивные", "новые технологии"
     }
     event_from_database_for_updating.image = "https://kudago.com/media/images/event/e1/6f/a5f5f.JPG"
     event_from_database_for_updating.start_time = 4695469200
     event_from_database_for_updating.finish_time = 4699825200
     event_from_database_for_updating.join_anytime = False
     event_from_database_for_updating.duplicate_source_id = "https://kudago.com/msk/event/vyistavka-face-2-face"
     event_from_database_for_updating.duplicate_id = 45
     event_from_database_for_updating.price_min = 0
     event_from_database_for_updating.price_max = 25
     event_from_database_for_updating.source_rating_value = 2
     event_from_database_for_updating.source_rating_count = 2
     event_from_database_for_updating.status = "active"
     # Form event № 2
     event_from_source_for_updating = Event()
     event_from_source_for_updating.source = "KudaGo"
     event_from_source_for_updating.title = "Обсуждение фильма Хоррор"
     event_from_source_for_updating.description = "Вот уж точно фильм, от которого волосы встают дыбом"
     event_from_source_for_updating.price_kudago = "500 рублей"
     event_from_source_for_updating.url = "https://kudago.com/msk/event/vyistavka-face-2-face"
     event_from_source_for_updating.categories = {"интересненькое", "опера"}
     event_from_source_for_updating.image = "https://kudago.com/media/images/event/e1/6f/5f.JPG"
     event_from_source_for_updating.start_time = 4695469200
     event_from_source_for_updating.finish_time = 4699825200
     event_from_source_for_updating.join_anytime = True
     event_from_source_for_updating.duplicate_source_id = "https://kudago.com/msk/event/vyistavka-face-2-face"
     event_from_source_for_updating.duplicate_id = 0
     event_from_source_for_updating.price_min = 500
     event_from_source_for_updating.price_max = 500
     event_from_database_for_updating.source_rating_value = 2
     event_from_database_for_updating.source_rating_count = 2
     event_from_source_for_updating.status = "active"
     # Form event № 3
     event_from_database_for_inactivating = Event()
     event_from_database_for_inactivating._id = 80
     event_from_database_for_inactivating.source = "KudaGo"
     event_from_database_for_inactivating.url = "https://kudago.com/msk/event/vyistavka-face-2-face"
     event_from_database_for_inactivating.start_time = 4695469500
     event_from_database_for_inactivating.finish_time = 4699825500
     event_from_database_for_inactivating.duplicate_source_id = "https://kudago.com/msk/event/vyistavka-face-2-face"
     event_from_database_for_inactivating.duplicate_id = 45
     event_from_database_for_inactivating.status = "active"
     # Form event № 4
     event_from_source_for_adding = Event()
     event_from_source_for_adding.source = "KudaGo"
     event_from_source_for_adding.url = "https://kudago.com/msk/event/vyistavka-face-2-face"
     event_from_source_for_adding.start_time = 4695469900
     event_from_source_for_adding.finish_time = 4699825900
     event_from_source_for_adding.duplicate_source_id = "https://kudago.com/msk/event/vyistavka-face-2-face"
     event_from_source_for_adding.duplicate_id = 0
     event_from_source_for_adding.status = "active"
     # Form lists for events as arguments for function under testing
     events = [
         copy.deepcopy(event_from_source_for_updating),
         copy.deepcopy(event_from_source_for_adding)
     ]
     same_events_in_db = [
         copy.deepcopy(event_from_database_for_updating),
         copy.deepcopy(event_from_database_for_inactivating)
     ]
     # Test our function
     result_list_of_events = KudaGoParser._update_events_from_db(
         same_events_in_db, events)
     self.check_equivalence_of_two_events(result_list_of_events[0],
                                          event_from_source_for_updating)
     self.check_equivalence_of_two_events(result_list_of_events[1],
                                          event_from_source_for_adding)
     event_from_database_for_inactivating.status = "hidden"
     self.check_equivalence_of_two_events(
         result_list_of_events[2], event_from_database_for_inactivating)
     assert len(result_list_of_events) == 3