| 131 | |
| 132 | @pytest.mark.parametrize("endpoint", [True, False]) |
| 133 | def test_linspace(endpoint): |
| 134 | darr = da.linspace(6, 49, endpoint=endpoint, chunks=5) |
| 135 | nparr = np.linspace(6, 49, endpoint=endpoint) |
| 136 | assert_eq(darr, nparr) |
| 137 | |
| 138 | darr = da.linspace(1.4, 4.9, endpoint=endpoint, chunks=5, num=13) |
| 139 | nparr = np.linspace(1.4, 4.9, endpoint=endpoint, num=13) |
| 140 | assert_eq(darr, nparr) |
| 141 | |
| 142 | darr = da.linspace(6, 49, endpoint=endpoint, chunks=5, dtype=float) |
| 143 | nparr = np.linspace(6, 49, endpoint=endpoint, dtype=float) |
| 144 | assert_eq(darr, nparr) |
| 145 | |
| 146 | darr, dstep = da.linspace(6, 49, endpoint=endpoint, chunks=5, retstep=True) |
| 147 | nparr, npstep = np.linspace(6, 49, endpoint=endpoint, retstep=True) |
| 148 | assert np.allclose(dstep, npstep) |
| 149 | assert_eq(darr, nparr) |
| 150 | |
| 151 | darr = da.linspace(1.4, 4.9, endpoint=endpoint, chunks=5, num=13, dtype=int) |
| 152 | nparr = np.linspace(1.4, 4.9, num=13, endpoint=endpoint, dtype=int) |
| 153 | assert_eq(darr, nparr) |
| 154 | assert sorted( |
| 155 | da.linspace(1.4, 4.9, endpoint=endpoint, chunks=5, num=13).dask |
| 156 | ) == sorted(da.linspace(1.4, 4.9, endpoint=endpoint, chunks=5, num=13).dask) |
| 157 | assert sorted( |
| 158 | da.linspace(6, 49, endpoint=endpoint, chunks=5, dtype=float).dask |
| 159 | ) == sorted(da.linspace(6, 49, endpoint=endpoint, chunks=5, dtype=float).dask) |
| 160 | |
| 161 | x = da.array([0.2, 6.4, 3.0, 1.6]) |
| 162 | nparr = np.linspace(0, 2, 8, endpoint=endpoint) |
| 163 | darr = da.linspace(da.argmin(x), da.argmax(x) + 1, 8, endpoint=endpoint) |
| 164 | assert_eq(darr, nparr) |
| 165 | |
| 166 | nparr = np.linspace(0, 0, 0, endpoint=endpoint) |
| 167 | darr = da.linspace(0, 0, 0, endpoint=endpoint) |
| 168 | assert_eq(darr, nparr) |
| 169 | |
| 170 | nparr = np.linspace(1, 1, 0, endpoint=endpoint) |
| 171 | darr = da.linspace(1, 1, 0, endpoint=endpoint) |
| 172 | assert_eq(darr, nparr) |
| 173 | |
| 174 | nparr = np.linspace(1, 5, 0, endpoint=endpoint) |
| 175 | darr = da.linspace(1, 5, 0, endpoint=endpoint) |
| 176 | assert_eq(darr, nparr) |
| 177 | |
| 178 | nparr = np.linspace(0, 0, 1, endpoint=endpoint) |
| 179 | darr = da.linspace(0, 0, 1, endpoint=endpoint) |
| 180 | assert_eq(darr, nparr) |
| 181 | |
| 182 | nparr = np.linspace(1, 1, 1, endpoint=endpoint) |
| 183 | darr = da.linspace(1, 1, 1, endpoint=endpoint) |
| 184 | assert_eq(darr, nparr) |
| 185 | |
| 186 | nparr = np.linspace(1, 5, 1, endpoint=endpoint) |
| 187 | darr = da.linspace(1, 5, 1, endpoint=endpoint) |
| 188 | assert_eq(darr, nparr) |
| 189 | |
| 190 | |