Esempio n. 1
0
 def test_compound_field_long(self):
     ms = self.model['model'].copy()
     a = 'xxxxfdgjkdhgsjkfhglhdjghdfhlkgshlfdhjkhfdlkjhjklfdhljkgdfhlkjghjk'
     ms['dimensions']['function']['attributes'][a] = \
         ms['dimensions']['function']['attributes']['description']
     del ms['dimensions']['function']['attributes']['description']
     validate_model(ms)
Esempio n. 2
0
 def test_compound_field_long(self):
     ms = self.model['model'].copy()
     a = 'xxxxfdgjkdhgsjkfhglhdjghdfhlkgshlfdhjkhfdlkjhjklfdhljkgdfhlkjghjk'
     ms['dimensions']['function']['attributes'][a] = \
         ms['dimensions']['function']['attributes']['description']
     del ms['dimensions']['function']['attributes']['description']
     validate_model(ms)
Esempio n. 3
0
 def test_basic_validate(self):
     try:
         in_ = self.model['model']
         out = validate_model(in_)
         assert len(out) == len(in_), out
     except ValidationError, i:
         assert False, i
Esempio n. 4
0
 def test_basic_validate(self):
     try:
         in_ = self.model['model']
         out = validate_model(in_)
         assert len(out) == len(in_), out
     except ValidationError, i:
         assert False, i
Esempio n. 5
0
 def test_set_label_attribute(self):
     ms = self.model['model'].copy()
     ms['dimensions']['function']['label_attribute'] = 'label'
     ms['dimensions']['function']['key_attribute'] = 'name'
     ms = validate_model(ms)
     assert ms['dimensions']['function']['label_attribute'] == 'label'
     assert ms['dimensions']['function']['key_attribute'] == 'name'
Esempio n. 6
0
 def test_basic_validate(self):
     try:
         in_ = self.model['model']
         out = validate_model(in_)
         assert len(out) == len(in_), out
     except Invalid, i:
         assert False, i.asdict()
Esempio n. 7
0
 def test_set_label_attribute(self):
     ms = self.model['model'].copy()
     ms['dimensions']['function']['label_attribute'] = 'label'
     ms['dimensions']['function']['key_attribute'] = 'name'
     ms = validate_model(ms)
     assert ms['dimensions']['function']['label_attribute'] == 'label'
     assert ms['dimensions']['function']['key_attribute'] == 'name'
Esempio n. 8
0
 def test_basic_validate(self):
     try:
         in_ = self.model['model']
         out = validate_model(in_)
         assert len(out) == len(in_), out
     except Invalid, i:
         assert False, i.asdict()
Esempio n. 9
0
def update_model(name):
    dataset = get_dataset(name)
    require.dataset.update(dataset)
    model_data = validate_model(request_data())
    dataset.update_model(model_data)
    dataset.touch()
    db.session.commit()
    return model(name)
Esempio n. 10
0
def update_model(name):
    dataset = get_dataset(name)
    require.dataset.update(dataset)
    model_data = validate_model(request_data())
    dataset.update_model(model_data)
    dataset.touch()
    db.session.commit()
    return model(name)
Esempio n. 11
0
def update_model(name):
    dataset = get_dataset(name)
    require.dataset.update(dataset)
    data = request_data()
    if isinstance(data, dict):
        data['fact_table'] = dataset.fact_table.table_name
    dataset.model = validate_model(data)
    db.session.commit()
    return model(name)
Esempio n. 12
0
def update_model(name):
    dataset = get_dataset(name)
    require.dataset.update(dataset)
    data = request_data()
    if isinstance(data, dict):
        data['fact_table'] = dataset.fact_table.table_name
    dataset.model = validate_model(data)
    db.session.commit()
    return model(name)
Esempio n. 13
0
def get_model(model):
    """ Get and validate the model. If the model doesn't validate
    we exit the program. """
    model = json_of_url(model)

    # Validate the model
    try:
        log.info("Validating model")
        model = validate_model(model)
    except Invalid as i:
        log.error("Errors occured during model validation:")
        for field, error in i.asdict().items():
            log.error("%s: %s", field, error)
        sys.exit(1)
    return model
Esempio n. 14
0
 def test_no_measures(self):
     ms = self.model['model']
     ms['measures'] = {}
     validate_model(ms)
Esempio n. 15
0
 def test_invalid_name(self):
     ms = self.model['model']
     ms['dimensions']['ba nana'] = ms['dimensions']['function']
     validate_model(ms)
Esempio n. 16
0
 def test_from_is_compound(self):
     ms = self.model['model']
     ms['dimensions']['from'] = ms['measures']['cofinance']
     validate_model(ms)
Esempio n. 17
0
 def test_invalid_name(self):
     ms = self.model['model']
     ms['dimensions']['ba nana'] = ms['dimensions']['function']
     validate_model(ms)
Esempio n. 18
0
 def test_no_measures(self):
     ms = self.model['model']
     ms['measures'] = {}
     validate_model(ms)
Esempio n. 19
0
 def test_compound_field_with_dash(self):
     ms = self.model['model'].copy()
     ms['dimensions']['function']['attributes']['id-col'] = \
         ms['dimensions']['function']['attributes']['description']
     del ms['dimensions']['function']['attributes']['description']
     validate_model(ms)
Esempio n. 20
0
 def test_compound_field_has_column(self):
     ms = self.model['model'].copy()
     del ms['dimensions']['function']['attributes']['description']['column']
     validate_model(ms)
Esempio n. 21
0
 def test_keep_extra_data(self):
     ms = self.model['model']
     ms['ignore_columns'] = ['huhu']
     os = validate_model(ms)
     assert 'ignore_columns' in os, os.keys()
Esempio n. 22
0
 def test_measure_has_column(self):
     ms = self.model['model'].copy()
     del ms['measures']['cofinance']['column']
     validate_model(ms)
Esempio n. 23
0
 def test_compound_field_has_column(self):
     ms = self.model['model'].copy()
     del ms['dimensions']['function']['attributes']['description']['column']
     validate_model(ms)
Esempio n. 24
0
 def test_compound_field_invalid_name(self):
     ms = self.model['model'].copy()
     ms['dimensions']['function']['attributes']['ba nanana'] = \
         ms['dimensions']['function']['attributes']['description']
     del ms['dimensions']['function']['attributes']['description']
     validate_model(ms)
Esempio n. 25
0
 def test_compound_field_with_dash(self):
     ms = self.model['model'].copy()
     ms['dimensions']['function']['attributes']['id-col'] = \
         ms['dimensions']['function']['attributes']['description']
     del ms['dimensions']['function']['attributes']['description']
     validate_model(ms)
Esempio n. 26
0
 def test_date_has_column(self):
     ms = self.model['model'].copy()
     del ms['dimensions']['time']['attributes']['year']['column']
     validate_model(ms)
Esempio n. 27
0
 def test_measure_has_column(self):
     ms = self.model['model'].copy()
     del ms['measures']['cofinance']['column']
     validate_model(ms)
Esempio n. 28
0
 def test_date_has_column(self):
     ms = self.model['model'].copy()
     del ms['dimensions']['time']['attributes']['year']['column']
     validate_model(ms)
Esempio n. 29
0
 def test_no_dimensions(self):
     ms = self.model['model']
     ms['dimensions'] = {}
     validate_model(ms)
Esempio n. 30
0
 def test_compound_field_invalid_name(self):
     ms = self.model['model'].copy()
     ms['dimensions']['function']['attributes']['ba nanana'] = \
         ms['dimensions']['function']['attributes']['description']
     del ms['dimensions']['function']['attributes']['description']
     validate_model(ms)
Esempio n. 31
0
 def test_measure_data_type(self):
     ms = self.model['model'].copy()
     ms['measures']['cofinance']['type'] = 'string'
     validate_model(ms)
Esempio n. 32
0
 def test_measure_data_type(self):
     ms = self.model['model'].copy()
     ms['measures']['cofinance']['type'] = 'string'
     validate_model(ms)
Esempio n. 33
0
 def test_set_invalid_label_attribute(self):
     ms = self.model['model'].copy()
     ms['dimensions']['function']['label_attribute'] = 'foo'
     os = validate_model(ms)
     assert False, os['dimensions']
Esempio n. 34
0
 def test_set_invalid_label_attribute(self):
     ms = self.model['model'].copy()
     ms['dimensions']['function']['label_attribute'] = 'foo'
     os = validate_model(ms)
     assert False, os['dimensions']
Esempio n. 35
0
 def test_keep_extra_data(self):
     ms = self.model['model']
     ms['ignore_columns'] = ['huhu']
     os = validate_model(ms)
     assert 'ignore_columns' in os, os.keys()
Esempio n. 36
0
def update_model(name):
    dataset = get_dataset(name)
    require.dataset.update(dataset)
    dataset.data['model'] = validate_model(request_data())
    db.session.commit()
    return model(name)
Esempio n. 37
0
 def test_from_is_compound(self):
     ms = self.model['model']
     ms['dimensions']['from'] = ms['measures']['cofinance']
     validate_model(ms)