public void ThrowsArgumentException()
        {
            Mock <BSBaseComponent> componentMock = new Mock <BSBaseComponent>();
            Mock <BSBaseComponent> successorMock = new Mock <BSBaseComponent>();

            BSManager.AddComponent(componentMock.Object);
            BSManager.AddPredecessorForComponent(componentMock.Object, successorMock.Object);
        }
        public void AddsPredecessorsSuccessfully()
        {
            Mock <BSBaseComponent> componentMock   = new Mock <BSBaseComponent>();
            Mock <BSBaseComponent> predecessorMock = new Mock <BSBaseComponent>();

            BSManager.AddComponent(componentMock.Object);
            BSManager.AddComponent(predecessorMock.Object);
            BSManager.AddPredecessorForComponent(componentMock.Object, predecessorMock.Object);
            IList <BSBaseComponent> receivedPredecessors = BSManager.PredecessorsForComponent(componentMock.Object);

            Assert.IsTrue(receivedPredecessors.Contains(predecessorMock.Object));
            Assert.AreEqual(1, receivedPredecessors.Count);
        }