Example #1
0
def variety(db):
    for q in variety_queries['create']:
        iquery(db, q)
    variety = variety_schema.split('<')[0].strip()

    yield variety
    for q in variety_queries['clean']:
        iquery(db, q)
Example #2
0
def setup(db):
    for q in types_queries['create']:
        iquery(db, q)

    yield True

    for q in types_queries['clean']:
        iquery(db, q)
Example #3
0
def setup(db):
    for q in types_queries['create']:
        iquery(db, q)

    yield True

    for q in types_queries['clean']:
        iquery(db, q)
Example #4
0
 def test_fetch_dataframe(self, db, type_name, schema):
     # Pandas DataFrame
     ar = iquery(db,
                 'build(<val:{}>[i=1:10,10,0], random())'.format(type_name),
                 fetch=True,
                 schema=schema)
     assert ar.shape == (10, 2)
     assert ar.ndim == 2
Example #5
0
 def test_fetch_dataframe(self, db, type_name, schema):
     # Pandas DataFrame
     ar = iquery(
         db,
         'build(<val:{}>[i=1:10,10,0], random())'.format(type_name),
         fetch=True,
         schema=schema)
     assert ar.shape == (10, 2)
     assert ar.ndim == 2
Example #6
0
 def test_types_dataframe_no_promo(self, db, setup, mode, schema):
     # Pandas DataFrame, atts_only
     ar = iquery(db,
                 'scan(types_{})'.format(mode),
                 fetch=True,
                 dataframe_promo=False)
     assert ar.shape == types_shape[mode][0]
     assert ar.ndim == 2
     assert ar[0:1].to_records(index=False) == types_array_obj[mode][0]
     assert ar[4:5].to_records(index=False) == types_array_obj[mode][1]
     assert ar[8:9].to_records(index=False) == types_array_obj[mode][2]
Example #7
0
 def test_types_dataframe_no_promo(self, db, setup, mode, schema):
     # Pandas DataFrame, atts_only
     ar = iquery(db,
                 'scan(types_{})'.format(mode),
                 fetch=True,
                 dataframe_promo=False)
     assert ar.shape == types_shape[mode][0]
     assert ar.ndim == 2
     assert ar[0:1].to_records(index=False) == types_array_obj[mode][0]
     assert ar[4:5].to_records(index=False) == types_array_obj[mode][1]
     assert ar[8:9].to_records(index=False) == types_array_obj[mode][2]
Example #8
0
 def test_variety_dataframe_no_promo(self, db, variety, schema):
     # Pandas DataFrame, atts_only
     ar = iquery(db,
                 'scan({})'.format(variety),
                 fetch=True,
                 dataframe_promo=False)
     assert ar.shape == (12, 16)
     assert ar.ndim == 2
     assert ar[0:1].to_records(index=False) == variety_array_obj[0]
     assert ar[4:5].to_records(index=False) == variety_array_obj[1]
     assert ar[8:9].to_records(index=False) == variety_array_obj[2]
Example #9
0
 def test_types_numpy(self, db, setup, mode, schema):
     # NumPy array
     ar = iquery(db,
                 'scan(types_{})'.format(mode),
                 fetch=True,
                 as_dataframe=False,
                 schema=schema)
     assert ar.shape == (12,)
     assert ar.ndim == 1
     assert ar[0] == types_array_struct[mode][0]
     assert ar[4] == types_array_struct[mode][1]
     assert ar[8] == types_array_struct[mode][2]
Example #10
0
 def test_types_numpy(self, db, setup, mode, schema):
     # NumPy array
     ar = iquery(db,
                 'scan(types_{})'.format(mode),
                 fetch=True,
                 as_dataframe=False,
                 schema=schema)
     assert ar.shape == (12, )
     assert ar.ndim == 1
     assert ar[0] == types_array_struct[mode][0]
     assert ar[4] == types_array_struct[mode][1]
     assert ar[8] == types_array_struct[mode][2]
Example #11
0
 def test_variety_numpy(self, db, variety, schema):
     # NumPy array
     ar = iquery(db,
                 'scan({})'.format(variety),
                 fetch=True,
                 as_dataframe=False,
                 schema=schema)
     assert ar.shape == (12, )
     assert ar.ndim == 1
     assert ar[0] == variety_array_struct[0]
     assert ar[4] == variety_array_struct[1]
     assert ar[8] == variety_array_struct[2]
Example #12
0
 def test_fetch_numpy(self, db, type_name, atts_only, schema):
     # NumPy array
     ar = iquery(db,
                 'build(<val:{}>[i=1:10,10,0], random())'.format(type_name),
                 fetch=True,
                 atts_only=atts_only,
                 as_dataframe=False,
                 schema=schema)
     if not atts_only:
         for i in range(10):
             assert ar[i][0] == i + 1
     assert ar.shape == (10, )
     assert ar.ndim == 1
Example #13
0
 def test_fetch_dataframe_datetime(self, db, type_name, schema):
     # Pandas DataFrame
     type_conv = 'datetime(i)'
     ar = iquery(
         db,
         'build(<val:{}>[i=1:10,10,0], {})'.format(
             type_name,
             type_conv if type_name == 'datetime'
             else 'apply_offset({}, 0)'.format(type_conv)),
         fetch=True,
         schema=schema)
     assert ar.shape == (10, 2)
     assert ar.ndim == 2
Example #14
0
 def test_fetch_numpy(self, db, type_name, atts_only, schema):
     # NumPy array
     ar = iquery(
         db,
         'build(<val:{}>[i=1:10,10,0], random())'.format(type_name),
         fetch=True,
         atts_only=atts_only,
         as_dataframe=False,
         schema=schema)
     if not atts_only:
         for i in range(10):
             assert ar[i][0] == i + 1
     assert ar.shape == (10,)
     assert ar.ndim == 1
Example #15
0
    def test_variety_dataframe_atts(self, db, variety, schema):
        # Pandas DataFrame, atts_only
        ar = iquery(db, 'scan({})'.format(variety), fetch=True, atts_only=True)
        assert ar.shape == (12, 13)
        assert ar.ndim == 2
        assert numpy.all(ar[0:1].values == variety_array_promo[0][3:])

        # Values which differ have to be NAN
        ln = ar[4:5]
        assert numpy.all(
            numpy.isnan(
                ln[ar.columns[(ln.values != variety_array_promo[1][3:])[0]]]))

        ln = ar[8:9]
        assert numpy.all(
            numpy.isnan(
                ln[ar.columns[(ln.values != variety_array_promo[2][3:])[0]]]))
Example #16
0
    def test_types_dataframe(self, db, setup, mode, schema):
        # Pandas DataFrame, atts_only
        ar = iquery(db, 'scan(types_{})'.format(mode), fetch=True)
        assert ar.shape == types_shape[mode][0]
        assert ar.ndim == 2
        assert numpy.all(ar[0:1].values[0] == types_array_promo[mode][0])

        # Values which differ have to be NAN
        ln = ar[4:5]
        assert numpy.all(
            pandas.isnull(ln[ar.columns[(
                ln.values[0] != types_array_promo[mode][1]).tolist()]]))

        ln = ar[8:9]
        assert numpy.all(
            pandas.isnull(ln[ar.columns[(
                ln.values[0] != types_array_promo[mode][2]).tolist()]]))
Example #17
0
 def test_fetch_numpy_datetime(self, db, type_name, atts_only, schema):
     # NumPy array
     type_conv = 'datetime(i)'
     ar = iquery(
         db,
         'build(<val:{}>[i=1:10,10,0], {})'.format(
             type_name,
             type_conv if type_name == 'datetime'
             else 'apply_offset({}, 0)'.format(type_conv)),
         fetch=True,
         atts_only=atts_only,
         as_dataframe=False,
         schema=schema)
     if not atts_only:
         for i in range(10):
             assert ar[i][0] == i + 1
     assert ar.shape == (10,)
     assert ar.ndim == 1
Example #18
0
    def test_types_dataframe(self, db, setup, mode, schema):
        # Pandas DataFrame, atts_only
        ar = iquery(db,
                    'scan(types_{})'.format(mode),
                    fetch=True)
        assert ar.shape == types_shape[mode][0]
        assert ar.ndim == 2
        assert numpy.all(ar[0:1].values[0] == types_array_promo[mode][0])

        # Values which differ have to be NAN
        ln = ar[4:5]
        assert pandas.isnull(
            ln[
                ar.columns[
                    (ln.values[0] != types_array_promo[mode][1]).tolist()
                ]]).all().all()

        ln = ar[8:9]
        assert pandas.isnull(
            ln[
                ar.columns[
                    (ln.values[0] != types_array_promo[mode][2]).tolist()
                ]]).all().all()