Skip to content

Commit 031fd88

Browse files
author
Nick Eubank
committed
change merge validate errors to MergeError from ValueError
1 parent 49ec31b commit 031fd88

File tree

2 files changed

+12
-12
lines changed

2 files changed

+12
-12
lines changed

pandas/core/reshape/merge.py

+5-5
Original file line numberDiff line numberDiff line change
@@ -986,23 +986,23 @@ def _validate(self, validate):
986986
# Check data integrity
987987
if validate in ["one_to_one", "1:1"]:
988988
if not left_unique and not right_unique:
989-
raise ValueError("Merge keys are not unique in either left"
989+
raise MergeError("Merge keys are not unique in either left"
990990
" or right dataset; not a one-to-one merge")
991991
elif not left_unique:
992-
raise ValueError("Merge keys are not unique in left dataset;"
992+
raise MergeError("Merge keys are not unique in left dataset;"
993993
" not a one-to-one merge")
994994
elif not right_unique:
995-
raise ValueError("Merge keys are not unique in right dataset;"
995+
raise MergeError("Merge keys are not unique in right dataset;"
996996
" not a one-to-one merge")
997997

998998
elif validate in ["one_to_many", "1:m"]:
999999
if not left_unique:
1000-
raise ValueError("Merge keys are not unique in left dataset;"
1000+
raise MergeError("Merge keys are not unique in left dataset;"
10011001
"not a one-to-many merge")
10021002

10031003
elif validate in ["many_to_one", "m:1"]:
10041004
if not right_unique:
1005-
raise ValueError("Merge keys are not unique in right dataset;"
1005+
raise MergeError("Merge keys are not unique in right dataset;"
10061006
" not a many-to-one merge")
10071007

10081008
elif validate in ['many_to_many', 'm:m']:

pandas/tests/reshape/test_merge.py

+7-7
Original file line numberDiff line numberDiff line change
@@ -789,11 +789,11 @@ def test_validation(self):
789789
merge(left, right_w_dups, left_index=True, right_index=True,
790790
validate='one_to_many')
791791

792-
with pytest.raises(ValueError):
792+
with pytest.raises(MergeError):
793793
merge(left, right_w_dups, left_index=True, right_index=True,
794794
validate='one_to_one')
795795

796-
with pytest.raises(ValueError):
796+
with pytest.raises(MergeError):
797797
merge(left, right_w_dups, on='a', validate='one_to_one')
798798

799799
# Dups on left
@@ -802,21 +802,21 @@ def test_validation(self):
802802
merge(left_w_dups, right, left_index=True, right_index=True,
803803
validate='many_to_one')
804804

805-
with pytest.raises(ValueError):
805+
with pytest.raises(MergeError):
806806
merge(left_w_dups, right, left_index=True, right_index=True,
807807
validate='one_to_one')
808808

809-
with pytest.raises(ValueError):
809+
with pytest.raises(MergeError):
810810
merge(left_w_dups, right, on='a', validate='one_to_one')
811811

812812
# Dups on both
813813
merge(left_w_dups, right_w_dups, on='a', validate='many_to_many')
814814

815-
with pytest.raises(ValueError):
815+
with pytest.raises(MergeError):
816816
merge(left_w_dups, right_w_dups, left_index=True,
817817
right_index=True, validate='many_to_one')
818818

819-
with pytest.raises(ValueError):
819+
with pytest.raises(MergeError):
820820
merge(left_w_dups, right_w_dups, on='a',
821821
validate='one_to_many')
822822

@@ -842,7 +842,7 @@ def test_validation(self):
842842
'um... weasel noise?']},
843843
index=range(3))
844844

845-
with pytest.raises(ValueError):
845+
with pytest.raises(MergeError):
846846
merge(left, right, on='a', validate='1:1')
847847

848848
result = merge(left, right, on=['a', 'b'], validate='1:1')

0 commit comments

Comments
 (0)