Beispiel #1
0
    def _build_object(self):
        polygon = 'SRID=%s;MULTIPOLYGON(((0 0, 0 3, 3 3, 3 0, 0 0)))' % settings.SRID
        self.city = zoning_factories.CityFactory(geom=polygon)
        self.district = zoning_factories.DistrictFactory(geom=polygon)
        self.portal = common_factories.TargetPortalFactory()
        self.theme = common_factories.ThemeFactory()

        self.content = self.factory(geom='SRID=%s;POINT(1 1)' % settings.SRID,
                                    portals=[self.portal],
                                    themes=[self.theme])

        self.picture = common_factories.AttachmentFactory(
            content_object=self.content,
            attachment_file=get_dummy_uploaded_image())
        self.document = common_factories.AttachmentFactory(
            content_object=self.content,
            attachment_file=get_dummy_uploaded_document())

        self.content.themes.add(self.theme)
        self.source = common_factories.RecordSourceFactory()
        self.content.source.add(self.source)

        self.content.portal.add(self.portal)
        if settings.TREKKING_TOPOLOGY_ENABLED:
            path = core_factories.PathFactory(
                geom='SRID=%s;LINESTRING(0 10, 10 10)' % settings.SRID)
            self.trek = trekking_factories.TrekFactory(paths=[path])
            self.poi = trekking_factories.POIFactory(paths=[(path, 0.5, 0.5)])
        else:
            self.trek = trekking_factories.TrekFactory(
                geom='SRID=%s;LINESTRING(0 10, 10 10)' % settings.SRID)
            self.poi = trekking_factories.POIFactory(
                geom='SRID=%s;POINT(0 5)' % settings.SRID)
Beispiel #2
0
 def setUp(self):
     self.content = tourism_factories.TouristicContentFactory(geom='SRID=%s;POINT(1 1)' % settings.SRID)
     self.content2 = tourism_factories.TouristicContentFactory(geom='SRID=%s;POINT(2 2)' % settings.SRID, name="ZZZ")
     self.event = tourism_factories.TouristicEventFactory(geom='SRID=%s;POINT(50 50)' % settings.SRID)
     self.event2 = tourism_factories.TouristicEventFactory(geom='SRID=%s;POINT(60 60)' % settings.SRID, name="ZZZ")
     if settings.TREKKING_TOPOLOGY_ENABLED:
         path = core_factories.PathFactory(geom='SRID=%s;LINESTRING(0 100, 100 100)' % settings.SRID)
         self.trek = trekking_factories.TrekFactory(paths=[path])
         self.poi = trekking_factories.POIFactory(paths=[(path, 0.5, 0.5)])
     else:
         self.trek = trekking_factories.TrekFactory(geom='SRID=%s;LINESTRING(0 100, 100 100)' % settings.SRID)
         self.poi = trekking_factories.POIFactory(geom='SRID=%s;POINT(50 100)' % settings.SRID)
Beispiel #3
0
    def _build_object(self):
        polygon = 'SRID=%s;MULTIPOLYGON(((0 0, 0 3, 3 3, 3 0, 0 0)))' % settings.SRID
        self.city = zoning_factories.CityFactory(geom=polygon)
        self.district = zoning_factories.DistrictFactory(geom=polygon)

        self.content = self.factory(geom='SRID=%s;POINT(1 1)' % settings.SRID)

        self.picture = common_factories.AttachmentFactory(
            content_object=self.content,
            attachment_file=get_dummy_uploaded_image())
        self.document = common_factories.AttachmentFactory(
            content_object=self.content,
            attachment_file=get_dummy_uploaded_document())
        self.video = common_factories.AttachmentFactory(
            content_object=self.content,
            attachment_file='',
            attachment_video=
            'http://www.youtube.com/embed/Jm3anSjly0Y?wmode=opaque')
        self.video_detected = detect_backend(self.video.attachment_video)

        self.theme = common_factories.ThemeFactory()
        self.content.themes.add(self.theme)
        self.source = common_factories.RecordSourceFactory()
        self.content.source.add(self.source)

        self.portal = common_factories.TargetPortalFactory()
        self.content.portal.add(self.portal)

        path = core_factories.PathFactory(
            geom='SRID=%s;LINESTRING(0 10, 10 10)' % settings.SRID)
        self.trek = trekking_factories.TrekFactory(no_path=True)
        self.trek.add_path(path)
        self.poi = trekking_factories.POIFactory(no_path=True)
        self.poi.add_path(path, start=0.5, end=0.5)
Beispiel #4
0
 def setUp(self):
     self.content = tourism_factories.TouristicContentFactory(
         geom='SRID=%s;POINT(1 1)' % settings.SRID)
     self.content2 = tourism_factories.TouristicContentFactory(
         geom='SRID=%s;POINT(2 2)' % settings.SRID)
     self.event = tourism_factories.TouristicEventFactory(
         geom='SRID=%s;POINT(50 50)' % settings.SRID)
     self.event2 = tourism_factories.TouristicEventFactory(
         geom='SRID=%s;POINT(60 60)' % settings.SRID)
     if settings.TREKKING_TOPOLOGY_ENABLED:
         path = core_factories.PathFactory(
             geom='SRID=%s;LINESTRING(0 100, 100 100)' % settings.SRID)
         self.trek = trekking_factories.TrekFactory(no_path=True)
         self.trek.add_path(path)
         self.poi = trekking_factories.POIFactory(no_path=True)
         self.poi.add_path(path, start=0.5, end=0.5)
     else:
         self.trek = trekking_factories.TrekFactory(
             geom='SRID=%s;LINESTRING(0 100, 100 100)' % settings.SRID)
         self.poi = trekking_factories.POIFactory(
             geom='SRID=%s;POINT(50 100)' % settings.SRID)
    def test_trek_detail_no_parking_location(self):
        trek_no_parking = trek_factory.TrekFactory(name_fr='no_parking', parking_location=None, published_fr=True)
        response = self.get_treks_detail(trek_no_parking.pk, 'fr')
        self.assertEqual(response.status_code, 200)

        json_response = response.json()

        # test geojson format
        self.assertEqual(sorted(json_response.keys()),
                         DETAIL_TREK_GEOJSON_STRUCTURE)
        self.assertEqual(sorted(json_response.get('properties').keys()),
                         TREK_DETAIL_PROPERTIES_GEOJSON_STRUCTURE)
        self.assertIsNone(json_response.get('properties').get('parking_location'))
Beispiel #6
0
 def test_geojson(self):
     trek = trekking_factories.TrekFactory()
     desk = InformationDeskFactory.create()
     InformationDeskFactory.create()
     trek.information_desks.add(desk)
     trek.save()
     response = self.client.get(
         '/api/en/treks/{}/information_desks.geojson'.format(trek.pk))
     self.assertEqual(response.status_code, 200)
     result = response.json()
     self.assertEqual(len(result['features']), 1)
     self.assertEqual(result['features'][0]['type'], 'Feature')
     self.assertEqual(result['features'][0]['geometry']['type'], 'Point')
     self.assertEqual(result['features'][0]['properties']['name'],
                      desk.name)
    def setUpTestData(cls):
        cls.nb_treks = 1

        cls.treks = trek_factory.TrekWithPublishedPOIsFactory.create_batch(
            cls.nb_treks, name_fr='Coucou', description_fr="Sisi",
            description_teaser_fr="mini", published_fr=True,
            points_reference=MultiPoint([Point(0, 0), Point(1, 1)], srid=settings.API_SRID),
            parking_location=Point(0, 0, srid=settings.API_SRID))
        cls.trek = cls.treks[0]
        cls.trek_parent = trek_factory.TrekFactory(name_fr='Parent', description_fr="Parent_1",
                                                   description_teaser_fr="Parent_1", published_fr=True)
        cls.trek_child_published = trek_factory.TrekFactory(name_fr='Child_published',
                                                            description_fr="Child_published_1",
                                                            description_teaser_fr="Child_published_1",
                                                            published_fr=True)
        cls.trek_child_not_published = trek_factory.TrekFactory(name_fr='Child_not_published',
                                                                description_fr="Child_not_published_1",
                                                                description_teaser_fr="Child_not_published_1",
                                                                published_fr=False, published_en=True, published=False)
        trek_models.OrderedTrekChild(parent=cls.trek_parent, child=cls.trek_child_published, order=1).save()
        trek_models.OrderedTrekChild(parent=cls.trek_parent, child=cls.trek_child_not_published, order=0).save()

        cls.trek_parent_not_published = trek_factory.TrekFactory(name_fr='Parent_not_published',
                                                                 description_fr="Parent_not_published_1",
                                                                 description_teaser_fr="Parent_not_published_1",
                                                                 published_fr=False, published_en=True, published=False)
        cls.trek_child_published_2 = trek_factory.TrekFactory(name_fr='Child_published_2',
                                                              description_fr="Child_published_2",
                                                              description_teaser_fr="Child_published_2",
                                                              published_fr=True)
        cls.trek_child_not_published_2 = trek_factory.TrekFactory(name_fr='Child_not_published_2',
                                                                  description_fr="Child_not_published_2",
                                                                  description_teaser_fr="Child_not_published_2",
                                                                  published_fr=False, published_en=True,
                                                                  published=False)
        trek_models.OrderedTrekChild(parent=cls.trek_parent_not_published,
                                     child=cls.trek_child_published_2, order=2).save()
        trek_models.OrderedTrekChild(parent=cls.trek_parent_not_published,
                                     child=cls.trek_child_not_published_2, order=1).save()

        cls.touristic_content = tourism_factory.TouristicContentFactory(geom=cls.treks[0].published_pois.first().geom,
                                                                        name_fr='Coucou_Content', description_fr="Sisi",
                                                                        description_teaser_fr="mini", published_fr=True)

        cls.touristic_event = tourism_factory.TouristicEventFactory(geom=cls.treks[0].published_pois.first().geom,
                                                                    name_fr='Coucou_Event', description_fr="Sisi_Event",
                                                                    description_teaser_fr="mini", published_fr=True)
        cls.district = zoning_factory.DistrictFactory(geom=MultiPolygon(Polygon.from_bbox(cls.treks[0].geom.extent)))
        bigger_extent = (cls.treks[0].geom.extent[0] - 1, cls.treks[0].geom.extent[1] - 1,
                         cls.treks[0].geom.extent[2] + 1, cls.treks[0].geom.extent[3] + 1)
        cls.city = zoning_factory.CityFactory(geom=MultiPolygon(Polygon.from_bbox(bigger_extent)))