Skip to content

Commit c6c904b

Browse files
Test case for NH-3079 on branch master
1 parent 2b6c398 commit c6c904b

4 files changed

Lines changed: 4425 additions & 3752 deletions

File tree

Lines changed: 220 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,220 @@
1+

2+
3+
using System;
4+
using System.Collections.Generic;
5+
namespace NHibernate.Test.NHSpecificTest.NH3079
6+
{
7+
public class PersonCpId
8+
{
9+
private Int32? idA;
10+
public Int32? IdA
11+
{
12+
get { return idA; }
13+
set { idA = value; }
14+
}
15+
16+
private Int32? idB;
17+
public Int32? IdB
18+
{
19+
get { return idB; }
20+
set { idB = value; }
21+
}
22+
23+
// override object.Equals
24+
public override bool Equals(object obj)
25+
{
26+
if (obj == null || GetType() != obj.GetType())
27+
{
28+
return false;
29+
}
30+
PersonCpId objCpId = (PersonCpId)obj;
31+
return this.IdA == objCpId.IdA && this.IdB == this.IdB;
32+
}
33+
34+
// override object.GetHashCode
35+
public override int GetHashCode()
36+
{
37+
return this.IdA.Value + this.IdB.Value;
38+
}
39+
}
40+
public class Person
41+
{
42+
private PersonCpId cpId;
43+
public virtual PersonCpId CpId
44+
{
45+
get { return cpId; }
46+
set { cpId = value; }
47+
}
48+
49+
private String name;
50+
public virtual String Name
51+
{
52+
get { return name; }
53+
set { name = value; }
54+
}
55+
56+
private ICollection<Employment> employmentList;
57+
public virtual ICollection<Employment> EmploymentList
58+
{
59+
get { return employmentList; }
60+
set { employmentList = value; }
61+
}
62+
}
63+
64+
public class EmployerCpId
65+
{
66+
private Int32? idA;
67+
public virtual Int32? IdA
68+
{
69+
get { return idA; }
70+
set { idA = value; }
71+
}
72+
73+
private Int32? idB;
74+
public virtual Int32? IdB
75+
{
76+
get { return idB; }
77+
set { idB = value; }
78+
}
79+
80+
// override object.Equals
81+
public override bool Equals(object obj)
82+
{
83+
if (obj == null || GetType() != obj.GetType())
84+
{
85+
return false;
86+
}
87+
EmployerCpId objCpId = (EmployerCpId)obj;
88+
return this.IdA == objCpId.IdA && this.IdB == this.IdB;
89+
}
90+
91+
// override object.GetHashCode
92+
public override int GetHashCode()
93+
{
94+
return this.IdA.Value + this.IdB.Value;
95+
}
96+
}
97+
98+
public class Employer
99+
{
100+
private EmployerCpId cpId;
101+
public virtual EmployerCpId CpId
102+
{
103+
get { return cpId; }
104+
set { cpId = value; }
105+
}
106+
107+
private String name;
108+
public virtual String Name
109+
{
110+
get { return name; }
111+
set { name = value; }
112+
}
113+
114+
private ICollection<Employment> employmentList;
115+
public virtual ICollection<Employment> EmploymentList
116+
{
117+
get { return employmentList; }
118+
set { employmentList = value; }
119+
}
120+
}
121+
122+
public class EmploymentCpId
123+
{
124+
private Int32? id;
125+
public virtual Int32? Id
126+
{
127+
get { return id; }
128+
set { id = value; }
129+
}
130+
131+
private Person personObj;
132+
public virtual Person PersonObj
133+
{
134+
get { return personObj; }
135+
set { personObj = value; }
136+
}
137+
138+
private Employer employerObj;
139+
public virtual Employer EmployerObj
140+
{
141+
get { return employerObj; }
142+
set { employerObj = value; }
143+
}
144+
145+
// override object.Equals
146+
public override bool Equals(object obj)
147+
{
148+
if (obj == null || GetType() != obj.GetType())
149+
{
150+
return false;
151+
}
152+
EmploymentCpId objCpId = (EmploymentCpId)obj;
153+
return this.Id == objCpId.Id && this.PersonObj.CpId == this.PersonObj.CpId && this.EmployerObj.CpId == this.EmployerObj.CpId;
154+
}
155+
156+
// override object.GetHashCode
157+
public override int GetHashCode()
158+
{
159+
return this.Id.Value + this.PersonObj.CpId.GetHashCode() + this.EmployerObj.CpId.GetHashCode();
160+
}
161+
}
162+
163+
public class Employment
164+
{
165+
private EmploymentCpId cpId;
166+
public virtual EmploymentCpId CpId
167+
{
168+
get { return cpId; }
169+
set { cpId = value; }
170+
}
171+
172+
private String name;
173+
public virtual String Name
174+
{
175+
get { return name; }
176+
set { name = value; }
177+
}
178+
}
179+
180+
public class PersonNoComponent
181+
{
182+
private Int32? idA;
183+
public virtual Int32? IdA
184+
{
185+
get { return idA; }
186+
set { idA = value; }
187+
}
188+
189+
private Int32? idB;
190+
public virtual Int32? IdB
191+
{
192+
get { return idB; }
193+
set { idB = value; }
194+
}
195+
196+
private String name;
197+
public virtual String Name
198+
{
199+
get { return name; }
200+
set { name = value; }
201+
}
202+
203+
// override object.Equals
204+
public override bool Equals(object obj)
205+
{
206+
if (obj == null || GetType() != obj.GetType())
207+
{
208+
return false;
209+
}
210+
PersonCpId objCpId = (PersonCpId)obj;
211+
return this.IdA == objCpId.IdA && this.IdB == this.IdB;
212+
}
213+
214+
// override object.GetHashCode
215+
public override int GetHashCode()
216+
{
217+
return this.IdA.Value + this.IdB.Value;
218+
}
219+
}
220+
}

0 commit comments

Comments
 (0)