예제 #1
0
        public void ZWaveNodesAddValueIdDuplicate()
        {
            Mock <IZWaveController> controller = new Mock <IZWaveController>(MockBehavior.Strict);

            controller.Setup(s => s.IsInitialized).Returns(false);
            ZWaveNode.SetController(controller.Object);
            Mock <IInternalConfigurationManager> configManager = new Mock <IInternalConfigurationManager>();
            MockZWaveNode node = new MockZWaveNode();

            Assert.AreEqual(0, node.MockValueIds.Count());

            uint homeId = 0;
            byte nodeId = 1;

            ZWValueID.ValueGenre genre = ZWValueID.ValueGenre.Basic;
            byte commandClass          = 2;
            byte instance   = 3;
            byte valueIndex = 4;

            ZWValueID.ValueType type = ZWValueID.ValueType.Bool;
            byte      pollIntensity  = 5;
            ZWValueID id             = new ZWValueID(homeId, nodeId, genre, commandClass, instance, valueIndex, type, pollIntensity);

            node.AddValueId(id);
            node.AddValueId(id);

            Assert.AreEqual(1, node.MockValueIds.Count());
            Assert.AreSame(id, node.MockValueIds.Single());
        }
예제 #2
0
        //private readonly ZWValueID _valueId;
        //private readonly ZWManager _manager;
        public ZWaveValueProperties(ZWValueID valueId, ZWManager manager)
        {
            //_manager = manager;
            //_valueId = valueId;

            _commandClassId = (Enums.CommandClass) valueId.GetCommandClassId();
            _genre = valueId.GetGenre();
            _value = valueId.GetValue(manager);
            _help = manager.GetValueHelp(valueId);
            _pollingEnabled = manager.IsValuePolled(valueId);
            _homeId = valueId.GetHomeId();
            _id = valueId.GetId();
            _index = valueId.GetIndex();
            _instance = valueId.GetInstance();
            _label = manager.GetValueLabel(valueId);
            _nodeId = valueId.GetNodeId();
            _type = valueId.GetType();
            _units = manager.GetValueUnits(valueId);
        }