Пример #1
0
class ISegmentEffort(IItem):

    metadata("id_strava")
    index_field("id_strava", type="text")
    id_strava = schema.TextLine(title="Strava id")

    metadata("name")
    index_field("name", type="text")
    name = schema.TextLine(title="Name")

    metadata("activity")
    index_field("activity", type="text")
    activity = schema.TextLine(title="Activity")

    metadata("segment")
    index_field("segment", type="text")
    segment = schema.TextLine(title="Segment")

    metadata("elapsed_time")
    index_field("elapsed_time", type="int")
    elapsed_time = schema.Int(title="Elapsed time")

    metadata("moving_time")
    index_field("moving_time", type="int")
    moving_time = schema.Int(title="Moving time")

    metadata("start_date")
    index_field("start_date", type="date")
    start_date = schema.Datetime(title="Start date")

    metadata("start_date_local")
    index_field("start_date_local", type="date")
    start_date_local = schema.Datetime(title="Start date local")

    metadata("distance")
    index_field("distance", type="float")
    distance = schema.Float(title="Distance")

    start_index = schema.Float(title="Start index")
    end_index = schema.Float(title="End index")

    metadata("average_cadence")
    index_field("average_cadence", type="float")
    average_cadence = schema.Float(title="Average cadence")

    metadata("average_heartrate")
    index_field("average_heartrate", type="float")
    average_heartrate = schema.Float(title="Average heartrate")

    metadata("max_heartrate")
    index_field("max_heartrate", type="int")
    max_heartrate = schema.Int(title="Max heartrate")

    metadata("device_watts")
    index_field("device_watts", type="boolean")
    device_watts = schema.Bool(title="Device watts")

    metadata("average_watts")
    index_field("average_watts", type="float")
    average_watts = schema.Float(title="Average watts")
Пример #2
0
class IDublinCore(Interface):
    index_field('creators', type='keyword')
    index_field('tags', type='keyword')
    index_field('contributors', type='keyword')

    title = schema.TextLine(
        title=u'Title',
        description=u"The first unqualified Dublin Core 'Title' element value.",
        required=False)

    description = schema.Text(
        title=u'Description',
        description=u"The first unqualified Dublin Core 'Description' element value.",
        required=False)

    creation_date = schema.Datetime(
        title=u'Creation Date',
        description=u"The date and time that an object is created. "
                    u"\nThis is normally set automatically.",
        required=False)

    modification_date = schema.Datetime(
        title=u'Modification Date',
        description=u"The date and time that the object was last modified in a\n"
                    u"meaningful way.",
        required=False)

    effective_date = schema.Datetime(
        title=u'Effective Date',
        description=u"The date and time that an object should be published. ",
        required=False)

    expiration_date = schema.Datetime(
        title=u'Expiration Date',
        description=u"The date and time that the object should become unpublished.",
        required=False)

    creators = schema.Tuple(
        title=u'Creators',
        description=u"The unqualified Dublin Core 'Creator' element values",
        value_type=schema.TextLine(),
        required=False)

    tags = schema.Tuple(
        title=u'Tags',
        description=u"The unqualified Dublin Core 'Tags' element values",
        value_type=schema.TextLine(),
        required=False)

    publisher = schema.Text(
        title=u'Publisher',
        description=u"The first unqualified Dublin Core 'Publisher' element value.",
        required=False)

    contributors = schema.Tuple(
        title=u'Contributors',
        description=u"The unqualified Dublin Core 'Contributor' element values",
        value_type=schema.TextLine(),
        required=False)
Пример #3
0
class IExample(IResource):

    metadata("categories")

    index_field("boolean_field", type="boolean")
    boolean_field = schema.Bool(required=False)

    index_field("categories", field_mapping=CATEGORIES_MAPPING)
    categories = schema.List(title="categories",
                             default=[],
                             value_type=schema.JSONField(title="term",
                                                         schema=TERM_SCHEMA))

    textline_field = schema.TextLine(title="kk",
                                     widget="testing",
                                     required=False)
    text_field = schema.Text(required=False)
    dict_value = schema.Dict(key_type=schema.TextLine(),
                             value_type=schema.TextLine(),
                             required=False)
    datetime = schema.Datetime(required=False)
    jsonfield_value = schema.JSONField(schema={"type": "array"},
                                       required=False)
    write_permission(write_protected="example.MyPermission")
    write_protected = schema.TextLine(title="Write protected field",
                                      required=False)

    default_factory_test = schema.Text(defaultFactory=lambda: "foobar")

    context_default_factory_test = schema.Text(
        defaultFactory=ContextDefaultFactory())
Пример #4
0
class IExample(IResource):

    metadata('categories')

    index_field('boolean_field', type='boolean')
    boolean_field = schema.Bool(required=False)

    index_field('categories', field_mapping=CATEGORIES_MAPPING)
    categories = schema.List(title='categories',
                             default=[],
                             value_type=schema.JSONField(title='term',
                                                         schema=TERM_SCHEMA))

    textline_field = schema.TextLine(title='kk',
                                     widget='testing',
                                     required=False)
    text_field = schema.Text(required=False)
    dict_value = schema.Dict(key_type=schema.TextLine(),
                             value_type=schema.TextLine(),
                             required=False)
    datetime = schema.Datetime(required=False)

    write_permission(write_protected='example.MyPermission')
    write_protected = schema.TextLine(
        title='Write protected field',
        required=False,
    )

    default_factory_test = schema.Text(defaultFactory=lambda: 'foobar')

    context_default_factory_test = schema.Text(
        defaultFactory=ContextDefaultFactory())
Пример #5
0
def test_all(dummy_request):
    mapping = [
        (schema.Object(schema=IResource),
         serialize_schema_field.DefaultSchemaFieldSerializer),
        (schema.Text(),
         serialize_schema_field.DefaultTextSchemaFieldSerializer),
        (schema.TextLine(),
         serialize_schema_field.DefaultTextLineSchemaFieldSerializer),
        (schema.Float(),
         serialize_schema_field.DefaultFloatSchemaFieldSerializer),
        (schema.Int(), serialize_schema_field.DefaultIntSchemaFieldSerializer),
        (schema.Bool(),
         serialize_schema_field.DefaultBoolSchemaFieldSerializer),
        (schema.List(),
         serialize_schema_field.DefaultCollectionSchemaFieldSerializer),
        (schema.Choice(values=('one', 'two')),
         serialize_schema_field.DefaultChoiceSchemaFieldSerializer),
        (schema.Object(schema=IResource),
         serialize_schema_field.DefaultObjectSchemaFieldSerializer),
        (RichText(),
         serialize_schema_field.DefaultRichTextSchemaFieldSerializer),
        (schema.Date(),
         serialize_schema_field.DefaultDateSchemaFieldSerializer),
        (schema.Time(),
         serialize_schema_field.DefaultTimeSchemaFieldSerializer),
        (schema.Dict(),
         serialize_schema_field.DefaultDictSchemaFieldSerializer),
        (schema.Datetime(),
         serialize_schema_field.DefaultDateTimeSchemaFieldSerializer),
    ]
    container = Container()
    for field, klass in mapping:
        adapter = getMultiAdapter((field, container, dummy_request),
                                  interface=ISchemaFieldSerializeToJson)
        assert isinstance(adapter, klass)
Пример #6
0
class ILap(IItem):
    id_strava = schema.TextLine(title="Strava id")
    name = schema.TextLine(title="Name")
    elapsed_time = schema.Int(title="Elapsed time")
    moving_time = schema.Int(title="Moving time")
    start_date = schema.Datetime(title="Start date")
    start_date_local = schema.Datetime(title="Start date local")
    distance = schema.Float(title="Distance")

    start_index = schema.Float(title="Start index")
    end_index = schema.Float(title="End index")
    total_elevation_gain = schema.Int(title="Total elevation gain")
    average_speed = schema.Float(title="Averge speed")
    max_speed = schema.Float(title="Max speed")
    average_cadence = schema.Float(title="Average cadence")
    average_watts = schema.Float(title="Average watts")
    device_watts = schema.Bool(title="Device watts")
Пример #7
0
class IDynamicType(Interface):
    '''
    Used to dynamicly bind data to validate
    new values against
    '''
    date = schema.Datetime(required=False)
    text = schema.Text(required=False)
    integer = schema.Int(required=False)
    float = schema.Float(required=False)
    boolean = schema.Bool(required=False)
    keyword = schema.Text(required=False)
Пример #8
0
class ITestSchema(Interface):

    text = schema.TextLine(required=False)
    integer = schema.Int(required=False)
    floating = schema.Float(required=False)
    list_of_text = schema.List(value_type=schema.TextLine(), required=False)
    tuple_of_text = schema.Tuple(value_type=schema.TextLine(), required=False)
    set_of_text = schema.Set(value_type=schema.TextLine(), required=False)
    frozenset_of_text = schema.FrozenSet(value_type=schema.TextLine(),
                                         required=False)
    dict_value = schema.Dict(key_type=schema.TextLine(),
                             value_type=schema.TextLine(),
                             required=False)
    datetime = schema.Datetime(required=False)
    date = schema.Date(required=False)
    time = schema.Time(required=False)

    patch_list = fields.PatchField(
        schema.List(value_type=schema.Dict(key_type=schema.Text(),
                                           value_type=schema.Text()),
                    required=False))
    patch_dict = fields.PatchField(schema.Dict(key_type=schema.Text(),
                                               value_type=schema.Text()),
                                   required=False)

    bucket_list = fields.BucketListField(bucket_len=10,
                                         required=False,
                                         value_type=schema.Dict(
                                             key_type=schema.Text(),
                                             value_type=schema.Text()))

    datetime_bucket_list = fields.BucketListField(bucket_len=10,
                                                  required=False,
                                                  value_type=schema.Datetime())

    nested_patch = fields.PatchField(
        schema.Dict(required=False,
                    key_type=schema.Text(),
                    value_type=fields.PatchField(
                        schema.List(value_type=schema.Object(
                            schema=INestFieldSchema)))))
Пример #9
0
class ITestSchema(Interface):

    text = schema.TextLine()
    integer = schema.Int()
    floating = schema.Float()
    list_of_text = schema.List(value_type=schema.TextLine())
    tuple_of_text = schema.Tuple(value_type=schema.TextLine())
    set_of_text = schema.Set(value_type=schema.TextLine())
    frozenset_of_text = schema.FrozenSet(value_type=schema.TextLine())
    dict_value = schema.Dict(key_type=schema.TextLine(),
                             value_type=schema.TextLine())
    datetime = schema.Datetime()
    date = schema.Date()
    time = schema.Time()
Пример #10
0
class IDynamicType(Interface):
    """
    Used to dynamicly bind data to validate
    new values against
    """

    date = schema.Datetime(required=False)
    text = schema.Text(required=False)
    integer = schema.Int(required=False)
    float = schema.Float(required=False)
    boolean = schema.Bool(required=False)
    keyword = schema.UnionField(
        schema.List(required=False, value_type=schema.Text()), schema.Text(required=False), required=False
    )
Пример #11
0
class IExample(IResource):

    metadata('categories')

    index('categories', type='nested')
    categories = schema.List(title='categories',
                             default=[],
                             value_type=schema.JSONField(title='term',
                                                         schema=TERM_SCHEMA))

    textline_field = schema.TextLine()
    text_field = schema.Text()
    dict_value = schema.Dict(key_type=schema.TextLine(),
                             value_type=schema.TextLine())
    datetime = schema.Datetime()
Пример #12
0
class IExample(IResource):

    metadata('categories')

    index_field('categories', type='nested')
    categories = schema.List(title='categories',
                             default=[],
                             value_type=schema.JSONField(title='term',
                                                         schema=TERM_SCHEMA))

    textline_field = schema.TextLine(title='kk',
                                     widget='testing',
                                     required=False)
    text_field = schema.Text(required=False)
    dict_value = schema.Dict(key_type=schema.TextLine(),
                             value_type=schema.TextLine(),
                             required=False)
    datetime = schema.Datetime(required=False)
Пример #13
0
class IURL(interfaces.IItem):

    # The URL we check
    url = schema.TextLine()

    # Timestamp of the last visit
    last_visited = schema.Datetime()

    # Last status returned: 200, 404, etc.
    status = schema.Int()

    # Reason of status: OK, Not Found, etc.
    reason = schema.TextLine()

    # Group (page) the url is from
    group = schema.TextLine()

    # Mode of URL (internal, external, ...)
    mode = schema.Int()
Пример #14
0
class ITestSchema(Interface):

    text = schema.TextLine(required=False)
    integer = schema.Int(required=False)
    floating = schema.Float(required=False)
    list_of_text = schema.List(value_type=schema.TextLine(), required=False)
    tuple_of_text = schema.Tuple(value_type=schema.TextLine(), required=False)
    set_of_text = schema.Set(value_type=schema.TextLine(), required=False)
    frozenset_of_text = schema.FrozenSet(value_type=schema.TextLine(),
                                         required=False)
    dict_value = schema.Dict(key_type=schema.TextLine(),
                             value_type=schema.TextLine(),
                             required=False)
    datetime = schema.Datetime(required=False)
    date = schema.Date(required=False)
    time = schema.Time(required=False)

    patch_list = fields.PatchField(
        schema.List(value_type=schema.Dict(key_type=schema.Text(),
                                           value_type=schema.Text()),
                    required=False))
    patch_list_int = fields.PatchField(
        schema.List(value_type=schema.Int(), required=False))
    patch_dict = fields.PatchField(schema.Dict(key_type=schema.Text(),
                                               value_type=schema.Text()),
                                   required=False)

    patch_int = fields.PatchField(schema.Int(default=22), required=False)

    patch_int_no_default = fields.PatchField(schema.Int(), required=False)

    bucket_list = fields.BucketListField(
        bucket_len=10,
        required=False,
        value_type=schema.Dict(key_type=schema.Text(),
                               value_type=schema.Text()),
    )

    datetime_bucket_list = fields.BucketListField(bucket_len=10,
                                                  required=False,
                                                  value_type=schema.Datetime())

    union_field = schema.UnionField(schema.Datetime(),
                                    schema.Int(),
                                    required=False)
    union_field_obj = schema.UnionField(schema.Object(IObjectA),
                                        schema.Object(schema=IObjectB),
                                        required=False)

    nested_patch = fields.PatchField(
        schema.Dict(
            required=False,
            key_type=schema.Text(),
            value_type=fields.PatchField(
                schema.List(value_type=schema.Object(
                    schema=INestFieldSchema))),
        ))

    dict_of_obj = schema.Dict(
        required=False,
        key_type=schema.Text(),
        value_type=schema.Object(schema=INestFieldSchema))

    patch_dict_of_obj = fields.PatchField(
        schema.Dict(required=False,
                    key_type=schema.Text(),
                    value_type=schema.Object(schema=INestFieldSchema)))

    patch_tuple = fields.PatchField(
        schema.Tuple(required=False,
                     value_type=schema.Text(schema=INestFieldSchema)))

    bucket_dict = fields.BucketDictField(bucket_len=10,
                                         required=False,
                                         key_type=schema.Text(),
                                         value_type=schema.Text())
Пример #15
0
class IDublinCore(Interface):
    index_field("creators", type="keyword")
    index_field("tags", type="keyword")
    index_field("contributors", type="keyword")

    title = schema.TextLine(
        title="Title", description="The first unqualified Dublin Core 'Title' element value."
    )

    description = schema.Text(
        title="Description", description="The first unqualified Dublin Core 'Description' element value."
    )

    creation_date = schema.Datetime(
        title="Creation Date",
        description="The date and time that an object is created. " "\nThis is normally set automatically.",
    )

    modification_date = schema.Datetime(
        title="Modification Date",
        description="The date and time that the object was last modified in a\n" "meaningful way.",
    )

    effective_date = schema.Datetime(
        title="Effective Date", description="The date and time that an object should be published. "
    )

    expiration_date = schema.Datetime(
        title="Expiration Date", description="The date and time that the object should become unpublished."
    )

    creators = schema.Tuple(
        title="Creators",
        description="The unqualified Dublin Core 'Creator' element values",
        value_type=schema.TextLine(),
        required=False,
        naive=True,
        max_length=1000,
    )

    tags = PatchField(
        schema.Tuple(
            title="Tags",
            description="The unqualified Dublin Core 'Tags' element values",
            value_type=schema.TextLine(),
            required=False,
            naive=True,
            max_length=10000,
        )
    )

    publisher = schema.Text(
        title="Publisher", description="The first unqualified Dublin Core 'Publisher' element value."
    )

    contributors = schema.Tuple(
        title="Contributors",
        description="The unqualified Dublin Core 'Contributor' element values",
        value_type=schema.TextLine(),
        required=False,
        naive=True,
        max_length=10000,
    )
Пример #16
0
class IActivity(IFolder):

    metadata("id_strava")
    index_field("id_strava", type="text")
    id_strava = schema.TextLine(title="Strava id")

    metadata("name")
    index_field("name", type="text")
    name = schema.TextLine(title="Name")

    metadata("distance")
    index_field("distance", type="float")
    distance = schema.Int(title="Distance")

    metadata("moving_time")
    index_field("moving_time", type="int")
    moving_time = schema.Int(title="Moving time")

    elapsed_time = schema.Int(title="Elapsed time")

    metadata("total_elevation_gain")
    index_field("total_elevation_gain", type="int")
    total_elevation_gain = schema.Int(title="Total elevation gain")

    metadata("type_activity")
    index_field("type_activity", type="text")
    type_activity = schema.TextLine(title="Type")  # Pass to vocabulary

    metadata("start_date")
    index_field("start_date", type="date")
    start_date = schema.Datetime(title="Start date")

    start_date_local = schema.Datetime(title="Start date local")
    timezone = schema.TextLine(title="Timezone")
    utc_offset = schema.Int(title="Utc offset")

    metadata("average_speed")
    index_field("average_speed", type="float")
    average_speed = schema.Float(title="Averge speed")

    metadata("max_speed")
    index_field("max_speed", type="float")
    max_speed = schema.Float(title="Max speed")

    metadata("average_cadence")
    index_field("average_cadence", type="float")
    average_cadence = schema.Float(title="Average cadence")

    metadata("average_watts")
    index_field("average_watts", type="float")
    average_watts = schema.Float(title="Average watts")

    metadata("weighted_average_watts")
    index_field("weighted_average_watts", type="float")
    weighted_average_watts = schema.Float(title="Weighted average watts")

    metadata("kilojoules")
    index_field("kilojoules", type="float")
    kilojoules = schema.Float(title="Kilojoules")

    metadata("device_watts")
    index_field("device_watts", type="boolean")
    device_watts = schema.Bool(title="Device watts")

    metadata("max_watts")
    index_field("max_watts", type="float")
    max_watts = schema.Float(title="Max watts")

    metadata("average_heartrate")
    index_field("average_heartrate", type="float")
    average_heartrate = schema.Float(title="Average heartrate")

    metadata("max_heartrate")
    index_field("max_heartrate", type="int")
    max_heartrate = schema.Int(title="Max heartrate")

    elev_high = schema.Float(title="Elev high")
    elev_low = schema.Float(title="Elev low")
    calories = schema.Float(title="Calories")