I included a failing test (modulo namespaces) in my email.
Was that a stupid thing to do?

On Fri, Dec 17, 2010 at 5:23 PM, Fabio Maulo <[email protected]> wrote:

> I don't know.
> With a failing test, perhaps, we may have the chance to say something more
> sure.
>
>
> On Fri, Dec 17, 2010 at 2:20 PM, Richard Birkby <[email protected]> wrote:
>
>> So have I done something stupid with my code?
>>
>>
>> On Fri, Dec 17, 2010 at 4:24 PM, Fabio Maulo <[email protected]>wrote:
>>
>>> everything is possible in a release if we don't have a test for your
>>> specific usecase.
>>> no-test= everything possible
>>>
>>>
>>> On Fri, Dec 17, 2010 at 11:59 AM, Richard Birkby <[email protected]>wrote:
>>>
>>>> I've upgrade a project of mine from NH2 to NH3 and now get an error. So
>>>> I created a testcase reduction - but I can't believe this is a bug - at
>>>> least not one that would have got into a release. I'd like to know if I'm
>>>> being stupid before I create a new JIRA report. What is wrong with this
>>>> code? The error produced is:
>>>>
>>>> 14:51:43,918 DEBUG SQL:0 -
>>>>     SELECT
>>>>         e1x1_.id as y0_
>>>>     FROM
>>>>         Entity2 this_
>>>> 14:51:44,480 WARN  ADOExceptionReporter:0 -
>>>> System.Data.SqlClient.SqlException: The multi-part identifier "e1x1_.id"
>>>> could not be bound.
>>>>
>>>>
>>>>         [Test]
>>>>         public void ShouldContainJoin()
>>>>         {
>>>>             using (var session = OpenSession())
>>>>             {
>>>>                 using (var ls = new SqlLogSpy())
>>>>                 {
>>>>                     ICriteria criteria =
>>>> session.CreateCriteria(typeof(Entity2), "e2")
>>>>                         .CreateAlias("e2.Entity1", "e1")
>>>>                         .SetProjection(Projections.Property("e1.Id"));
>>>>
>>>>                     criteria.List<Guid>();
>>>>                 }
>>>>             }
>>>>         }
>>>>
>>>> -------
>>>>
>>>> public class Entity1
>>>> {
>>>>  public virtual Guid Id { get; set; }
>>>> }
>>>>
>>>> public class Entity2
>>>>  {
>>>>         public virtual Entity1 Entity1 { get; set; }
>>>>         public virtual Entity3 Entity3 { get; set; }
>>>>
>>>>         public virtual bool Equals(Entity2 other)
>>>>         {
>>>>             if (ReferenceEquals(null, other))
>>>>             {
>>>>                 return false;
>>>>             }
>>>>             if (ReferenceEquals(this, other))
>>>>              {
>>>>                 return true;
>>>>             }
>>>>             return Equals(other.Entity1, Entity1) &&
>>>> Equals(other.Entity3, Entity3);
>>>>         }
>>>>
>>>>          public override bool Equals(object obj)
>>>>         {
>>>>             return Equals(obj as Entity2);
>>>>         }
>>>>
>>>>         public override int GetHashCode()
>>>>         {
>>>>             unchecked
>>>>             {
>>>>                 return ((Entity1 != null ? Entity1.GetHashCode() : 0) *
>>>> 397) ^ (Entity3 != null ? Entity3.GetHashCode() : 0);
>>>>             }
>>>>         }
>>>>     }
>>>>
>>>> public class Entity3
>>>> {
>>>> public virtual Guid Id { get; set; }
>>>>  }
>>>>
>>>> -----
>>>>
>>>> <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2"
>>>> assembly="NHibernate.Test"
>>>>                    namespace="NHibernate.Test.NHSpecificTest.NHXXXX">
>>>>  <class name="Entity1" table="Entity1">
>>>>  <id name="Id" type="Guid" column="id">
>>>> <generator class="guid" />
>>>>  </id>
>>>> </class>
>>>>  <class name="Entity2" table="Entity2">
>>>>  <composite-id>
>>>>         <key-many-to-one name="Entity1" class="Entity1" column="id1"
>>>>  />
>>>>         <key-many-to-one name="Entity3" class="Entity3" column="id3"
>>>>  />
>>>>      </composite-id>
>>>>  </class>
>>>>  <class name="Entity3" table="Entity3">
>>>> <id name="Id" type="Guid" column="id">
>>>>  <generator class="guid" />
>>>> </id>
>>>> </class>
>>>> </hibernate-mapping>
>>>>
>>>
>>>
>>>
>>> --
>>> Fabio Maulo
>>>
>>>
>>
>
>
> --
> Fabio Maulo
>
>

Reply via email to