コード例 #1
0
    def delete_dataset(self, dataset_ref, retry=None, delete_contents=False):
        # type: (DatasetReference, Optional[Retry], bool) -> None
        """Deletes a dataset.

        Args:
            dataset_ref: The dataset reference to delete.
            retry: If provided, what retry strategy to use (unused in this implementation).
            delete_contents: If true, delete the contents of the dataset first.  If false and the
                dataset is nonempty, raise an error.
        """
        del retry  # Unused in this implementation.
        if self._safe_lookup(dataset_ref.project,
                             dataset_ref.dataset_id) and not delete_contents:
            raise BadRequest(
                "Can't delete dataset {}; dataset is not empty".format(
                    dataset_ref))
        del self._datasets[dataset_ref.project][dataset_ref.dataset_id]
コード例 #2
0
    def check_definitions(self, measure_defs, start_date, end_date, verbose):
        """Checks SQL definitions for measures.
        """

        # We don't validate JSON here, as this is already done as a
        # side-effect of parsing the command options.
        errors = []
        for measure_def in measure_defs:
            measure_id = measure_def["id"]
            try:
                measure = create_or_update_measure(measure_def, end_date)
                calculation = MeasureCalculation(
                    measure, start_date=start_date, end_date=end_date, verbose=verbose
                )
                calculation.check_definition()
            except BadRequest as e:
                errors.append("* SQL error in `{}`: {}".format(measure_id, e.args[0]))
            except TypeError as e:
                errors.append("* JSON error in `{}`: {}".format(measure_id, e.args[0]))
        if errors:
            raise BadRequest("\n".join(errors))
コード例 #3
0
ファイル: test_interactive.py プロジェクト: anjensan/bigflow
 def bad_request_occurred(self):
     raise BadRequest('Syntax error')