Skip to content

Conversation

@jeremymeng
Copy link
Contributor

@jonorossi Looks like co/contra-variance in generics is introduced after Net35.

@jeremymeng
Copy link
Contributor Author

Two NET35 tests also failed in master branch so I didn't look into them further.

  • Castle.DynamicProxy.Tests.BasicInterfaceProxyTestCase.ProxyTypeWithMultiDimentionalArrayAsParameter
  • CastleTests.BasicClassProxyTestCase.ProxyTypeWithMultiDimentionalArrayAsParameters

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indentation is stuffed up here.

@jonorossi
Copy link
Member

Two NET35 tests also failed in master branch so I didn't look into them further.

Why did those fail, because the master .NET 3.5 build is green:
http://builds.castleproject.org/project.html?projectId=Core

@jeremymeng
Copy link
Contributor Author

D:\github\jeremymeng\Core>git diff upstream/master

D:\github\jeremymeng\Core>

It might be due to difference or possible breaking changes in VS 2015 (Roslyn csc, PEVerify, ...)? I don't have VS 2013 installed on this machine to check. Will try VS 2013 tomorrow.

The failures are

Errors and Failures:
1) TearDown Failure : Castle.DynamicProxy.Tests.BasicInterfaceProxyTestCase.ProxyTypeWithMultiDimentionalArrayAsParameter
   System.TypeLoadException : Signature of the body and declaration in a method implementation do not match.  Type: 'Castle.Proxies.IClassWithMultiDimentionalArrayProxy'.  Assembly: 'DynamicProxyGenAssembly2, Version=0.0.0.0, Culture=neutral, PublicKeyToken=a621a9e7e5c32e69'.
TearDown : PeVerify reported error(s):

Microsoft (R) .NET Framework PE Verifier.  Version  3.5.30729.1
Copyright (c) Microsoft Corporation.  All rights reserved.

[MD]: .NET Framework Internal error: 0x801312f4 [token:0x00000002]
[MD]: .NET Framework Internal error: 0x801312f4 [token:0x00000004]
2 Error(s) Verifying D:\github\jeremymeng\Core\src\Castle.Core.Tests\bin\NET35-Debug\CastleDynProxy2.dll

at System.Reflection.Emit.TypeBuilder._TermCreateClass(Int32 handle, Module module)
at System.Reflection.Emit.TypeBuilder.CreateTypeNoLock()
at System.Reflection.Emit.TypeBuilder.CreateType()
at Castle.DynamicProxy.Generators.Emitters.AbstractTypeEmitter.CreateType(TypeBuilder type) in d:\github\jeremymeng\Core\src\Castle.Core\DynamicProxy\Generators\Emitters\AbstractTypeEmitter.cs:line 330
at Castle.DynamicProxy.Generators.Emitters.AbstractTypeEmitter.BuildType() in d:\github\jeremymeng\Core\src\Castle.Core\DynamicProxy\Generators\Emitters\AbstractTypeEmitter.cs:line 112
at Castle.DynamicProxy.Generators.InterfaceProxyWithTargetGenerator.GenerateType(String typeName, Type proxyTargetType, Type[] interfaces, INamingScope namingScope) in d:\github\jeremymeng\Core\src\Castle.Core\DynamicProxy\Generators\InterfaceProxyWithTargetGenerator.cs:line 150
at Castle.DynamicProxy.Generators.InterfaceProxyWithTargetGenerator.<>c__DisplayClass1.<GenerateCode>b__0(String n, INamingScope s) in d:\github\jeremymeng\Core\src\Castle.Core\DynamicProxy\Generators\InterfaceProxyWithTargetGenerator.cs:line 64
at Castle.DynamicProxy.Generators.BaseProxyGenerator.ObtainProxyType(CacheKey cacheKey, Func`3 factory) in d:\github\jeremymeng\Core\src\Castle.Core\DynamicProxy\Generators\BaseProxyGenerator.cs:line 418
at Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTarget(Type interfaceToProxy, Type[] additionalInterfacesToProxy, Object target, ProxyGenerationOptions options, IInterceptor[] interceptors) in d:\github\jeremymeng\Core\src\Castle.Core\DynamicProxy\ProxyGenerator.cs:line 338
at Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTarget(Type interfaceToProxy, Object target, ProxyGenerationOptions options, IInterceptor[] interceptors) in d:\github\jeremymeng\Core\src\Castle.Core\DynamicProxy\ProxyGenerator.cs:line 232
at Castle.DynamicProxy.ProxyGenerator.CreateInterfaceProxyWithTarget[TInterface](TInterface target, IInterceptor[] interceptors) in d:\github\jeremymeng\Core\src\Castle.Core\DynamicProxy\ProxyGenerator.cs:line 132
at Castle.DynamicProxy.Tests.BasicInterfaceProxyTestCase.ProxyTypeWithMultiDimentionalArrayAsParameter() in d:\github\jeremymeng\Core\src\Castle.Core.Tests\BasicInterfaceProxyTestCase.cs:line 110
--TearDown
at Castle.DynamicProxy.Tests.BasePEVerifyTestCase.RunPEVerifyOnGeneratedAssembly(String assemblyPath) in d:\github\jeremymeng\Core\src\Castle.Core.Tests\BasePEVerifyTestCase.cs:line 143
at Castle.DynamicProxy.Tests.BasePEVerifyTestCase.TearDown() in d:\github\jeremymeng\Core\src\Castle.Core.Tests\BasePEVerifyTestCase.cs:line 113

2) Test Failure : CastleTests.BasicClassProxyTestCase.ProxyTypeWithMultiDimentionalArrayAsParameters
     Expected string length 11 but was 7. Strings differ at index 5.
  Expected: "Do Do2 Do3 "
  But was:  "Do Do3 "
  ----------------^

at CastleTests.BasicClassProxyTestCase.ProxyTypeWithMultiDimentionalArrayAsParameters() in d:\github\jeremymeng\Core\src\Castle.Core.Tests\BasicClassProxyTestCase.cs:line 302```

@jeremymeng
Copy link
Contributor Author

@jonorossi I created a default AppVeyor build with build.cmd NET35 as the build command. It also failed with the same test failures. Do you know what I am missing here?

https://ci.appveyor.com/project/jeremymeng/core/build/3.3.4.1

My master branch is even with upstream/master: master...jeremymeng:master

@jonorossi
Copy link
Member

Comment moved to #122 (comment)

.editorconfig Outdated
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You've got an mistake here, intent vs indent. Looks like it is also wrong under csproj which I assumed you copy-pasted.

@jonorossi
Copy link
Member

Can you squash your commits after fixing the mistake. I'll then merge this.

If you want to continue discussing the multidimensional array unit tests failing on your machine and AppVeyor lets open a new issue.

@jonorossi jonorossi added this to the v4.0 milestone Jan 4, 2016
@jeremymeng
Copy link
Contributor Author

I opened #122 for the test failures.

@jeremymeng
Copy link
Contributor Author

@jonorossi I pushed the changes as a single commit. Or do you prefer splitting them into two?

jonorossi added a commit that referenced this pull request Jan 6, 2016
@jonorossi jonorossi merged commit 29905b0 into castleproject:netcore Jan 6, 2016
@jonorossi
Copy link
Member

Thanks, one commit is fine.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants