public void If_there_are_no_objects_the_platform_must_be_undefined()
        {
            var targetPlatformDiscoverer = new TargetPlatformDiscoverer(null);

            var discoveringResult = targetPlatformDiscoverer.Discover();

            Assert.AreEqual(FamilyEnumeration.undefined, discoveringResult);
        }
        public void If_there_are_no_windows_or_unix_objects_the_platform_must_be_undefinied()
        {
            var targetPlatformDiscoverer = new TargetPlatformDiscoverer(IndependentOvalDefinitionsSample.objects);

            var discoveringResult = targetPlatformDiscoverer.Discover();

            Assert.AreEqual(FamilyEnumeration.undefined, discoveringResult);
        }
        public void Should_be_possible_to_discover_solaris_systems_by_solaris_oval_objects()
        {
            var targetPlatformDiscoverer = 
                new TargetPlatformDiscoverer(UnixOvalDefinitionsSample.objects);

            var discoveringResult = targetPlatformDiscoverer.Discover();

            Assert.AreEqual(FamilyEnumeration.unix, discoveringResult);
        }
        public void Should_be_possible_to_discover_cisco_ios_systems_by_ios_oval_objects()
        {
            var targetPlatformDiscoverer = new TargetPlatformDiscoverer(this.CiscoIosOvalDefinitionsSample.objects);

            var discoveringResult = targetPlatformDiscoverer.Discover();

            Assert.AreEqual(FamilyEnumeration.ios, discoveringResult);
        }
Example #5
0
        private bool CheckExternalVariables(string filename, out string errors)
        {
            errors = null;

            if (filename == null)
            {
                errors = Resource.EmptyDefinitionFilename;
                return false;
            }

            if (!File.Exists(filename))
            {
                errors = Resource.OVALDefinitionsFileNotFound;
                return false;
            }

            var helper = new ExternalVariableHelper();
            var definitions = helper.GetOvalDefinitionsFromFile(filename, out errors);
            if (definitions != null)
            {
                var platform = new TargetPlatformDiscoverer(definitions.objects);
                var family = platform.Discover();
                isUnixDefinition = (family.ToString() == "unix");

                if (definitions.variables != null)
                {
                    ExternalVariables = definitions.variables.OfType<Modulo.Collect.OVAL.Definitions.VariablesTypeVariableExternal_variable>();
                    ExternalVariablesValues = GetExternalVariablesDefaultValuesFromDefinition(definitions.GetDefinitionsXml());
                }

                return true;
            }

            return false;
        }
Example #6
0
 private void ExecuteCollect(string collectRequestID)
 {
     var localNow = DateTime.UtcNow.ToLocalTime().ToString();
     Console.WriteLine("INFO - Job {0} will be started now ({1})...", collectRequestID, localNow);
     using (var session = Repository.GetSession())
     {
         var collectRequest = Repository.GetCollectRequest(session, collectRequestID);
         if (collectRequest != null)
         {
             collectRequest.SetExecutingStatus();
             session.SaveChanges();
             
             var targetInfo = GetTargetInformation(collectRequest);
             var ovalDefinitonsObjects = collectRequest.GetObjectTypes(session).ToArray();
             var targetPlataform = new TargetPlatformDiscoverer(ovalDefinitonsObjects).Discover();
             
             this.CollectManager.Target = targetInfo;
             this.CollectManager.connectionContext = new List<IConnectionProvider>();
             this.CollectManager.ExecuteCollect(session, collectRequest, targetPlataform);
             session.SaveChanges();                    
         }
     }
     Console.WriteLine("INFO - Collection {0} just finished.", collectRequestID);
 }