예제 #1
0
class IndexedCollectionsTestModel(Model):

    test_id = columns.Integer(primary_key=True)
    attempt_id = columns.Integer(index=True)
    description = columns.Text()
    expected_result = columns.Integer()
    test_result = columns.Integer(index=True)
    test_list = columns.List(columns.Integer, index=True)
    test_set = columns.Set(columns.Integer, index=True)
    test_map = columns.Map(columns.Text, columns.Integer, index=True)

    test_list_no_index = columns.List(columns.Integer, index=False)
    test_set_no_index = columns.Set(columns.Integer, index=False)
    test_map_no_index = columns.Map(columns.Text, columns.Integer, index=False)
예제 #2
0
class SectionCours(Model):
    __table_name__ = 'section_cours'

    code_session = columns.Text(primary_key=True, partition_key=True)
    nrc = columns.Text(primary_key=True, partition_key=True)
    titre = columns.Text(required=True)
    sigle_matiere = columns.Text(required=True)
    numero_cours = columns.Text(required=True)

    date_debut = columns.Date()
    date_fin = columns.Date()

    inscriptions = columns.Set(value_type=columns.BigInt())
    enseignants = columns.Set(value_type=columns.BigInt())
예제 #3
0
class DocumentFromRecord(Model):
    """Query table for finding documents given records."""

    id = columns.Text(primary_key=True)
    uri = columns.Text(primary_key=True)
    mimetype = columns.Text()
    tags = columns.Set(columns.Text())
예제 #4
0
class SubjectOffering(Model):
    __keyspace__ = 'infs3208'

    name = columns.Text(primary_key=True)
    year = columns.Integer(primary_key=True)
    semester = columns.Integer(primary_key=True)
    classes = columns.Set(columns.UserDefinedType(Class))
예제 #5
0
class page_meta_type(usertype.UserType):
    meta_title = columns.Text(required=False)
    full_title = columns.Text(required=False)
    meta_dscr = columns.Text(required=False)
    meta_keywords = columns.Set(columns.Text(required=False))
    other_languages = columns.Map(columns.Text(required=False), columns.Text(required=False))
    other_html = columns.Text(required=False)
예제 #6
0
 def test_instantiation_with_column_class(self):
     """
     Tests that columns instantiated with a column class work properly
     and that the class is instantiated in the constructor
     """
     column = columns.Set(columns.Text)
     assert isinstance(column.value_col, columns.Text)
예제 #7
0
class TrendList(DjangoCassandraModel):
    requested_year = columns.Integer(primary_key=True)
    requested_month = columns.Integer(primary_key=True)
    requested_day = columns.Integer(primary_key=True)
    tag_counts = columns.Set(columns.Text())

    class Meta:
        get_pk_field = 'requested_year'
예제 #8
0
class ScalarDataFromRecord(Model):
    """Query table for finding a scalar-valued Record.data entry given record ID."""

    id = columns.Text(primary_key=True)
    name = columns.Text(primary_key=True)
    value = columns.Double(primary_key=True)
    units = columns.Text()
    tags = columns.Set(columns.Text())
예제 #9
0
class RecordFromScalarData(Model):
    """Query table for finding records given scalar criteria."""

    name = columns.Text(primary_key=True)
    value = columns.Double(primary_key=True)
    id = columns.Text(primary_key=True)
    units = columns.Text()
    tags = columns.Set(columns.Text())
예제 #10
0
class TestModelSave(Model):
    partition = columns.UUID(primary_key=True, default=uuid4)
    cluster = columns.Integer(primary_key=True)
    count = columns.Integer(required=False)
    text = columns.Text(required=False, index=True)
    text_set = columns.Set(columns.Text, required=False)
    text_list = columns.List(columns.Text, required=False)
    text_map = columns.Map(columns.Text, columns.Text, required=False)
예제 #11
0
 def test_to_python(self):
     """ Tests that to_python of value column is called """
     column = columns.Set(JsonTestColumn)
     val = set((1, 2, 3))
     db_val = column.to_database(val)
     self.assertEqual(db_val, set(json.dumps(v) for v in val))
     py_val = column.to_python(db_val)
     self.assertEqual(py_val, val)
예제 #12
0
 def test_to_python(self):
     """ Tests that to_python of value column is called """
     column = columns.Set(JsonTestColumn)
     val = {1, 2, 3}
     db_val = column.to_database(val)
     assert db_val.value == {json.dumps(v) for v in val}
     py_val = column.to_python(db_val.value)
     assert py_val == val
예제 #13
0
class Vehicles(m.Model):
    __keyspace__ = "swapi"
    __connection__ = "swapi"

    id = col.BigInt(primary_key=True)
    cargo_capacity = col.Text(max_length=32)
    consumables = col.Text(max_length=96)
    cost_in_credits = col.Text(max_length=96)
    crew = col.Text(max_length=32)
    films = col.Set(col.BigInt)
    length = col.Text(max_length=32)
    manufacturer = col.Text(max_length=96)
    max_atmosphering_speed = col.Text(max_length=32)
    model = col.Text(max_length=96)
    name = col.Text(max_length=96)
    passengers = col.Text(max_length=16)
    pilots = col.Set(col.BigInt)
    vehicle_class = col.Text(max_length=96)
예제 #14
0
class Planets(m.Model):
    __keyspace__ = "swapi"
    __connection__ = "swapi"

    id = col.BigInt(primary_key=True)
    name = col.Text(max_length=96)
    diameter = col.Text(max_length=16)
    rotation_period = col.Text(max_length=16)
    orbital_period = col.Text(max_length=16)
    gravity = col.Text(max_length=96)
    population = col.Text(max_length=32)
    climate = col.Text(max_length=96)
    terrain = col.Text(max_length=96)
    surface_water = col.Text(max_length=16)
    residents = col.Set(col.BigInt)
    films = col.Set(col.BigInt)
    created = col.Date()
    edited = col.Date()
예제 #15
0
class Films(m.Model):
    __keyspace__ = "swapi"
    __connection__ = "swapi"

    id = col.BigInt(primary_key=True)
    episode_id = col.Integer(index=True)
    title = col.Text(index=True)
    director = col.Text(max_length=96)
    producer = col.Text(max_length=96)
    release_date = col.Date()
    opening_crawl = col.Text()
    species = col.Set(col.BigInt)
    starships = col.Set(col.BigInt)
    vehicles = col.Set(col.BigInt)
    characters = col.Set(col.BigInt)
    planets = col.Set(col.BigInt)
    created = col.Date()
    edited = col.Date()
예제 #16
0
class TestNestedModel(Model):

    partition = columns.UUID(primary_key=True, default=uuid4)
    list_list = columns.List(columns.List(columns.Integer), required=False)
    map_list = columns.Map(columns.Text,
                           columns.List(columns.Text),
                           required=False)
    set_tuple = columns.Set(columns.Tuple(columns.Integer, columns.Integer),
                            required=False)
예제 #17
0
class TestIndexSetModel(Model):
    partition = columns.UUID(primary_key=True)
    int_set = columns.Set(columns.Integer, index=True)
    int_list = columns.List(columns.Integer, index=True)
    text_map = columns.Map(columns.Text, columns.DateTime, index=True)
    mixed_tuple = columns.Tuple(columns.Text,
                                columns.Integer,
                                columns.Text,
                                index=True)
예제 #18
0
class DHCP(ConnBaseModel):
    __discriminator_value__ = 'DHCP'
    client_addr = columns.Inet(required=False)
    mac = columns.Text(required=False)
    host_name = columns.Text(required=False)
    msg_types = columns.Set(value_type=columns.Text, required=False)
    duration = columns.Float(required=False)
    assigned_ip = columns.Text(required=False)
    lease_time = columns.Text(required=False)
    trans_id1 = columns.Text(required=False)
예제 #19
0
class People(m.Model):
    __keyspace__ = "swapi"
    __connection__ = "swapi"

    id = col.BigInt(primary_key=True)
    name = col.Text(max_length=96)
    height = col.Text(max_length=16)
    mass = col.Text(max_length=16)
    skin_color = col.Text(max_length=16)
    eye_color = col.Text(max_length=16)
    birth_year = col.Text(max_length=16)
    gender = col.Text(max_length=16)
    homeworld = col.BigInt()
    films = col.Set(col.BigInt)
    species = col.Set(col.BigInt)
    starships = col.Set(col.BigInt)
    vehicles = col.Set(col.BigInt)
    created = col.Date()
    edited = col.Date()
예제 #20
0
class Species(m.Model):
    __keyspace__ = "swapi"
    __connection__ = "swapi"

    id = col.BigInt(primary_key=True)
    name = col.Text(max_length=96)
    classification = col.Text(max_length=96)
    designation = col.Text(max_length=96)
    average_height = col.Text(max_length=16)
    average_lifespan = col.Text(max_length=16)
    eye_colors = col.Text(max_length=96)
    hair_colors = col.Text(max_length=96)
    skin_colors = col.Text(max_length=96)
    language = col.Text(max_length=96)
    homeworld = col.BigInt()
    people = col.Set(col.BigInt)
    films = col.Set(col.BigInt)
    created = col.Date()
    edited = col.Date()
예제 #21
0
class StringListDataFromRecord(Model):
    """Query table for finding a scalar list-valued Record.data entry given record ID."""

    id = columns.Text(primary_key=True)
    name = columns.Text(primary_key=True)
    # Until freeze support is public-facing, this is the cleanest option
    # pylint: disable=protected-access
    value = columns.List(columns.Text(), primary_key=True)
    value._freeze_db_type()
    units = columns.Text()
    tags = columns.Set(columns.Text())
예제 #22
0
class DNS(ConnBaseModel):
    __discriminator_value__ = 'DNS'
    trans_id = columns.Integer(required=False)
    rtt = columns.Text(required=False)
    query = columns.Text(required=False)
    qclass = columns.Text(required=False)
    qclass_name = columns.Text(required=False)
    qtype = columns.Text(required=False)
    qtype_name = columns.Text(required=False)
    rcode = columns.Integer(required=False)
    rcode_name = columns.Text(required=False)
    aa = columns.Boolean(required=False)
    tc = columns.Boolean(required=False)
    rd = columns.Boolean(required=False)
    ra = columns.Boolean(required=False)
    z = columns.Integer(required=False)
    answers = columns.Set(columns.Text, required=False)
    ttls = columns.Set(columns.Float, required=False)
    rejected = columns.Boolean(required=False)
    addl = columns.Text(required=False)
    auth = columns.Text(required=False)
예제 #23
0
class UserModel(DjangoCassandraModel):
    class Meta:
        get_pk_field = 'id'

    id = columns.UUID(primary_key=True, default=uuid.uuid1())
    lastname = columns.Text(required=False)
    firstname = columns.Text(required=False)
    username = columns.Text()
    password = columns.Text()
    admin = columns.Boolean(required=False)
    favorite = columns.Set(columns.UUID(), required=False)
    stock = columns.Map(columns.Text(), columns.Float(), required=False)
예제 #24
0
class ScalarListDataFromRecord(Model):
    """Query table for finding a scalar list-valued Record.data entry given record ID."""

    id = columns.Text(primary_key=True)
    name = columns.Text(primary_key=True)
    # CQLEngine support for frozen collections isn't part of their API.
    # Currently, _freeze_db_type() *is* the least hacky option.
    # pylint: disable=protected-access
    value = columns.List(columns.Double(), primary_key=True)
    value._freeze_db_type()
    units = columns.Text()
    tags = columns.Set(columns.Text())
예제 #25
0
class Starships(m.Model):
    __keyspace__ = "swapi"
    __connection__ = "swapi"

    id = col.BigInt(primary_key=True)
    cargo_capacity = col.Text(max_length=32)
    consumables = col.Text(max_length=96)
    cost_in_credits = col.Text(max_length=32)
    crew = col.Text(max_length=32)
    hyperdrive_rating = col.Text(max_length=32)
    length = col.Text(max_length=32)
    manufacturer = col.Text(max_length=96)
    max_atmosphering_speed = col.Text(max_length=32)
    mglt = col.Text(max_length=96)
    model = col.Text(max_length=96)
    name = col.Text(max_length=96)
    passengers = col.Text(max_length=16)
    starship_class = col.Text(max_length=96)
    films = col.Set(col.BigInt)
    pilots = col.Set(col.BigInt)
    created = col.Date()
    edited = col.Date()
예제 #26
0
class RecordFromStringData(Model):
    """
    Query table for finding records given string criteria (ex, "version"="1.2.3").

    String data are any Record.data entry provided by the user that doesn't have a
    number for a value (ex: "machine":"merl", "version":"1.2").
    """

    name = columns.Text(primary_key=True)
    value = columns.Text(primary_key=True)
    id = columns.Text(primary_key=True)
    units = columns.Text()
    tags = columns.Set(columns.Text())
예제 #27
0
class GeoTweet(DjangoCassandraModel):
    tweet_id = columns.UUID(primary_key=True, default=uuid.uuid4)
    created_at_year = columns.Integer(primary_key=True)
    created_at_month = columns.Integer(primary_key=True)
    created_at_day = columns.Integer(primary_key=True)
    created_at_time = columns.Integer(primary_key=True)
    status = columns.Text(required=True)
    hashtags = columns.Set(columns.Text())
    author_user_name = columns.Text()
    author_image = columns.Text()

    class Meta:
        get_pk_field = 'tweet_id'
예제 #28
0
class MessageModel(Model):
    id = columns.UUID(primary_key=True, default=uuid.uuid4)
    chat_id = columns.UUID(required=True)
    user_id = columns.Integer(required=True)
    message = columns.Text(required=True)
    status = columns.Set(columns.Integer())
    create_at = columns.DateTime()

    def to_dict(self):
        return {
            'id': str(self.id),
            'chat_id': self.chat_id,
            'user_id': self.user_id,
            'message': self.message,
            'create_at': self.create_at,
        }
예제 #29
0
class Person(Model):
    __table_name__ = 'useridindex'
    __keyspace__ = 'testdb'
    __connection__ = 'cluster2'

    id = columns.UUID(primary_key=True, default=uuid.uuid4)
    first_name = columns.Text()
    last_name = columns.Text()
    assets_idx = columns.Set(columns.Integer())

    def get_data(self):
        return {
            'id': str(self.id),
            'first_name': self.first_name,
            'last_name': self.last_name,
            # 'assets_idx': self.........
        }
    def test_instantiation_with_column_class(self):
        """
        Tests that columns instantiated with a column class work properly
        and that the class is instantiated in the constructor

        @since 3.1
        @jira_ticket PYTHON-478
        @expected_result types are instantiated correctly

        @test_category object_mapper
        """
        list_list = columns.List(columns.List(columns.Integer), required=False)
        map_list = columns.Map(columns.Text, columns.List(columns.Text), required=False)
        set_tuple = columns.Set(columns.Tuple(columns.Integer, columns.Integer), required=False)

        self.assertIsInstance(list_list, columns.List)
        self.assertIsInstance(list_list.types[0], columns.List)
        self.assertIsInstance(map_list.types[0], columns.Text)
        self.assertIsInstance(map_list.types[1], columns.List)
        self.assertIsInstance(set_tuple.types[0], columns.Tuple)