public void DipoleCurrentsBehaveProperly(Complex positiveCurrent, Complex negativeCurrent, Complex currentSum) { var dipole = new MockedDipole(); IComponent positive = dipole.Positive; IComponent negative = dipole.Negative; positive.Variables.First().Setter(positiveCurrent); negative.Variables.First().Setter(negativeCurrent); Assert.Equal(currentSum, ((IComponent)dipole).Equations.First()()); }
public void FollowsOhmsLawsConnected( Complex voltageNode1, Complex voltageNode2, Complex current, double resistance, Complex expectedValue) { var R = new IdealResistor(resistance); var dipole = new MockedDipole(); var equation = ((IComponent)R).Equations.First(); IComponent node1 = R.Positive.ConnectTo(dipole.Positive); IComponent node2 = R.Negative.ConnectTo(dipole.Negative); IComponent positive = R.Positive; node1.Variables.First().Setter(voltageNode1); node2.Variables.First().Setter(voltageNode2); positive.Variables.First().Setter(current); Assert.Equal(expectedValue, equation()); }