File: test_utils.py

package info (click to toggle)
python-moto 5.1.18-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 116,520 kB
  • sloc: python: 636,725; javascript: 181; makefile: 39; sh: 3
file content (49 lines) | stat: -rw-r--r-- 1,484 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
import pytest

from moto.emr.utils import ReleaseLabel


def test_invalid_release_labels_raise_exception():
    invalid_releases = [
        "",
        "0",
        "1.0",
        "emr-2.0",
    ]
    for invalid_release in invalid_releases:
        with pytest.raises(ValueError):
            ReleaseLabel(invalid_release)


def test_release_label_comparisons():
    assert str(ReleaseLabel("emr-5.1.2")) == "emr-5.1.2"

    assert ReleaseLabel("emr-5.0.0") != ReleaseLabel("emr-5.0.1")
    assert ReleaseLabel("emr-5.0.0") == ReleaseLabel("emr-5.0.0")

    assert ReleaseLabel("emr-5.31.0") > ReleaseLabel("emr-5.7.0")
    assert ReleaseLabel("emr-6.0.0") > ReleaseLabel("emr-5.7.0")

    assert ReleaseLabel("emr-5.7.0") < ReleaseLabel("emr-5.10.0")
    assert ReleaseLabel("emr-5.10.0") < ReleaseLabel("emr-5.10.1")

    assert ReleaseLabel("emr-5.60.0") >= ReleaseLabel("emr-5.7.0")
    assert ReleaseLabel("emr-6.0.0") >= ReleaseLabel("emr-6.0.0")

    assert ReleaseLabel("emr-5.7.0") <= ReleaseLabel("emr-5.17.0")
    assert ReleaseLabel("emr-5.7.0") <= ReleaseLabel("emr-5.7.0")

    releases_unsorted = [
        ReleaseLabel("emr-5.60.2"),
        ReleaseLabel("emr-4.0.1"),
        ReleaseLabel("emr-4.0.0"),
        ReleaseLabel("emr-5.7.3"),
    ]
    releases_sorted = [str(label) for label in sorted(releases_unsorted)]
    expected = [
        "emr-4.0.0",
        "emr-4.0.1",
        "emr-5.7.3",
        "emr-5.60.2",
    ]
    assert releases_sorted == expected