Esempio n. 1
0
    def setup_class(cls):
        if not tests.is_datastore_supported():
            raise nose.SkipTest("Datastore not supported")
        p.load('datastore')
        ctd.CreateTestData.create()
        cls.sysadmin_user = model.User.get('testsysadmin')
        cls.normal_user = model.User.get('annafan')
        set_url_type(
            model.Package.get('annakarenina').resources, cls.sysadmin_user)
        resource = model.Package.get('annakarenina').resources[0]
        cls.data = {
            'resource_id': resource.id,
            'fields': [{'id': u'b\xfck', 'type': 'text'},
                       {'id': 'author', 'type': 'text'},
                       {'id': 'nested', 'type': 'json'},
                       {'id': 'characters', 'type': 'text[]'},
                       {'id': 'published'}],
            'primary_key': u'b\xfck',
            'records': [{u'b\xfck': 'annakarenina', 'author': 'tolstoy',
                        'published': '2005-03-01', 'nested': ['b', {'moo': 'moo'}]},
                        {u'b\xfck': 'warandpeace', 'author': 'tolstoy',
                        'nested': {'a':'b'}}
                       ]
            }
        postparams = '%s=1' % json.dumps(cls.data)
        auth = {'Authorization': str(cls.sysadmin_user.apikey)}
        res = cls.app.post('/api/action/datastore_create', params=postparams,
                           extra_environ=auth)
        res_dict = json.loads(res.body)
        assert res_dict['success'] is True

        engine = db._get_engine(
            {'connection_url': pylons.config['ckan.datastore.write_url']})
        cls.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
Esempio n. 2
0
    def setup_class(cls):
        if not tests.is_datastore_supported():
            raise nose.SkipTest("Datastore not supported")
        cls.app = helpers._get_test_app()
        p.load('datastore')
        ctd.CreateTestData.create()
        cls.sysadmin_user = model.User.get('testsysadmin')
        cls.normal_user = model.User.get('annafan')
        resource = model.Package.get('annakarenina').resources[0]
        cls.data = {
            'resource_id': resource.id,
            'aliases': u'b\xfck2',
            'fields': [{'id': 'book', 'type': 'text'},
                       {'id': 'author', 'type': 'text'},
                       {'id': 'rating with %', 'type': 'text'}],
            'records': [{'book': 'annakarenina', 'author': 'tolstoy',
                         'rating with %': '90%'},
                        {'book': 'warandpeace', 'author': 'tolstoy',
                         'rating with %': '42%'}]
        }

        engine = db.get_write_engine()

        cls.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
        set_url_type(
            model.Package.get('annakarenina').resources, cls.sysadmin_user)
Esempio n. 3
0
    def setup_class(cls):
        if not tests.is_datastore_supported():
            raise nose.SkipTest("Datastore not supported")
        p.load('datastore')
        ctd.CreateTestData.create()
        cls.sysadmin_user = model.User.get('testsysadmin')
        cls.normal_user = model.User.get('annafan')
        resource = model.Package.get('annakarenina').resources[0]
        cls.data = {
            'resource_id': resource.id,
            'aliases': u'b\xfck2',
            'fields': [{'id': 'book', 'type': 'text'},
                       {'id': 'author', 'type': 'text'},
                       {'id': 'rating with %', 'type': 'text'}],
            'records': [{'book': 'annakarenina', 'author': 'tolstoy',
                         'rating with %': '90%'},
                        {'book': 'warandpeace', 'author': 'tolstoy',
                         'rating with %': '42%'}]
        }

        engine = db._get_engine(
            {'connection_url': pylons.config['ckan.datastore.write_url']})
        cls.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
        set_url_type(
            model.Package.get('annakarenina').resources, cls.sysadmin_user)
Esempio n. 4
0
    def setup_class(cls):
        cls.app = helpers._get_test_app()
        super(TestDatastoreInsertLegacyTests, cls).setup_class()
        ctd.CreateTestData.create()
        cls.sysadmin_user = model.User.get('testsysadmin')
        cls.normal_user = model.User.get('annafan')
        set_url_type(
            model.Package.get('annakarenina').resources, cls.sysadmin_user)
        resource = model.Package.get('annakarenina').resources[0]
        cls.data = {
            'resource_id': resource.id,
            'fields': [{'id': u'b\xfck', 'type': 'text'},
                       {'id': 'author', 'type': 'text'},
                       {'id': 'nested', 'type': 'json'},
                       {'id': 'characters', 'type': 'text[]'},
                       {'id': 'published'}],
            'primary_key': u'b\xfck',
            'records': [{u'b\xfck': 'annakarenina', 'author': 'tolstoy',
                        'published': '2005-03-01', 'nested': ['b', {'moo': 'moo'}]},
                        {u'b\xfck': 'warandpeace', 'author': 'tolstoy',
                        'nested': {'a':'b'}}
                       ]
            }
        postparams = '%s=1' % json.dumps(cls.data)
        auth = {'Authorization': str(cls.sysadmin_user.apikey)}
        res = cls.app.post('/api/action/datastore_create', params=postparams,
                           extra_environ=auth)
        res_dict = json.loads(res.body)
        assert res_dict['success'] is True

        engine = db.get_write_engine()
        cls.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
Esempio n. 5
0
 def setup_class(cls):
     cls.app = _get_test_app()
     super(TestDatastoreCreate, cls).setup_class()
     ctd.CreateTestData.create()
     cls.sysadmin_user = model.User.get('testsysadmin')
     cls.normal_user = model.User.get('annafan')
     engine = db.get_write_engine()
     cls.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
     set_url_type(
         model.Package.get('annakarenina').resources, cls.sysadmin_user)
 def create_test_data(self, clean_datastore, test_request_context):
     ctd.CreateTestData.create()
     self.sysadmin_user = model.User.get("testsysadmin")
     self.normal_user = model.User.get("annafan")
     engine = db.get_write_engine()
     self.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
     with test_request_context():
         set_url_type(
             model.Package.get("annakarenina").resources, self.sysadmin_user
         )
Esempio n. 7
0
File: test.py Progetto: tino097/ckan
 def initial_data(self, clean_db):
     ctd.CreateTestData.create()
     self.sysadmin_user = factories.Sysadmin()
     self.sysadmin_token = factories.APIToken(
         user=self.sysadmin_user["id"])["token"]
     self.normal_user = factories.User()
     self.normal_user_token = factories.APIToken(
         user=self.normal_user["id"])["token"]
     set_url_type(
         model.Package.get("annakarenina").resources, self.sysadmin_user)
Esempio n. 8
0
 def initial_data(self, clean_db, clean_index):
     if not tests.is_datastore_supported():
         pytest.skip("Datastore not supported")
     ctd.CreateTestData.create()
     self.sysadmin_user = model.User.get("testsysadmin")
     self.normal_user = model.User.get("annafan")
     engine = db.get_write_engine()
     self.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
     set_url_type(
         model.Package.get("annakarenina").resources, self.sysadmin_user)
Esempio n. 9
0
 def setup_class(cls):
     cls.app = _get_test_app()
     super(TestDatastoreCreate, cls).setup_class()
     ctd.CreateTestData.create()
     cls.sysadmin_user = model.User.get('testsysadmin')
     cls.normal_user = model.User.get('annafan')
     engine = db.get_write_engine()
     cls.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
     set_url_type(
         model.Package.get('annakarenina').resources, cls.sysadmin_user)
Esempio n. 10
0
 def initial_data(self, clean_db, clean_index, test_request_context):
     ctd.CreateTestData.create()
     self.sysadmin_user = factories.Sysadmin()
     self.sysadmin_token = factories.APIToken(user=self.sysadmin_user)
     self.normal_user = factories.User()
     self.normal_user_token = factories.APIToken(user=self.normal_user)
     engine = db.get_write_engine()
     self.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
     with test_request_context():
         set_url_type(
             model.Package.get("annakarenina").resources, self.sysadmin_user
         )
Esempio n. 11
0
 def initial_data(self, clean_db, clean_index, test_request_context, app):
     ctd.CreateTestData.create()
     self.sysadmin_user = model.User.get("testsysadmin")
     self.normal_user = model.User.get("annafan")
     engine = db.get_write_engine()
     self.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
     with test_request_context():
         set_url_type(
             model.Package.get("annakarenina").resources, self.sysadmin_user
         )
     url = url_for('sitemap.view')
     self.cont = app.get(url)
Esempio n. 12
0
    def setup_class(cls):

        wsgiapp = middleware.make_app(config["global_conf"], **config)
        cls.app = paste.fixture.TestApp(wsgiapp)
        if not tests.is_datastore_supported():
            raise nose.SkipTest("Datastore not supported")
        p.load("datastore")
        ctd.CreateTestData.create()
        cls.sysadmin_user = model.User.get("testsysadmin")
        cls.normal_user = model.User.get("annafan")
        engine = db._get_engine({"connection_url": pylons.config["ckan.datastore.write_url"]})
        cls.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
        set_url_type(model.Package.get("annakarenina").resources, cls.sysadmin_user)
Esempio n. 13
0
 def setup_class(cls):
     cls.app = helpers._get_test_app()
     if not tests.is_datastore_supported():
         raise nose.SkipTest("Datastore not supported")
     p.load('datastore')
     p.load('datapusher')
     ctd.CreateTestData.create()
     cls.sysadmin_user = model.User.get('testsysadmin')
     cls.normal_user = model.User.get('annafan')
     engine = db.get_write_engine()
     cls.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
     set_url_type(
         model.Package.get('annakarenina').resources, cls.sysadmin_user)
Esempio n. 14
0
 def setup_class(cls):
     cls.app = helpers._get_test_app()
     if not tests.is_datastore_supported():
         raise nose.SkipTest("Datastore not supported")
     p.load('datastore')
     p.load('datapusher')
     ctd.CreateTestData.create()
     cls.sysadmin_user = model.User.get('testsysadmin')
     cls.normal_user = model.User.get('annafan')
     engine = db.get_write_engine()
     cls.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
     set_url_type(
         model.Package.get('annakarenina').resources, cls.sysadmin_user)
Esempio n. 15
0
    def initial_data(self, clean_datastore, app, test_request_context):
        self.app = app
        ctd.CreateTestData.create()
        self.sysadmin_user = factories.Sysadmin()
        self.sysadmin_token = factories.APIToken(user=self.sysadmin_user["id"])
        self.sysadmin_token = self.sysadmin_token["token"]
        self.normal_user = factories.User()
        self.normal_user_token = factories.APIToken(
            user=self.normal_user["id"])
        self.normal_user_token = self.normal_user_token["token"]
        resource = model.Package.get("annakarenina").resources[0]
        self.data = {
            "resource_id":
            resource.id,
            "aliases":
            u"b\xfck2",
            "fields": [
                {
                    "id": "book",
                    "type": "text"
                },
                {
                    "id": "author",
                    "type": "text"
                },
                {
                    "id": "rating with %",
                    "type": "text"
                },
            ],
            "records": [
                {
                    "book": "annakarenina",
                    "author": "tolstoy",
                    "rating with %": "90%",
                },
                {
                    "book": "warandpeace",
                    "author": "tolstoy",
                    "rating with %": "42%",
                },
            ],
        }

        engine = db.get_write_engine()

        self.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
        with test_request_context():
            set_url_type(
                model.Package.get("annakarenina").resources,
                self.sysadmin_user)
Esempio n. 16
0
 def setup_class(cls):
     wsgiapp = middleware.make_app(config['global_conf'], **config)
     cls.app = paste.fixture.TestApp(wsgiapp)
     if not tests.is_datastore_supported():
         raise nose.SkipTest("Datastore not supported")
     p.load('datastore')
     p.load('datapusher')
     ctd.CreateTestData.create()
     cls.sysadmin_user = model.User.get('testsysadmin')
     cls.normal_user = model.User.get('annafan')
     engine = db.get_write_engine()
     cls.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
     set_url_type(
         model.Package.get('annakarenina').resources, cls.sysadmin_user)
Esempio n. 17
0
 def setup_class(cls):
     wsgiapp = middleware.make_app(config['global_conf'], **config)
     cls.app = paste.fixture.TestApp(wsgiapp)
     if not tests.is_datastore_supported():
         raise nose.SkipTest("Datastore not supported")
     p.load('datastore')
     p.load('datapusher')
     ctd.CreateTestData.create()
     cls.sysadmin_user = model.User.get('testsysadmin')
     cls.normal_user = model.User.get('annafan')
     engine = db.get_write_engine()
     cls.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
     set_url_type(
         model.Package.get('annakarenina').resources, cls.sysadmin_user)
Esempio n. 18
0
    def initial_data(self, clean_datastore, app):
        self.app = app
        ctd.CreateTestData.create()
        self.sysadmin_user = model.User.get("testsysadmin")
        self.normal_user = model.User.get("annafan")
        resource = model.Package.get("annakarenina").resources[0]
        self.data = {
            "resource_id":
            resource.id,
            "aliases":
            u"b\xfck2",
            "fields": [
                {
                    "id": "book",
                    "type": "text"
                },
                {
                    "id": "author",
                    "type": "text"
                },
                {
                    "id": "rating with %",
                    "type": "text"
                },
            ],
            "records": [
                {
                    "book": "annakarenina",
                    "author": "tolstoy",
                    "rating with %": "90%",
                },
                {
                    "book": "warandpeace",
                    "author": "tolstoy",
                    "rating with %": "42%",
                },
            ],
        }

        engine = db.get_write_engine()

        self.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
        set_url_type(
            model.Package.get("annakarenina").resources, self.sysadmin_user)
Esempio n. 19
0
    def setup_class(cls):

        wsgiapp = middleware.make_app(config['global_conf'], **config)
        cls.app = paste.fixture.TestApp(wsgiapp)
        if not tests.is_datastore_supported():
            raise nose.SkipTest("Datastore not supported")
        p.load('datastore')
        p.load('datapusher')
        ctd.CreateTestData.create()
        cls.sysadmin_user = model.User.get('testsysadmin')
        cls.normal_user = model.User.get('annafan')
        engine = db._get_engine(
            {'connection_url': pylons.config['ckan.datastore.write_url']})
        cls.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
        set_url_type(
            model.Package.get('annakarenina').resources, cls.sysadmin_user)

        # Httpretty crashes with Solr on Python 2.6,
        # skip the tests
        if (sys.version_info[0] == 2 and sys.version_info[1] == 6):
            raise nose.SkipTest()
Esempio n. 20
0
    def setup_class(cls):
        cls.app = helpers._get_test_app()
        super(TestDatastoreDelete, cls).setup_class()
        ctd.CreateTestData.create()
        cls.sysadmin_user = model.User.get('testsysadmin')
        cls.normal_user = model.User.get('annafan')
        resource = model.Package.get('annakarenina').resources[0]
        cls.data = {
            'resource_id':
            resource.id,
            'aliases':
            u'b\xfck2',
            'fields': [{
                'id': 'book',
                'type': 'text'
            }, {
                'id': 'author',
                'type': 'text'
            }, {
                'id': 'rating with %',
                'type': 'text'
            }],
            'records': [{
                'book': 'annakarenina',
                'author': 'tolstoy',
                'rating with %': '90%'
            }, {
                'book': 'warandpeace',
                'author': 'tolstoy',
                'rating with %': '42%'
            }]
        }

        engine = db.get_write_engine()

        cls.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
        set_url_type(
            model.Package.get('annakarenina').resources, cls.sysadmin_user)
    def setup_class(cls):
        '''Nose runs this method once to setup our test class.'''        
        # Make the Paste TestApp that we'll use to simulate HTTP requests to
        # CKAN.
        cls.app = paste.fixture.TestApp(pylons.test.pylonsapp)

        
        engine = sqlalchemy.create_engine(config['ckan.datastore.write_url'])
        cls.Session = orm.scoped_session(orm.sessionmaker(bind=engine))
        
        rebuild_all_dbs(cls.Session)
        p.load('datastore')
        p.load('realtime')
        
        ctd.CreateTestData.create()
        
        cls.sysadmin_user = model.User.get('testsysadmin')
        cls.normal_user = model.User.get('annafan')
        
        # make test resource writable through action api
        set_url_type(
            model.Package.get('annakarenina').resources, cls.sysadmin_user)
        
        cls._create_test_datastore()