I forked rhino.etl from hibernating rhinos in an attempt to target the 4.0 
framework and introduce dynamics into the mix. I thought it would be a fun 
exercise :) I finally have the projects and build script targeting 4.0 but 
I have three failing tests, which were not failing prior to the 4.0 update.

Rhino.Etl.Tests.Dsl.AggregationFixture.CanPerformAggregationFromDsl [FAIL]
Assert.Equal() Failure
Position: First difference is at position 0
Expected: milk, sugar, coffee
Actual: System.String[]
Stack Trace:
c:\Users\jasonmeckley\Documents\Visual Studio 
2010\Projects\rhino-etl\Rhino.Etl.Tests\Dsl\AggregationFixture.cs(33,0) at 
Rhino.Etl.Tests.Dsl.AggregationFixture.CanPerformAggregationFromDsl()

Rhino.Etl.Tests.Dsl.JoinFixture.CanWriteJoinsToDatabase [FAIL]
Assert.Equal() Failure
Position: First difference is at position 18
Expected: ayende rahien is: admin, janitor, employee, customer
Actual: ayende rahien is: System.String[]
Stack Trace:
c:\Users\jasonmeckley\Documents\Visual Studio 
2010\Projects\rhino-etl\Rhino.Etl.Tests\Dsl\JoinFixture.cs(41,0) at 
Rhino.Etl.Tests.Dsl.JoinFixture.CanWriteJoinsToDatabase()

Rhino.Etl.Tests.Dsl.WireEtlProcessEventsFixture.CheckIfOnRowProcessedEventWasWired
 
[FAIL]
Assert.Equal() Failure
Position: First difference is at position 0
Expected: chocolate, sugar, coffee
Actual: System.String[]
Stack Trace:
c:\Users\jasonmeckley\Documents\Visual Studio 
2010\Projects\rhino-etl\Rhino.Etl.Tests\Dsl\WireEtlProcessEventsFixture.cs(33,0)at
 
Rhino.Etl.Tests.Dsl.WireEtlProcessEventsFixture.
CheckIfOnRowProcessedEventWasWired()

Rhino.Etl.Tests.LoadTest.LoadTestJoinsFixture.CanDoLargeJoinsefficently 
[SKIP]
It depends too much of what the machine is doing and how powerful it is

85 total, 3 failed, 1 skipped, took 155.514 seconds
default.ps1:Error: Failed to execute tests

The problem appears to be with boo & converting an enumerable to an array 
and preforming a string.Join().
for example
[Aggregate.boo line 12]
aggregate.names.ToArray(string)

I thought this may be a problem with Linq and another ToArray<string>() 
method somewhere so I replaced string.Join(", ", 
accumulate.names.ToArray(string)) with accumulate.names. This got me one 
step closer but the test still fails with 
Test 'Rhino.Etl.Tests.Dsl.AggregationFixture.CanPerformAggregationFromDsl' 
failed: Assert.Equal() Failure
Position: First difference is at position 0
Expected: milk, sugar, coffee
Actual:   [milk, sugar, coffee]
Dsl\AggregationFixture.cs(33,0): at 
Rhino.Etl.Tests.Dsl.AggregationFixture.CanPerformAggregationFromDsl()

I assume the brackets are coming from Boo and how it overrides ToString() 
for enumerables.

Ideally the tests are sound and failing tests means breaking changes. What 
should I do in this situation?
a. updates the boo scripts so the tests pass
b. update boo and/or Rhino.Dsl to properly handle ToArray(string) and leave 
the tests alone

-- 
You received this message because you are subscribed to the Google Groups 
"Rhino Tools Dev" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/rhino-tools-dev/-/Vl_INXqsMUMJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rhino-tools-dev?hl=en.

Reply via email to