Пример #1
0
 def test_get_schema_invalid_type(self):
     app = ApplicationAPI(self.portal, '')
     type_ = 'Bingo Card'
     self.logout()
     try:
         app.get_schema(type_)
     except ValueError:
         # The expected result.
         pass
     except Exception, e:
         self.fail(e)
Пример #2
0
 def test_anonymous_get_schema(self):
     app = ApplicationAPI(self.portal, '')
     type_ = 'Event'
     self.logout()
     try:
         app.get_schema(type_)
     except Unauthorized:
         # The expected result.
         pass
     except Exception, e:
         self.fail(e)
Пример #3
0
 def test_get_schema_invalid_type(self):
     app = ApplicationAPI(self.portal, '')
     type_ = 'Bingo Card'
     self.logout()
     try:
         app.get_schema(type_)
     except ValueError:
         # The expected result.
         pass
     except Exception, e:
         self.fail(e)
Пример #4
0
 def test_anonymous_get_schema(self):
     app = ApplicationAPI(self.portal, '')
     type_ = 'Event'
     self.logout()
     try:
         app.get_schema(type_)
     except Unauthorized:
         # The expected result.
         pass
     except Exception, e:
         self.fail(e)
Пример #5
0
    def test_get_schema_with_path(self):
        resp = Response(FauxResponse())
        app = ApplicationAPI(self.portal, '')
        type_ = 'Link'
        self.login('test_user_1_')
        schema_data = app.get_schema(type_, "Members")
        resp.setBody(schema_data)
        schema_resp, method = xmlrpclib.loads(resp._body)
        self.logout()

        schema_results = schema_resp[0]
        expected_results = {'excludeFromNav': {'required': False, 'type': 'boolean'}, 'remoteUrl': {'required': True, 'type': 'string'}, 'description': {'required': False, 'type': 'text'}, 'contributors': {'required': False, 'type': 'lines'}, 'title': {'required': 1, 'type': 'string'}, 'language': {'required': False, 'type': 'string'}, 'rights': {'required': False, 'type': 'text'}, 'modification_date': {'required': False, 'type': 'datetime'}, 'location': {'required': False, 'type': 'string'}, 'creation_date': {'required': False, 'type': 'datetime'}, 'effectiveDate': {'required': False, 'type': 'datetime'}, 'relatedItems': {'required': False, 'type': 'reference'}, 'expirationDate': {'required': False, 'type': 'datetime'}, 'allowDiscussion': {'required': False, 'type': 'boolean'}, 'creators': {'required': False, 'type': 'lines'}, 'id': {'required': 0, 'type': 'string'}, 'subject': {'required': False, 'type': 'lines'}}

        self.failUnlessEqual(len(schema_results), len(expected_results))
        for attr, value in expected_results.iteritems():
            self.failUnlessEqual(value, schema_results[attr], "%s != %s for schema attribute '%s'" % (value, schema_results[attr], attr))
Пример #6
0
    def test_get_schema_with_path(self):
        resp = Response(FauxResponse())
        app = ApplicationAPI(self.portal, '')
        type_ = 'Link'
        self.login('test_user_1_')
        schema_data = app.get_schema(type_, "Members")
        resp.setBody(schema_data)
        schema_resp, method = xmlrpclib.loads(resp._body)
        self.logout()

        schema_results = schema_resp[0]
        expected_results = {
            'excludeFromNav': {
                'required': False,
                'type': 'boolean'
            },
            'remoteUrl': {
                'required': True,
                'type': 'string'
            },
            'description': {
                'required': False,
                'type': 'text'
            },
            'contributors': {
                'required': False,
                'type': 'lines'
            },
            'title': {
                'required': 1,
                'type': 'string'
            },
            'language': {
                'required': False,
                'type': 'string'
            },
            'rights': {
                'required': False,
                'type': 'text'
            },
            'modification_date': {
                'required': False,
                'type': 'datetime'
            },
            'location': {
                'required': False,
                'type': 'string'
            },
            'creation_date': {
                'required': False,
                'type': 'datetime'
            },
            'effectiveDate': {
                'required': False,
                'type': 'datetime'
            },
            'relatedItems': {
                'required': False,
                'type': 'reference'
            },
            'expirationDate': {
                'required': False,
                'type': 'datetime'
            },
            'allowDiscussion': {
                'required': False,
                'type': 'boolean'
            },
            'creators': {
                'required': False,
                'type': 'lines'
            },
            'id': {
                'required': 0,
                'type': 'string'
            },
            'subject': {
                'required': False,
                'type': 'lines'
            }
        }

        self.failUnlessEqual(len(schema_results), len(expected_results))
        for attr, value in expected_results.iteritems():
            self.failUnlessEqual(
                value, schema_results[attr],
                "%s != %s for schema attribute '%s'" %
                (value, schema_results[attr], attr))