File: test_utils.py

package info (click to toggle)
opentsne 1.0.2-5
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 26,328 kB
  • sloc: python: 4,721; cpp: 1,959; makefile: 20
file content (25 lines) | stat: -rw-r--r-- 1,038 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import unittest
import numpy as np

from openTSNE.utils import clip_point_to_disc


class TestClipping(unittest.TestCase):
    def test_circular_clip_do_nothing(self):
        x = np.array([[0, 1], [1, 0], [0.05, 0.05]], dtype=np.float64)
        x_clipped, mask = clip_point_to_disc(x, 1)
        np.testing.assert_almost_equal(x, x_clipped)
        np.testing.assert_almost_equal(mask, [0, 0, 0])

    def test_circular_clip_do_clipping1(self):
        x = np.array([[0, 1], [5, 0], [0.05, 0.05]], dtype=np.float64)
        x_clipped, mask = clip_point_to_disc(x, 1)
        np.testing.assert_almost_equal([[0, 1], [1, 0], [0.05, 0.05]], x_clipped)
        np.testing.assert_almost_equal(mask, [0, 1, 0])

    def test_circular_clip_do_clipping2(self):
        x = np.array([[0, 1], [1, 0], [1, 1]], dtype=np.float64)
        x_clipped, mask = clip_point_to_disc(x, 1)
        v = np.cos(np.radians(45))
        np.testing.assert_almost_equal([[0, 1], [1, 0], [v, v]], x_clipped)
        np.testing.assert_almost_equal(mask, [0, 0, 1])