public void Should_be_possible_to_define_a_not_equals_operation_on_the_keyEntity()
        {
            string hiveHKLM   = eHiveNames.HKEY_LOCAL_MACHINE.ToString();
            string startKey   = "SOFTWARE\\Adobe";
            var    ovalObject = WindowsTestHelper.GetObjectFromDefinitions("definitionsWithLocalVariable.xml", "oval:modulo:obj:6000");

            var fakeDataSource =
                new SystemDataSourceFactory()
                .GetDataSourceFakeWithSpecificNames(startKey, new string[] { "Acrobat Reader\\9.0\\Installer",
                                                                             "Acrobat Reader\\9.0\\InstallPath",
                                                                             "Acrobat Reader\\Language\\current",
                                                                             "Adobe Air\\FileTypeRegistration",
                                                                             "Adobe Air\\Repair\\9.0\\IOD" });

            var wmiDataProvider = new WmiDataProviderExpectFactory().GetFakeWmiDataProviderForTestInvokeMethodEnumKeyWithReturnSuccess();
            var itemGenerator   = new RegistryItemTypeGenerator()
            {
                SystemDataSource = fakeDataSource, WmiDataProvider = wmiDataProvider
            };
            var itemsToCollect = itemGenerator.GetItemsToCollect(ovalObject, VariableHelper.CreateEmptyEvaluatedVariables()).Cast <registry_item>();

            Assert.AreEqual(2, itemsToCollect.Count());
            this.AssertGeneratedRegistryItem(itemsToCollect.ElementAt(0), hiveHKLM, "SOFTWARE\\Adobe\\Adobe Air\\FileTypeRegistration", "Path");
            this.AssertGeneratedRegistryItem(itemsToCollect.ElementAt(1), hiveHKLM, "SOFTWARE\\Adobe\\Repair\\9.0\\IOD", "Path");
        }
        public void Should_be_possible_to_generate_itemTypes_from_objectTypes_with_not_equal_operation()
        {
            string hiveHKLM = eHiveNames.HKEY_LOCAL_MACHINE.ToString();
            string startKey = "SOFTWARE\\Microsoft\\Windows";
            var    obj50006 = WindowsTestHelper.GetObjectFromDefinitions(DEFINITIONS_REGEX_ON_VALUE, OBJ_50006_ID);

            var fakeDataSource = new SystemDataSourceFactory().GetDataSourceFakeWithSpecificNames(startKey, new string[] { "CommonFileDir",
                                                                                                                           "DevicePath",
                                                                                                                           "CSDVersion",
                                                                                                                           "MediaPath" });
            WmiDataProvider           wmiDataProvider = new WmiDataProviderExpectFactory().GetFakeWmiDataProviderForTestInvokeMethodEnumKeyWithReturnSuccess();
            RegistryItemTypeGenerator itemGenerator   = new RegistryItemTypeGenerator()
            {
                SystemDataSource = fakeDataSource, WmiDataProvider = wmiDataProvider
            };
            var itemsToCollect = itemGenerator.GetItemsToCollect(obj50006, VariableHelper.CreateEmptyEvaluatedVariables()).Cast <registry_item>();

            Assert.AreEqual(3, itemsToCollect.Count());
            this.AssertGeneratedRegistryItem(itemsToCollect.ElementAt(0), hiveHKLM, "SOFTWARE\\Microsoft\\Windows\\CurrentVersion", "CommonFileDir");
            this.AssertGeneratedRegistryItem(itemsToCollect.ElementAt(1), hiveHKLM, "SOFTWARE\\Microsoft\\Windows\\CurrentVersion", "DevicePath");
            this.AssertGeneratedRegistryItem(itemsToCollect.ElementAt(2), hiveHKLM, "SOFTWARE\\Microsoft\\Windows\\CurrentVersion", "MediaPath");
        }