Within the Company.Project.vbproj assembly, I have a class FriendClass.vb which scope is Friend (internal in C#).Now I wish to test this FriendClass.vb from within the Company.Project.Tests.vbproj assembly. I know about the InternalsVisibleToAttribute, but that is not an option in Visual Basic .NET 2.0, as it is only available with C#, in .NET 2.0 (see here).I would like to create myself a proxy class using this internal FriendClass from within my testing assembly, so that I could instantiate it and do the testings accordingly.
Probably a dumb question, but can you write a unit test project in one language to test against another project in a different language?I'd like to translate one of our VB assemblies into C#, but want to build unit tests to verify the results. I've tried to set a unit test project up to do this, but I can't seem to access the VB code within a unit test... I can't figure out if I'm just missing/doing something stupid, or it really isn't allowed.
I know that the MenuItem class contains an internal class named MenuItemData, which contains itself an internal member named onDrawItem. Given a MenuItem, I want to retrieve the object corresponding to the member onDrawItem. But all I manage to do is to get the FieldInfo, not the object itself.
Here is my code: Dim obj As Object Dim fi As FieldInfo Dim item as System.Windows.Forms.MenuItem Dim mType As System.Type [Code] .....
In my most recent question: Unit Testing Best Practice? / C# InternalsVisibleTo() attribute for VBNET 2.0 while testing?, I was asking about InternalsVisibleToAttribute.I have read the documentation on how to use it, and everything is fine and understood. However,I can't instantiate my class Groupe from my Testing project.I want to be able to instantiate my internal class in my wrapper assembly, from my testing assembly.
EDIT #1
Here's the compile-time error I get when I do try to instantiate my type:
Erreur 2 'Carra.Exemples.Blocs.ActiveDirectory.Groupe' n'est pas accessible dans ce contexte, car il est 'Private'. C:OpenProjectsExemplesSrcCarra.Exemples.Blocs.ActiveDirectoryCarra.Exemples.Blocs.ActiveDirectory.TestsGroupeTests.vb 9 18 Carra.Exemples.Blocs.ActiveDirectory.Tests
(This says that my type is not accessible in this context, because it is private.) But it's Friend (internal)
EDIT #2
Here's a piece of code as suggested for the Groupe class implementing the Public interface IGroupe:
I created some string resources in My.Resources. I want to use those resources in my unit tests.How do I expose these resources to my unit test project?I tried simply setting the Access Modifier to "Public" for the resources. This made it so that I can compile the code, but it is ignoring the culture setting.
Bo.My.Resources.Culture = New CultureInfo("en-GB", False) LocaleTest(Bo.My.Resources.Yes, "Yea")
I am writing a test unit (in MSTest) that consumes an XML file located in the testing project. I have this (solution name is BusinessLogic, project name is BusinessLogicTest):
Public TestContext As TestContext <TestMethod()> <DeploymentItem("BusinessLogic.BusinessLogicTestTestData.xml")> <DataSource("Microsoft.VisualStudio.TestTools.DataSource.XML", "|DataDirectory|TestData.xml", "Row", DataAccessMethod.Sequential)> _ Public Sub ConvertIntToRoman_DataDrivenTest [Code] .....
However, when I run the test I get an error: The unit test adapter failed to connect to the data source or to read the data. I belive it's something to do with my DeploymentItem and/or DataSource, however, I cannot find an example (in VB) that works anywhere.
Is there currently any possible way to report progress of my unit test? I have a test that could take up to a hour, and I don't want to sit there not knowing what % it is done with. I have tried writing with debug.print and trace.writeline, neither of which seem to work.
I am having a problem with a unit test I have created. First time doing this so I am not sure why I am getting this error [code]Test method ETDS_Unit_Tests.LoginTest.ValidateUserNameTest threw exception: System.Data.SqlClient.SqlException: A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server).This is the same connection that my software is using, and the software runs fine, only the unit test is failing. What I am doing wrong? It Seems to fail one time for each datarow in the table.Also, I am using a Linq Query in the method that I being tested. I believe that this may be what is causing my error.
Usually when you add one (in Visual Basic), it pops up a message asking if you want to enable an option that lets the test access things like private methods etc.
However, I am editing a solution that does not have this enabled. I'd like to enable it so my unit tests will work, but I can't find the setting.
Can anyone tell me how to enable it after the project has been created?
I have the following code in vb.net that calculates the amount before tax was applied:
Public Shared Function CalculateRateBeforeTax(ByVal rate As Decimal, ByVal tax As Decimal) As Decimal Dim base As Decimal = rate / (1 + (tax / 100.0)) Return Math.Round(base,2)[code]....
I put the above scenarios into some unit tests using c# and using the nunit testing framework. The first scenario passes, but the other fails and I am not sure how I can get it to pass. Here is are my tests:
[TestFixture] class TaxTests {[code].....
As I said before, the first test passes, but the results of the other tests are:
Second Test expected 305.1600000000000003d But was: 305.1643192488263d
Third Test expected 95.54999999999997 But was: 95.55555555555555557d
How can I write a unit test to test the actualWidth property to a userControl in Silverligh 4? I hoped that this method would pass, but it fails. I am using the Silverlight ToolKit april 2010, and VS 2010.
<TestMethod()> _ Public Sub TestAcrtualWidth() Me.MyUserControl.Width = 100 Me.MyUserControl.UpdateLayout() Assert.IsTrue(Me.MyUserControl.ActualWidth > 0) End Sub
I am trying to store an enum in my application settings. This enum is defined within my main assembly in the same namespace. When I try to find the type under the application settings, it seems like I can't find any types within my namespace. I can see all the types of the assemblies I reference though.
I have a simple unit test which tests that a validation function picks up a specific validation issue. The validation item returns a simple object with Item & Message properties. I've written a unit test for this function but this always fails even though I know the function works as expected.
<TestMethod()> Public Sub ContractNote_ValidateForManualInputTest_TradeOrderValueComparison() 'Can't get this test to work even though validation works! Dim CN As ContractNote = New ContractNote Dim Trade As New TradeOrder
[code].....
I've implemented IComparable on ValidationItem (I have a separate unit test which confirms this works). Am I Using CollectionAssert correctly?
I am trying to create a unit test similar to how I would have done one in C# but am struggling with the lambdas in vb. Bascially I am trying to mock a class and then create a stub and return. In C# I would have done something like;
I just bought the MCTS Self-Paced Training Kit (Exam 70-561): Microsoft.NET Framework 3.5 - ADO.NET Application Development, and am trying to do the Lab Exercises now. Allready at the first exercise (point 8), where I am supposed to make an "UNIT TEST",[code]
One of my unit tests seems to randomly pass or fail when I run it. The only thing that makes sense to me for why this is happening is if the data in the database is getting into a different state each time the test is ran, but I use transactions to rollback the database in each test - unless it's not working right. Here's my base unit test class and the unit test class that's having the problem. Can you see anything I might be missing or what else I should look for?
This happens with TestDriven.Net and the Visual Studio Unit Test Framework.
As I develop code, I often want to unit test some of the building blocks of a class even if they are normally private. If my unit tests are inside the project, I can use "Friend" to accomplish this and still keep the functions private for normal use. But I would rather move my NUnit tests into their own separate project(s). How do I achieve the effe vb.net 2005?
Granted this example is pretty weak, but how could I write a test method that to prove that CallThis() gets called everytime that the input parameter s = "S"?
How to get property.value from reflection.assembly?
Dim assembly As Assembly = assembly.GetExecutingAssembly() For Each assemblyType As Type In assembly.GetTypes() If assemblyType.IsSubclassOf(GetType(Form)) Then
I would like to load a class library at runtime. As such, I thought I could use reflection to do so.However I am receiving the exception "Unable to cast object of type 'MyLibrary.LogSystem' to type 'MainApp.ILog'." in my main application. To start with I created a Class Library (VS2010) with a simple interface and one class that implements the interface.
I am reference DLL files programming in my application. My question is once they have been called and used is there anyway to "un-reference" them so I can move them?
I'm trying to implement unit tests for my NHibernate data access layer. The first test, which I drew from an example I found on the web [URL] is just trying to recreate the database using my domain classes/mappings. I've been able to get this sample working in C# (Product table is created in database) but not when I implement it in VB.NET.I have two projects, Todd.Core (containing Product class and Product.hbm.xml mapping) and Todd.Core.Test (containing Test Fixture and NHibernate configuration). When I attempt to run this test using MBUnit GUI I get this message (line 10 is the call to the .Configure method):
Message: Could not compile the mapping document: Todd.Core.Product.hbm.xml
As I develop code, I often want to unit test some of the building blocks of a class even if they are normally private. If my unit tests are inside the project, I can use "Friend" to accomplish this and still keep the functions private for normal use. But I would rather move my NUnit tests into their own separate project(s).