예제 #1
0
    public void Connect(PlugConnector con)
    {
        Disconnect();
        cable.Connect(con);
        connectedTo = con;
        connectedTo.Connect(this);

        connectId = con.Id;
    }
    public void VoltmeterTest()
    {
        var battery = HelperClass.GetRandomBattery();
        var cable1 = new Cable("test_one", 1, 2);
        var cable2 = new Cable("test_one", 1, 2);
        var voltmeter = new Voltmeter(2);
        battery.Connect(voltmeter);
        voltmeter.Connect(battery);
        voltmeter.SetMeasuredSubcircuit(cable1);
        cable1.Connect(cable2);

        battery.GiveProperties();

        Assert.AreEqual((battery.Properties.Amperage * (cable1.Properties.Resistance + cable2.Properties.Resistance + 2)).ToString(), voltmeter.GetValue().Replace(" Volt", ""));
    }
예제 #3
0
    public void OhmmeterTest()
    {
        var battery  = HelperClass.GetRandomBattery();
        var cable1   = new Cable("test_one", 1, 2);
        var cable2   = new Cable("test_one", 1, 2);
        var ohmmeter = new Ohmmeter(2);

        battery.Connect(ohmmeter);
        ohmmeter.Connect(battery);
        ohmmeter.SetMeasuredSubcircuit(cable1);
        cable1.Connect(cable2);

        battery.GiveProperties();

        Assert.AreEqual((cable1.Properties.Resistance + cable2.Properties.Resistance + 2).ToString(), ohmmeter.GetValue().Replace(" Ohm", ""));
    }
    public void BranchResistanceTest()
    {
        /*
         *          (0)<---^
         *          / \    |
         * Branch[(1) (2)  |
         *          \ /    |
         *          (3)---->
         */

        var battery = new Battery(30, 1);
        var branch  = new Branch();
        var el1     = new Cable("test_one", 10, 1);
        var el2     = new Cable("test_one", 10, 1);
        var el3     = new Cable("test_one", 10, 1);

        /*Debug.Log(string.Format("created battery: {0}", battery));
         * Debug.Log(string.Format("created branch: {0}", branch));
         * Debug.Log(string.Format("created element1: {0}", el1));
         * Debug.Log(string.Format("created element2: {0}", el2));
         * Debug.Log(string.Format("created element3: {0}", el3));*/

        battery.Connect(branch);
        el1.Connect(el3);
        branch.Connect(battery);
//        el3.Connect(BranchEndElement.BranchEnd);
//        el2.Connect(BranchEndElement.BranchEnd);
        branch.Branches.Add(el1);
        branch.Branches.Add(el2);

        branch.CloseBranches();

        battery.GiveProperties();

        var r1 = el1.Properties.Resistance;
        var r2 = el2.Properties.Resistance;
        var r3 = el3.Properties.Resistance;

        Assert.AreEqual(HelperClass.GetParallelResistance((new List <double> {
            r1 + r3, r2
        })), branch.Properties.Resistance);
    }