Skip to content

Commit b57c463

Browse files
authored
Fix #880 (#945)
* provide more specific test file location * Replace assertUnreachable with fail #880
1 parent 2416665 commit b57c463

20 files changed

Lines changed: 96 additions & 95 deletions

Src/IronPythonTest/Cases/CaseGenerator.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ public IEnumerator GetEnumerator() {
6262
.SetCategory(category)
6363
.SetName(name)
6464
.Returns(0);
65+
result.Properties.Add("_CodeFilePath", testcase.Path);
6566

6667
var runIgnored = !string.IsNullOrWhiteSpace(TestContext.Parameters["RUN_IGNORED"]);
6768

Tests/interop/net/method/test_operators.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,22 +28,22 @@ def test_all_ops(self):
2828
z = AllOpsClass(-6)
2929

3030
#if x: pass
31-
#else: self.assertUnreachable()
31+
#else: self.fail("Unreachable code reached")
3232
#
3333
#Flag.Check(100)
3434
#
35-
#if z: self.assertUnreachable()
35+
#if z: self.fail("Unreachable code reached")
3636
#else: pass
3737
#
3838
#Flag.Check(100)
3939
#
40-
#if not x: self.assertUnreachable()
40+
#if not x: self.fail("Unreachable code reached")
4141
#else: pass
4242
#
4343
#Flag.Check(100)
4444
#
4545
#if not z: pass
46-
#else: self.assertUnreachable()
46+
#else: self.fail("Unreachable code reached")
4747
#
4848
#Flag.Check(100)
4949

@@ -288,4 +288,4 @@ def test_python_style(self):
288288
self.assertEqual(AllOpsClass.__gt__(x, y), True); Flag.Check(310)
289289
self.assertEqual(AllOpsClass.__ge__(x, y), True); Flag.Check(340)
290290

291-
run_test(__name__)
291+
run_test(__name__)

Tests/interop/net/type/test_reachtype.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ def test_interesting_names_as_class_name(self):
7373
def test_nothing_public(self):
7474
try:
7575
import NothingPublic
76-
self.assertUnreachable()
76+
self.fail("Unreachable code reached")
7777
except ImportError:
7878
pass
7979

@@ -129,7 +129,7 @@ def test_type_without_namespace(self):
129129
# internal type
130130
try:
131131
import InternalRefTypeWithoutNS
132-
self.assertUnreachable()
132+
self.fail("Unreachable code reached")
133133
except ImportError:
134134
pass
135135

@@ -206,7 +206,7 @@ def test_type_causing_load_exception(self):
206206
B = 10
207207
try:
208208
from PossibleLoadException import B
209-
self.assertUnreachable()
209+
self.fail("Unreachable code reached")
210210
except ImportError:
211211
pass
212212

Tests/modules/io_related/test_cPickle.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -631,7 +631,7 @@ def persistent_load(id):
631631
# exceptions vary between cPickle & Pickle
632632
try:
633633
up.load()
634-
self.assertUnreachable()
634+
self.fail("Unreachable code reached")
635635
except Exception as e:
636636
pass
637637

Tests/modules/misc/test__weakref.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ class C: pass
7979
try:
8080
type(wr).__add__.__get__(wr, None)() # object is dead, should throw
8181
except: pass
82-
else: self.assertUnreachable()
82+
else: self.fail("Unreachable code reached")
8383

8484

8585
# kwarg call
@@ -100,14 +100,14 @@ def __add__(self, other):
100100
try:
101101
type(x).__sub__.__get(x, None)('abc')
102102
except AttributeError: pass
103-
else: self.assertUnreachable()
103+
else: self.fail("Unreachable code reached")
104104

105105
if is_cli: # cli accepts kw-args everywhere
106106
# calling non-existent method should raise attribute error (kw-arg version)
107107
try:
108108
type(x).__sub__.__get(x, None)(other='abc')
109109
except AttributeError: pass
110-
else: self.assertUnreachable()
110+
else: self.fail("Unreachable code reached")
111111

112112
def test_slot_repr(self):
113113
class C: pass

Tests/modules/type_related/test__struct.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -190,7 +190,7 @@ def test_new_init(self):
190190
a = _struct.Struct('c')
191191
try:
192192
a.__init__('bad')
193-
self.assertUnreachable()
193+
self.fail("Unreachable code reached")
194194
except _struct.error as e:
195195
pass
196196

Tests/test_builtinfunc.py

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -552,22 +552,22 @@ def test_eval(self):
552552

553553
try:
554554
eval('1+')
555-
self.assertUnreachable()
555+
self.fail("Unreachable code reached")
556556
except Exception as exp:
557557
pass
558558
else:
559-
self.assertUnreachable()
559+
self.fail("Unreachable code reached")
560560

561561
# gh1636 - don't use self.assertRaises since it hides the error
562562
zzz = 1
563563
try:
564564
eval("zzz", {})
565-
self.assertUnreachable()
565+
self.fail("Unreachable code reached")
566566
except NameError:
567567
pass
568568
try:
569569
eval("zzz", {}, None)
570-
self.assertUnreachable()
570+
self.fail("Unreachable code reached")
571571
except NameError:
572572
pass
573573

@@ -791,11 +791,11 @@ def test_round(self):
791791

792792
try:
793793
round(number=2.5, ndigits=1.1)
794-
self.assertUnreachable()
794+
self.fail("Unreachable code reached")
795795
except TypeError as err:
796796
self.assertEqual("'float' object cannot be interpreted as an integer", str(err))
797797
else:
798-
self.assertUnreachable()
798+
self.fail("Unreachable code reached")
799799

800800
# type implements __round__
801801
# correct number of arguments
@@ -814,47 +814,47 @@ def test_round(self):
814814
# too many arguments
815815
try:
816816
round(roundable, 1, 2)
817-
self.assertUnreachable()
817+
self.fail("Unreachable code reached")
818818
except TypeError as err:
819819
self.assertEqual("round() takes at most 2 arguments (3 given)", str(err))
820820
else:
821-
self.assertUnreachable()
821+
self.fail("Unreachable code reached")
822822

823823
# type does not implement __round__
824824
# too few arguments
825825
try:
826826
round(self.NotRoundable())
827-
self.assertUnreachable()
827+
self.fail("Unreachable code reached")
828828
except TypeError as err:
829829
self.assertEqual("type NotRoundable doesn't define __round__ method", str(err))
830830
else:
831-
self.assertUnreachable()
831+
self.fail("Unreachable code reached")
832832

833833
# correct number of arguments
834834
try:
835835
round(self.NotRoundable(), 1)
836-
self.assertUnreachable()
836+
self.fail("Unreachable code reached")
837837
except TypeError as err:
838838
self.assertEqual("type NotRoundable doesn't define __round__ method", str(err))
839839
else:
840-
self.assertUnreachable()
840+
self.fail("Unreachable code reached")
841841

842842
try:
843843
round(number=self.NotRoundable(), ndigits=1)
844-
self.assertUnreachable()
844+
self.fail("Unreachable code reached")
845845
except TypeError as err:
846846
self.assertEqual("type NotRoundable doesn't define __round__ method", str(err))
847847
else:
848-
self.assertUnreachable()
848+
self.fail("Unreachable code reached")
849849

850850
# too many arguments
851851
try:
852852
round(self.NotRoundable(), 1, 2)
853-
self.assertUnreachable()
853+
self.fail("Unreachable code reached")
854854
except TypeError as err:
855855
self.assertEqual("round() takes at most 2 arguments (3 given)", str(err))
856856
else:
857-
self.assertUnreachable()
857+
self.fail("Unreachable code reached")
858858

859859
self.assertEqualAndCheckType(round(3), 3, int)
860860
self.assertEqualAndCheckType(round(3, 0), 3, int)
@@ -892,51 +892,51 @@ def test_round(self):
892892

893893
try:
894894
round(number=2, ndigits=1.1)
895-
self.assertUnreachable()
895+
self.fail("Unreachable code reached")
896896
except TypeError as err:
897897
self.assertEqual("'float' object cannot be interpreted as an integer", str(err))
898898
else:
899-
self.assertUnreachable()
899+
self.fail("Unreachable code reached")
900900

901901
try:
902902
round(number=111111111111111111111111111111, ndigits=1.1)
903-
self.assertUnreachable()
903+
self.fail("Unreachable code reached")
904904
except TypeError as err:
905905
self.assertEqual("'float' object cannot be interpreted as an integer", str(err))
906906
else:
907-
self.assertUnreachable()
907+
self.fail("Unreachable code reached")
908908

909909
try:
910910
round(float('nan'))
911-
self.assertUnreachable()
911+
self.fail("Unreachable code reached")
912912
except ValueError as err:
913913
self.assertEqual("cannot convert float NaN to integer", str(err))
914914
else:
915-
self.assertUnreachable()
915+
self.fail("Unreachable code reached")
916916

917917
try:
918918
round(float('inf'))
919-
self.assertUnreachable()
919+
self.fail("Unreachable code reached")
920920
except OverflowError as err:
921921
self.assertEqual("cannot convert float infinity to integer", str(err))
922922
else:
923-
self.assertUnreachable()
923+
self.fail("Unreachable code reached")
924924

925925
try:
926926
round(float('-inf'))
927-
self.assertUnreachable()
927+
self.fail("Unreachable code reached")
928928
except OverflowError as err:
929929
self.assertEqual("cannot convert float infinity to integer", str(err))
930930
else:
931-
self.assertUnreachable()
931+
self.fail("Unreachable code reached")
932932

933933
try:
934934
round(sys.float_info.max, -307)
935-
self.assertUnreachable()
935+
self.fail("Unreachable code reached")
936936
except OverflowError as err:
937937
self.assertEqual("rounded value too large to represent", str(err))
938938
else:
939-
self.assertUnreachable()
939+
self.fail("Unreachable code reached")
940940

941941
actual = round(float('inf'), 1)
942942
self.assertTrue(math.isinf(actual) and actual > 0)
@@ -981,11 +981,11 @@ def test_round(self):
981981

982982
try:
983983
round(5.5, self.NonIntegralIndex())
984-
self.assertUnreachable()
984+
self.fail("Unreachable code reached")
985985
except TypeError as err:
986986
self.assertEqual("__index__ returned non-int (type str)", str(err))
987987
else:
988-
self.assertUnreachable()
988+
self.fail("Unreachable code reached")
989989

990990
def test_cp16000(self):
991991
class K(object):

0 commit comments

Comments
 (0)