Best Python code snippet using hypothesis
numpy.py
Source:numpy.py  
...708        self.size_one_allowed = self.min_side <= 1 <= self.max_side709    def do_draw(self, data):710        # We don't usually have a gufunc signature; do the common case first & fast.711        if self.signature is None:712            return self._draw_loop_dimensions(data)713        # When we *do*, draw the core dims, then draw loop dims, and finally combine.714        core_in, core_res = self._draw_core_dimensions(data)715        # If some core shape has omitted optional dimensions, it's an error to add716        # loop dimensions to it.  We never omit core dims if min_dims >= 1.717        # This ensures that we respect Numpy's gufunc broadcasting semantics and user718        # constraints without needing to check whether the loop dims will be719        # interpreted as an invalid substitute for the omitted core dims.720        # We may implement this check later!721        use = [None not in shp for shp in core_in]722        loop_in, loop_res = self._draw_loop_dimensions(data, use=use)723        def add_shape(loop, core):724            return tuple(x for x in (loop + core)[-32:] if x is not None)725        return BroadcastableShapes(726            input_shapes=tuple(add_shape(l, c) for l, c in zip(loop_in, core_in)),727            result_shape=add_shape(loop_res, core_res),728        )729    def _draw_core_dimensions(self, data):730        # Draw gufunc core dimensions, with None standing for optional dimensions731        # that will not be present in the final shape.  We track omitted dims so732        # that we can do an accurate per-shape length cap.733        dims = {}734        shapes = []735        for shape in self.signature.input_shapes + (self.signature.result_shape,):736            shapes.append([])737            for name in shape:738                if name.isdigit():739                    shapes[-1].append(int(name))740                    continue741                if name not in dims:742                    dim = name.strip("?")743                    dims[dim] = data.draw(self.side_strat)744                    if self.min_dims == 0 and not data.draw_bits(3):745                        dims[dim + "?"] = None746                    else:747                        dims[dim + "?"] = dims[dim]748                shapes[-1].append(dims[name])749        return tuple(tuple(s) for s in shapes[:-1]), tuple(shapes[-1])750    def _draw_loop_dimensions(self, data, use=None):751        # All shapes are handled in column-major order; i.e. they are reversed752        base_shape = self.base_shape[::-1]753        result_shape = list(base_shape)754        shapes = [[] for _ in range(self.num_shapes)]755        if use is None:756            use = [True for _ in range(self.num_shapes)]757        else:758            assert len(use) == self.num_shapes759            assert all(isinstance(x, bool) for x in use)760        for dim_count in range(1, self.max_dims + 1):761            dim = dim_count - 1762            # We begin by drawing a valid dimension-size for the given763            # dimension. This restricts the variability across the shapes764            # at this dimension such that they can only choose between..._array_helpers.py
Source:_array_helpers.py  
...429        self.size_one_allowed = self.min_side <= 1 <= self.max_side430    def do_draw(self, data):431        # We don't usually have a gufunc signature; do the common case first & fast.432        if self.signature is None:433            return self._draw_loop_dimensions(data)434        # When we *do*, draw the core dims, then draw loop dims, and finally combine.435        core_in, core_res = self._draw_core_dimensions(data)436        # If some core shape has omitted optional dimensions, it's an error to add437        # loop dimensions to it.  We never omit core dims if min_dims >= 1.438        # This ensures that we respect Numpy's gufunc broadcasting semantics and user439        # constraints without needing to check whether the loop dims will be440        # interpreted as an invalid substitute for the omitted core dims.441        # We may implement this check later!442        use = [None not in shp for shp in core_in]443        loop_in, loop_res = self._draw_loop_dimensions(data, use=use)444        def add_shape(loop, core):445            return tuple(x for x in (loop + core)[-NDIM_MAX:] if x is not None)446        return BroadcastableShapes(447            input_shapes=tuple(add_shape(l_in, c) for l_in, c in zip(loop_in, core_in)),448            result_shape=add_shape(loop_res, core_res),449        )450    def _draw_core_dimensions(self, data):451        # Draw gufunc core dimensions, with None standing for optional dimensions452        # that will not be present in the final shape.  We track omitted dims so453        # that we can do an accurate per-shape length cap.454        dims = {}455        shapes = []456        for shape in self.signature.input_shapes + (self.signature.result_shape,):457            shapes.append([])458            for name in shape:459                if name.isdigit():460                    shapes[-1].append(int(name))461                    continue462                if name not in dims:463                    dim = name.strip("?")464                    dims[dim] = data.draw(self.side_strat)465                    if self.min_dims == 0 and not data.draw_bits(3):466                        dims[dim + "?"] = None467                    else:468                        dims[dim + "?"] = dims[dim]469                shapes[-1].append(dims[name])470        return tuple(tuple(s) for s in shapes[:-1]), tuple(shapes[-1])471    def _draw_loop_dimensions(self, data, use=None):472        # All shapes are handled in column-major order; i.e. they are reversed473        base_shape = self.base_shape[::-1]474        result_shape = list(base_shape)475        shapes = [[] for _ in range(self.num_shapes)]476        if use is None:477            use = [True for _ in range(self.num_shapes)]478        else:479            assert len(use) == self.num_shapes480            assert all(isinstance(x, bool) for x in use)481        for dim_count in range(1, self.max_dims + 1):482            dim = dim_count - 1483            # We begin by drawing a valid dimension-size for the given484            # dimension. This restricts the variability across the shapes485            # at this dimension such that they can only choose between...Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!
