Click here to Skip to main content
15,881,882 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
Hi

Can any suggest how to do Microsoft unit test for the viewmodel in silverlight .
Please refer the follwing code .
TEchnologies .
Silverlight 4.0
MVVM
ENtity
WCF .

Test page code .

C#
[TestClass]
   public class TestClass1:SilverlightTest
   {
       [TestMethod]
       public void TestMethod1()
       {
           HomeViewModel hv = new HomeViewModel();
           hv.GetClients();
           //Assert.Inconclusive();

       }


}

HomeViewModel

C#
public void GetClients()
       {
           App.DCContext.GetOnyxClients(GetClients_Completed, null);
       }


private void GetClients_Completed(InvokeOperation<string> invokeOperation)
{
if (invokeOperation.HasError)
{
GenericMessage.GenericMessageBox(invokeOperation.Error, Resource_Home_ErrorMessage);
invokeOperation.MarkErrorAsHandled();
}
else
{
MemoryStream memberList = new MemoryStream(Encoding.UTF8.GetBytes(invokeOperation.Value));
_ResultXDocument = XDocument.Load(memberList);
IEnumerable<xnode> resultNodes = _ResultXDocument.Nodes();
List<clientlistitem> listofclients = new List<clientlistitem>();
List<client> clientList = new List<client>();

foreach (XNode xel in resultNodes)
{
XDocument xdoc = xel.Document;
foreach (XElement element in xdoc.Elements("ArrayOfClient"))
{
foreach (XElement clientElement in element.Elements("Client"))
{
ClientListItem clientListItem = new ClientListItem();
Client client = new Client();
client.Onyx_Client_Id = ((System.Xml.Linq.XElement)clientElement.FirstNode.NextNode).Value;
client.Onyx_Client_Name = Convert.ToString(((System.Xml.Linq.XElement)clientElement.FirstNode.NextNode.NextNode).Value);
clientList.Add(client);
}
}
}

// Add Select... as the default client and then the clients retrieved from database to the Clients collection bind to
// Client dropdown on HomePage
ClientListItem selectClient = new ClientListItem();
selectClient.Name = NotificationMessages.Select;
Clients = new ObservableCollection<clientlistitem>();
Clients.Add(selectClient);
foreach (Client client in clientList)
{
ClientListItem clientListItem = new ClientListItem();
clientListItem.Id = Convert.ToInt32(client.Onyx_Client_Id);
clientListItem.Name = client.Onyx_Client_Name;
Clients.Add(clientListItem);
}

// If user comes to the Home page for the first time, set "Select.." as selected,
// else set the client that was in context when user navigates back to the HomePage.
SetSelectedClient();
if (App.ImsLogoLink == null)
{
App.DCContext.GetHomePageLink(GetHomePageLink_Completed, null);
}
}
}
Posted

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900