Ejemplo n.º 1
0
class UploadLayersTest(TestCase):
    def setUp(self):
        self.user = "******"
        self.passwd = "admin"
        # self.anonymous_user = get_anonymous_user()
        self.publisher = SceneAnalyticPublisher(scenepath="test_coveragestore",
                                                date=datetime.date(1970, 1, 1))
        self.publisher.stats_dict = {
            "filename": "test_coveragestore.tiff",
            "clouds": 1,
            "desert": 2,
            "vegetation": 3,
            "water": 4,
            "keywords": ["test1", "test2"],
        }
        self.admin_user = Profile(username="******", password="******")
        self.admin_user.save()

    def test_luigi_upload_layer(self):
        self.publisher.upload_layer()
        layer = Layer.objects.get(name="test_coveragestore")
        res = self.client.get("/layers/geonode:test_coveragestore")
        self.assertEqual(res.status_code, 200)
        self.assertEqual(layer.date.date(), self.publisher.date)
        self.assertEqual([kw.name for kw in layer.keywords.all()],
                         self.publisher.stats_dict["keywords"])

    def test_upload_metadata(self):
        self.publisher.stats_model = SVMClassifierStats
        self.publisher.upload_layer()
        self.publisher.upload_metadata()
        stats = SVMClassifierStats.objects.all()
        self.assertEqual(len(stats), 1)
        self.assertEqual(stats[0].layer, self.publisher.layer)
        self.assertEqual(stats[0].clouds, 1)
        self.assertEqual(stats[0].desert, 2)
        self.assertEqual(stats[0].vegetation, 3)
        self.assertEqual(stats[0].water, 4)

    def test_upload_sld(self):
        with mock.patch("geonode.geoserver.signals") as m:
            cat = m.gs_catalog
            self.publisher.sld = os.path.join(
                os.path.dirname(geonode.wheel.publishers.__file__),
                "svmclassifier.sld")
            cat.get_style.return_value = None
            self.publisher.upload_sld_to_gs()
            self.assertTrue(
                cat.create_style.called_with(self.publisher.sld,
                                             "svmclassifier"))
            cat.get_style.return_value = 1
            self.publisher.upload_sld_to_gs()
            self.assertFalse(cat.create_style.called)

    def tearDown(self):
        layers = Layer.objects.all()
        for layer in layers:
            layer.delete()  # we don't want to leave layer in geoserver
Ejemplo n.º 2
0
 def setUp(self):
     self.user = "******"
     self.passwd = "admin"
     # self.anonymous_user = get_anonymous_user()
     self.publisher = SceneAnalyticPublisher(scenepath="test_coveragestore",
                                             date=datetime.date(1970, 1, 1))
     self.publisher.stats_dict = {
         "filename": "test_coveragestore.tiff",
         "clouds": 1,
         "desert": 2,
         "vegetation": 3,
         "water": 4,
         "keywords": ["test1", "test2"],
     }
     self.admin_user = Profile(username="******", password="******")
     self.admin_user.save()
Ejemplo n.º 3
0
    def test_regular_user(self, super_mock, mocked_profile):
        mock_bundle = MagicMock()
        request_mock = MagicMock()
        r_attr = {'user': Profile(username='******')}
        attrs = {'request': request_mock}
        request_mock.configure_mock(**r_attr)
        mock_bundle.configure_mock(**attrs)

        groups = GroupAuthorization().read_list(['not_empty_but_fake'],
                                                mock_bundle)
        self.assertEqual(2, groups.count())
Ejemplo n.º 4
0
    def test_super_admin_user(self, super_mock):
        mock_bundle = MagicMock()
        request_mock = MagicMock()
        r_attr = {
            'user': Profile(username='******', is_staff=True, is_superuser=True)
        }
        attrs = {'request': request_mock}
        request_mock.configure_mock(**r_attr)
        mock_bundle.configure_mock(**attrs)

        groups = GroupProfileAuthorization().read_list([], mock_bundle)
        self.assertEqual(GroupProfile.objects.all().count(), groups.count())
Ejemplo n.º 5
0
 def test_profile_edit_no_profile_exception(self):
     factory = RequestFactory()
     created = User.objects.create_user(
         username='******',
         email='*****@*****.**',
         password='******')
     self.assertIsNotNone(created)
     # Raise the No Profile exception when getting the profile
     request = factory.get(
         reverse('edit_profile', kwargs={'username': None}))
     created.profile = PropertyMock(return_value=Profile.DoesNotExist())
     request.user = created
     response = profile_edit(request, None)
Ejemplo n.º 6
0
def app_create(request, is_service=False):
    if request.method == "POST":
        form = AppForm(request.POST, request.FILES, is_service=is_service)
        if form.is_valid():
            app = form.save(commit=False)
            app.save()
            form.save_m2m()
            app.join(request.user, role="manager")
            
            app_user = Profile(username=app.slug[:25], profile='application', organization=app.title)
            app_user.save()
            app.join(app_user, role="alter_ego")

            return HttpResponseRedirect(
                reverse("app_detail", args=[app.slug])
            )
    else:
        form = AppForm(is_service=is_service)

    return render_to_response("apps/app_create.html", {
        "form": form,
    }, context_instance=RequestContext(request,{'is_service':is_service}))
Ejemplo n.º 7
0
def create_users(n_users):
    """ Create n users in the database """
    for i in range(0, n_users):
        user = Profile()
        user.username = '******' % i
        user.save()
Ejemplo n.º 8
0
def create_users(n_users):
    """ Create n users in the database """
    for i in range(0, n_users):
        user = Profile()
        user.username = '******' % i
        user.save()