def setUp(self): # creates user object in db self.user_password = PASSWORD self.user = create_superadminuser() self.new_password = "******" self.client = Client() self.client.login(username=self.user.username, password=self.user_password)
def setUpTestData(cls): return """ Initial creation of objects that are needed during the tests Returns: """ cls.user = create_superadminuser() cls.group = cls.user.groups.first() cls.test_wms = { "title": "Karte RP", "version": OGCServiceVersionEnum.V_1_1_1, "type": OGCServiceEnum.WMS, "uri": "http://geo5.service24.rlp.de/wms/karte_rp.fcgi?REQUEST=GetCapabilities&VERSION=1.1.1&SERVICE=WMS", } cls.test_wfs = { "title": "Nutzung", "version": OGCServiceVersionEnum.V_2_0_0, "type": OGCServiceEnum.WFS, "uri": "http://geodaten.naturschutz.rlp.de/kartendienste_naturschutz/mod_ogc/wfs_getmap.php?mapfile=group_gdide&REQUEST=GetCapabilities&VERSION=2.0.0&SERVICE=WFS", } # Since the registration of a service is performed async in an own process, the testing is pretty hard. # Therefore in here we won't perform the regular route testing, but rather run unit tests and check whether the # important components work as expected. # THIS MEANS WE CAN NOT CHECK PERMISSIONS IN HERE; SINCE WE TESTS ON THE LOWER LEVEL OF THE PROCESS ## Creating a new service model instance for wms service = service_helper.create_service(cls.test_wms["type"], cls.test_wms["version"], cls.test_wms["uri"], cls.user, cls.group) cls.service_wms = service ## Creating a new service model instance for wfs service = service_helper.create_service(cls.test_wfs["type"], cls.test_wfs["version"], cls.test_wfs["uri"], cls.user, cls.group) cls.service_wfs = service cls.cap_doc_wms = Document.objects.get( metadata=cls.service_wms.metadata, document_type=DocumentEnum.CAPABILITY.value, ) cls.cap_doc_wfs = Document.objects.get( metadata=cls.service_wfs.metadata, document_type=DocumentEnum.CAPABILITY.value, )
def setUp(self): # creates user object in db self.user_password = PASSWORD self.groups = create_guest_groups(how_much_groups=9) self.user = create_superadminuser(groups=self.groups) self.orgas = create_non_autogenerated_orgas(user=self.user, how_much_orgas=10) # Set individual organization for each group i = 0 for group in self.groups: group.organization = self.orgas[i] group.save() i = i + 1 # Public group needs an organization for this test public_orga = create_public_organization(user=self.user, )[0] public_group = MrMapGroup.objects.get(is_public_group=True) public_group.organization = public_orga public_group.save() self.user.organization = self.orgas[0] self.user.save() self.user.refresh_from_db() self.request_factory = RequestFactory() # Create an instance of a GET request. self.request = self.request_factory.get('/') # Recall that middleware are not supported. You can simulate a # logged-in user by setting request.user manually. self.request.user = self.user self.groups_url_path_name = STRUCTURE_INDEX_GROUP self.orgs_url_path_name = STRUCTURE_INDEX_ORGANIZATION
def setUp(self): # creates user object in db self.user_password = PASSWORD self.user = create_superadminuser() self.contact_data = get_contact_data() self.client = Client() self.client.login(username=self.user.username, password=self.user_password)
def setUp(self): self.user = create_superadminuser() self.wms_metadata = create_wms_service(group=self.user.groups.first(), how_much_sublayers=10, how_much_services=2) self.wfs_metadata = create_wfs_service(group=self.user.groups.first(), how_much_featuretypes=10, how_much_services=2)
def setUp(self): return self.user = create_superadminuser() self.client = Client() self.client.login(username=self.user.username, password=PASSWORD) self.wms_metadatas = create_wms_service(group=self.user.groups.first(), how_much_services=1)
def setUp(self): self.user = create_superadminuser() self.client = Client() self.client.login(username=self.user.username, password=PASSWORD) # workaround to login a user for WebsocketCommunicator since login is not implemented for this # ApplicationCommunicator (see: https://github.com/django/channels/issues/903#issuecomment-365448451) self.headers = [(b'origin', b'http://127.0.0.1:8000'), (b'cookie', self.client.cookies.output(header='', sep='; ').encode())]
def setUp(self): # creates user object in db self.user_password = PASSWORD self.user = create_superadminuser() self.client = Client() self.client.login(username=self.user.username, password=self.user_password) create_wms_service(group=self.user.groups.first(), how_much_services=10) self.service_md = Metadata.objects.filter( metadata_type=MetadataEnum.SERVICE.value ).first()
def setUp(self): # requires services self.user = create_superadminuser() self.client = Client() self.client.login(username=self.user.username, password=PASSWORD) create_wms_service(group=self.user.groups.first(), how_much_services=10) self.api_catalogue_uri = reverse("api:catalogue-list") # Get some fragment from a metadata title as value for parameter q self.q_param = Metadata.objects.all().first().title self.q_param = self.q_param[int(len(self.q_param) / 2):-1]
def setUp(self): self.user = create_superadminuser() self.client = Client() self.client.login(username=self.user.username, password=PASSWORD) self.request_factory = RequestFactory() # Create a bunch of random keywords create_keywords(20) create_categories(10) self.categories = Category.objects.all() self.keywords = Keyword.objects.all()
def setUp(self): self.user = create_superadminuser() self.client = Client() self.client.login(username=self.user.username, password=PASSWORD) create_wms_service(group=self.user.groups.first(), how_much_services=10) # Make sure services are activated services = Service.objects.all() for service in services: activate_service(service, True) self.test_id = services.first().metadata.identifier
def setUp(self): self.user = create_superadminuser() self.group = self.user.groups.first() self.metadata = create_wms_service(self.group, how_much_services=10)[0] # Declare timeout span self.timeout_delta = timezone.timedelta(seconds=10) # For new service testing create_non_autogenerated_orgas(self.user, 3) self.org = Organization.objects.all().first() # For securing service create_operation(OGCOperationEnum.GET_MAP.value) self.operation = RequestOperation.objects.all().first()
def test_removing_of_updatecandidates(self): older_than = 10 user = create_superadminuser() organizations = create_non_autogenerated_orgas(user=user) wms_metadatas = create_wms_service(group=user.groups.first(), contact=organizations[0], how_much_services=10) wfs_metadatas = create_wfs_service(group=user.groups.first(), contact=organizations[0], how_much_services=10) for wms_metadata in wms_metadatas: update_candidate_metadata = create_wms_service( group=user.groups.first(), contact=organizations[0], how_much_services=1, is_update_candidate_for=wms_metadata.service, user=user) update_candidate_metadata[ 0].service.last_modified = timezone.localtime( ) - timezone.timedelta(days=older_than, ) update_candidate_metadata[0].service.save( update_last_modified=False) for wfs_metadata in wfs_metadatas: update_candidate_metadata = create_wfs_service( group=user.groups.first(), contact=organizations[0], how_much_services=1, is_update_candidate_for=wfs_metadata.service, user=user) update_candidate_metadata[ 0].service.last_modified = timezone.localtime( ) - timezone.timedelta(days=older_than) update_candidate_metadata[0].service.save( update_last_modified=False) out = StringIO() call_command('rm_updatecandidates', stdout=out, ot=older_than) self.assertIn( 'Deleted 20 objects older than {} days'.format(older_than), out.getvalue()) services_count = Service.objects.filter(is_root=True).count() self.assertEqual(services_count, 20)
def setUp(self): self.default_user = create_testuser() self.user = create_superadminuser() self.user.organization = create_non_autogenerated_orgas(user=self.user, how_much_orgas=1)[0] self.user.save() self.client = Client() self.client.login(username=self.user.username, password=PASSWORD) self.request_factory = RequestFactory() self.wms_services = create_wms_service( group=self.user.groups.first(), how_much_services=1 ) # Setup for log proxy test self.metadata = Metadata.objects.all().first() self.metadata.use_proxy_uri = True self.metadata.log_proxy_access = True self.metadata.save() self.metadata.refresh_from_db()
def test_proxy_log_table_sorting(self): """ Run test to check the sorting functionality of the ProxyLogTable Return: """ groups = create_guest_groups(how_much_groups=9) user = create_superadminuser(groups=groups) request_factory = RequestFactory() # Create an instance of a GET request. request = request_factory.get('/') # Recall that middleware are not supported. You can simulate a # logged-in user by setting request.user manually. request.user = user create_proxy_logs(user, 10) # Get all logs, make sure the initial set is ordered by random logs = ProxyLog.objects.all().order_by("?") sorting_param = "sort" table = ProxyLogTable(data=logs, order_by_field=sorting_param, request=request) # Check table sorting sorting_implementation_failed, sorting_results = check_table_sorting( table=table, url_path_name=SERVICE_INDEX_LOG, ) for key, val in sorting_results.items(): self.assertTrue( val, msg="ProxyLog table sorting not correct for column '{}'". format(key)) for key, val in sorting_implementation_failed.items(): self.assertFalse( val, msg="ProxyLog table sorting leads to error for column '{}'". format(key))
def setUp(self): # requires services self.user = create_superadminuser() self.client = Client() self.client.login(username=self.user.username, password=PASSWORD) create_wms_service(group=self.user.groups.first(), how_much_services=10) # Default elements of json response self.default_response_elements = [ "count", "next", "previous", "results", ] # 'name-list' | 'name-detail' is the naming convention of DRF # The values declare what we expect from a simple request for this API without further parameters self.available_apis = { "catalogue-list": Metadata.objects.filter(is_active=True), "metadata-list": Metadata.objects.filter(is_active=True), "suggestion-list": Keyword.objects.all()[:SUGGESTIONS_MAX_RESULTS], "category-list": Category.objects.all(), "organization-list": Organization.objects.filter(), "service-list": Service.objects.filter(parent_service=None, metadata__is_active=True), "layer-list": Layer.objects.filter(metadata__is_active=True), "group-list": MrMapGroup.objects.filter(), }
def setUp(self): self.user_password = PASSWORD self.active_user = create_superadminuser() client = Client() client.login(username=self.active_user.username, password=self.user_password)
def setUp(self): self.user_password = PASSWORD self.user = create_superadminuser() self.wms_services = create_wms_service(group=self.user.groups.first(), how_much_services=1) self.monitoring_run = create_monitoring_run()[0]
def setUp(self): self.user = create_superadminuser() self.root_metadata = create_wms_service(group=self.user.groups.first(), how_much_sublayers=100, how_much_services=1)[0]
def setUp(self): self.contact_data = get_contact_data() # creates user object in db self.user_password = PASSWORD self.user = create_superadminuser()
def setUp(self): # creates user object in db self.user_password = PASSWORD self.user = create_superadminuser()