Running VSTS unit tests on WM5 devices

Porting Code and Unit Tests to the device: After much work, we ported the source code and unit tests from the desktop versions of CompositeUI, CompositeUI.Winforms, and ObjectBuilder projects to corresponding Windows Mobile 5.0 Pocket PC projects. We even got the unit tests to pass when run on the VSTS unit tester. We’re done right? Wrong. In…

4

Mobile CAB Notes

Module Deployment and Dependencies When you create modules based on CAB, they’re not automatically copied to the device because the shell has no reference to the modules. Here is what you have to do in order to get these assemblies deployed to the device in the correct location. Right click on the solution and select…

0

Limitations of Mobile CAB relative to full CAB

This document contains a list of limitations the CF version of CAB has compared with the desktop version.   Events We were unable to provide support for generic event publications and subscriptions. As a result, right now publications and subscriptions must be of type EventArgs().

0

Differences between full .NET framework and .NETcf

Here are some differences we’ve discovered between the desktop and compact framework. methodInfo.Invoke: Exceptions raised by a dynamic invoke are raised a little differently. The dekstop wraps the raised exception inside a System.Exception instance, so the actual exception is stored in the InnerException property. However, on the CF, the actual exception is raised directly instead…

0

Porting Issues: CompositeUI.Winforms Unit Tests

Issue 1:   .NET CF Does not support System.Windows.Forms.GiveFeedbackEventArgs and DragEventArgs. In general lacks design time support. (resolution: short term – remove design time support, long term…)   Issue 2:   .NET CF Does not support System.Windows.Forms.TabControl.SelectedTab property. (resolution: use SelectedIndex property instead)   Issue 3:   .NET CF Does not support System.Windows.Forms.TabControl.TabPageSelection.Remove method. (resolution:…

0

Porting Issues: CompositeUI.Winforms assembly

Issue 1:   .NET CF Does not support System.Windows.Forms.GiveFeedbackEventArgs and DragEventArgs. In general lacks design time support. (resolution: short term – remove design time support, long term…)   Issue 2:   .NET CF Does not support System.Windows.Forms.TabControl.SelectedTab property. (resolution: use SelectedIndex property instead)   Issue 3:   .NET CF Does not support System.Windows.Forms.TabControl.TabPageSelection.Remove method. (resolution:…

1

Porting Issues: CompositeUI Unit Tests

Generic Support We had to remove support for generic events/delegates. Here are the unit tests that we commented out: CanRegisterGenericEventHandlerSignatures SubscriberHandlesGenericEvent GenericSubscribersCanBeUsed Threading Support We commented out the following unit tests because we don’t currently support different threads: RunInUserInterfaceThread RunInUserInterfaceThreadExceptionsAreReported Unit Tests We had to remove the the following: ModuleLoaderServiceFixture — because it uses the…

0

Porting Issues: CompositeUI assembly

Issue 1:   .NET CF Does not support System.Runtime.Serialization The follow types have been given the Serializable attribute: CyclicDependencyFoundExceptionStateStateElementStateExceptionBuilderStrategyExceptionAdapterMapServiceExceptionCommandExceptionConfigurationExceptionSolutionProfileReaderExceptionSolutionProfileElementModuleInfoElementRoleElementEventBrokerExceptionEventTopicExceptionModuleEnumeratorExceptionModuleLoadExceptionServiceMissingExceptionStatePersistenceException Can we simply make these types nonserializable for CF? (resolution: ???)   Issue 2:   .NET CF Does not support System.Diagnostics.TraceSource (resolution: removed tracing) commented out ClassNameTraceSourceAttribute   Issue :3   .NET CF does not support…

0

Porting Issues: ObjectBuilder Unit Tests

Deprecated unit tests related to circular references. This feature is not supported in the CF version of CAB. Compact Framework seems to through exceptions differently than the full .Net framework. On the full framework, MethodInfo.Invoke may throw an “Exception” exception wrapping the real exception which can be found in InnerExeption property. On the CF, the…

0

Porting Issues: ObjectBuilder assembly

Here are most of the issues related to porting the ObjectBuilder assembly to .NETcf:Issue 1: .NET CF Does not support System.Runtime.Serialization(resolution: removed support for circular dependency) Issue 2: .NET CF Does not support System.Diagnostics.TraceSource(resolution: removed tracing) Issue 3: .NET CF Does not support System.Security.Permissions.SecurityPermission(resolution: removed SecurityPermission attribute use) Issue 4: .NET CF does not support…

0