(self)
| 1939 | assert_equal(mx.mask, [1, 1, 0]) |
| 1940 | |
| 1941 | def test_hardmask(self): |
| 1942 | # Test hard_mask |
| 1943 | d = arange(5) |
| 1944 | n = [0, 0, 0, 1, 1] |
| 1945 | m = make_mask(n) |
| 1946 | xh = array(d, mask=m, hard_mask=True) |
| 1947 | # We need to copy, to avoid updating d in xh ! |
| 1948 | xs = array(d, mask=m, hard_mask=False, copy=True) |
| 1949 | xh[[1, 4]] = [10, 40] |
| 1950 | xs[[1, 4]] = [10, 40] |
| 1951 | assert_equal(xh._data, [0, 10, 2, 3, 4]) |
| 1952 | assert_equal(xs._data, [0, 10, 2, 3, 40]) |
| 1953 | assert_equal(xs.mask, [0, 0, 0, 1, 0]) |
| 1954 | assert_(xh._hardmask) |
| 1955 | assert_(not xs._hardmask) |
| 1956 | xh[1:4] = [10, 20, 30] |
| 1957 | xs[1:4] = [10, 20, 30] |
| 1958 | assert_equal(xh._data, [0, 10, 20, 3, 4]) |
| 1959 | assert_equal(xs._data, [0, 10, 20, 30, 40]) |
| 1960 | assert_equal(xs.mask, nomask) |
| 1961 | xh[0] = masked |
| 1962 | xs[0] = masked |
| 1963 | assert_equal(xh.mask, [1, 0, 0, 1, 1]) |
| 1964 | assert_equal(xs.mask, [1, 0, 0, 0, 0]) |
| 1965 | xh[:] = 1 |
| 1966 | xs[:] = 1 |
| 1967 | assert_equal(xh._data, [0, 1, 1, 3, 4]) |
| 1968 | assert_equal(xs._data, [1, 1, 1, 1, 1]) |
| 1969 | assert_equal(xh.mask, [1, 0, 0, 1, 1]) |
| 1970 | assert_equal(xs.mask, nomask) |
| 1971 | # Switch to soft mask |
| 1972 | xh.soften_mask() |
| 1973 | xh[:] = arange(5) |
| 1974 | assert_equal(xh._data, [0, 1, 2, 3, 4]) |
| 1975 | assert_equal(xh.mask, nomask) |
| 1976 | # Switch back to hard mask |
| 1977 | xh.harden_mask() |
| 1978 | xh[xh < 3] = masked |
| 1979 | assert_equal(xh._data, [0, 1, 2, 3, 4]) |
| 1980 | assert_equal(xh._mask, [1, 1, 1, 0, 0]) |
| 1981 | xh[filled(xh > 1, False)] = 5 |
| 1982 | assert_equal(xh._data, [0, 1, 2, 5, 5]) |
| 1983 | assert_equal(xh._mask, [1, 1, 1, 0, 0]) |
| 1984 | |
| 1985 | xh = array([[1, 2], [3, 4]], mask=[[1, 0], [0, 0]], hard_mask=True) |
| 1986 | xh[0] = 0 |
| 1987 | assert_equal(xh._data, [[1, 0], [3, 4]]) |
| 1988 | assert_equal(xh._mask, [[1, 0], [0, 0]]) |
| 1989 | xh[-1, -1] = 5 |
| 1990 | assert_equal(xh._data, [[1, 0], [3, 5]]) |
| 1991 | assert_equal(xh._mask, [[1, 0], [0, 0]]) |
| 1992 | xh[filled(xh < 5, False)] = 2 |
| 1993 | assert_equal(xh._data, [[1, 2], [2, 5]]) |
| 1994 | assert_equal(xh._mask, [[1, 0], [0, 0]]) |
| 1995 | |
| 1996 | def test_hardmask_again(self): |
| 1997 | # Another test of hardmask |
nothing calls this directly
no test coverage detected