File tree Expand file tree Collapse file tree
src/mock_vws/_flask_server Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -385,6 +385,7 @@ run.patch = [ "subprocess" ]
385385run.relative_files = true
386386run.source = [ " ci/" , " src/" , " tests/" ]
387387report.exclude_also = [
388+ " case _ as unreachable:\n\\ s*assert_never\\ (" ,
388389 " class .*\\ bProtocol\\ ):" ,
389390 " if TYPE_CHECKING:" ,
390391]
Original file line number Diff line number Diff line change 66import json
77from enum import StrEnum , auto
88from http import HTTPMethod , HTTPStatus
9+ from typing import assert_never
910from zoneinfo import ZoneInfo
1011
1112from beartype import beartype
@@ -37,17 +38,19 @@ class _TargetRaterChoice(StrEnum):
3738 PERFECT = auto ()
3839 RANDOM = auto ()
3940
40- def to_target_rater (self ) -> TargetTrackingRater :
41+ def to_target_rater (
42+ self : _TargetRaterChoice ,
43+ ) -> TargetTrackingRater :
4144 """Get the target rater."""
4245 match self :
43- case self .BRISQUE :
46+ case _TargetRaterChoice .BRISQUE :
4447 return BrisqueTargetTrackingRater ()
45- case self .PERFECT :
48+ case _TargetRaterChoice .PERFECT :
4649 return HardcodedTargetTrackingRater (rating = 5 )
47- case self .RANDOM :
50+ case _TargetRaterChoice .RANDOM :
4851 return RandomTargetTrackingRater ()
49- case _: # pragma: no cover
50- raise ValueError
52+ case _ as unreachable :
53+ assert_never ( unreachable )
5154
5255
5356@beartype
Original file line number Diff line number Diff line change 88import time
99from enum import StrEnum , auto
1010from http import HTTPMethod , HTTPStatus
11+ from typing import assert_never
1112
1213import requests
1314from beartype import beartype
@@ -39,15 +40,15 @@ class _ImageMatcherChoice(StrEnum):
3940 EXACT = auto ()
4041 STRUCTURAL_SIMILARITY = auto ()
4142
42- def to_image_matcher (self ) -> ImageMatcher :
43+ def to_image_matcher (self : _ImageMatcherChoice ) -> ImageMatcher :
4344 """Get the image matcher."""
4445 match self :
45- case self .EXACT :
46+ case _ImageMatcherChoice .EXACT :
4647 return ExactMatcher ()
47- case self .STRUCTURAL_SIMILARITY :
48+ case _ImageMatcherChoice .STRUCTURAL_SIMILARITY :
4849 return StructuralSimilarityMatcher ()
49- case _: # pragma: no cover
50- raise ValueError
50+ case _ as unreachable :
51+ assert_never ( unreachable )
5152
5253
5354@beartype
Original file line number Diff line number Diff line change 1212import uuid
1313from enum import StrEnum , auto
1414from http import HTTPMethod , HTTPStatus
15+ from typing import assert_never
1516
1617import requests
1718from beartype import beartype
@@ -62,15 +63,15 @@ class _ImageMatcherChoice(StrEnum):
6263 EXACT = auto ()
6364 STRUCTURAL_SIMILARITY = auto ()
6465
65- def to_image_matcher (self ) -> ImageMatcher :
66+ def to_image_matcher (self : _ImageMatcherChoice ) -> ImageMatcher :
6667 """Get the image matcher."""
6768 match self :
68- case self .EXACT :
69+ case _ImageMatcherChoice .EXACT :
6970 return ExactMatcher ()
70- case self .STRUCTURAL_SIMILARITY :
71+ case _ImageMatcherChoice .STRUCTURAL_SIMILARITY :
7172 return StructuralSimilarityMatcher ()
72- case _: # pragma: no cover
73- raise ValueError
73+ case _ as unreachable :
74+ assert_never ( unreachable )
7475
7576
7677@beartype
You can’t perform that action at this time.
0 commit comments