File: test_file_gimpgradient.py

package info (click to toggle)
pillow 8.1.2%2Bdfsg-0.3%2Bdeb11u2
  • links: PTS
  • area: main
  • in suites: bullseye
  • size: 65,628 kB
  • sloc: python: 35,630; ansic: 31,009; makefile: 388; javascript: 114; sh: 77
file content (124 lines) | stat: -rw-r--r-- 2,143 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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
from PIL import GimpGradientFile, ImagePalette


def test_linear_pos_le_middle():
    # Arrange
    middle = 0.5
    pos = 0.25

    # Act
    ret = GimpGradientFile.linear(middle, pos)

    # Assert
    assert ret == 0.25


def test_linear_pos_le_small_middle():
    # Arrange
    middle = 1e-11
    pos = 1e-12

    # Act
    ret = GimpGradientFile.linear(middle, pos)

    # Assert
    assert ret == 0.0


def test_linear_pos_gt_middle():
    # Arrange
    middle = 0.5
    pos = 0.75

    # Act
    ret = GimpGradientFile.linear(middle, pos)

    # Assert
    assert ret == 0.75


def test_linear_pos_gt_small_middle():
    # Arrange
    middle = 1 - 1e-11
    pos = 1 - 1e-12

    # Act
    ret = GimpGradientFile.linear(middle, pos)

    # Assert
    assert ret == 1.0


def test_curved():
    # Arrange
    middle = 0.5
    pos = 0.75

    # Act
    ret = GimpGradientFile.curved(middle, pos)

    # Assert
    assert ret == 0.75


def test_sine():
    # Arrange
    middle = 0.5
    pos = 0.75

    # Act
    ret = GimpGradientFile.sine(middle, pos)

    # Assert
    assert ret == 0.8535533905932737


def test_sphere_increasing():
    # Arrange
    middle = 0.5
    pos = 0.75

    # Act
    ret = GimpGradientFile.sphere_increasing(middle, pos)

    # Assert
    assert round(abs(ret - 0.9682458365518543), 7) == 0


def test_sphere_decreasing():
    # Arrange
    middle = 0.5
    pos = 0.75

    # Act
    ret = GimpGradientFile.sphere_decreasing(middle, pos)

    # Assert
    assert ret == 0.3385621722338523


def test_load_via_imagepalette():
    # Arrange
    test_file = "Tests/images/gimp_gradient.ggr"

    # Act
    palette = ImagePalette.load(test_file)

    # Assert
    # load returns raw palette information
    assert len(palette[0]) == 1024
    assert palette[1] == "RGBA"


def test_load_1_3_via_imagepalette():
    # Arrange
    # GIMP 1.3 gradient files contain a name field
    test_file = "Tests/images/gimp_gradient_with_name.ggr"

    # Act
    palette = ImagePalette.load(test_file)

    # Assert
    # load returns raw palette information
    assert len(palette[0]) == 1024
    assert palette[1] == "RGBA"