public void ConnectControlSingleton_ResourcesLoadedHandler_ServerIdFoundAndIsConnected_RaisesConnectedEventWithConnectedState()
{
var studioResourceRepository = new Mock<IStudioResourceRepository>();
var asyncWorker = new Mock<IAsyncWorker>();
var serverProvider = new Mock<IEnvironmentModelProvider>();
var environmentRepository = new Mock<IEnvironmentRepository>();
var serverId = Guid.NewGuid();
List<IEnvironmentModel> environmentModels = new List<IEnvironmentModel>
{
new TestEnvironmentModel(new Mock<IEventAggregator>().Object, serverId, CreateConnection(true).Object, new Mock<IResourceRepository>().Object, false)
};
serverProvider.Setup(s => s.Load()).Returns(environmentModels);
var connectControlSingleton = new ConnectControlSingleton(studioResourceRepository.Object, asyncWorker.Object, serverProvider.Object, environmentRepository.Object);
ConnectionEnumerations.ConnectedState actualConnectedState = ConnectionEnumerations.ConnectedState.Busy;
connectControlSingleton.ConnectedStatusChanged += (sender, arg) =>
{
actualConnectedState = arg.ConnectedStatus;
};
//------------Execute Test---------------------------
connectControlSingleton.ResourcesLoadedHandler(serverId);
//------------Assert Results-------------------------
Assert.AreEqual(ConnectionEnumerations.ConnectedState.Connected, actualConnectedState);
}