private static IEnumerable <SysInfoResult> CreateSysInfoResults()
        {
            var retriever = new SysInfoRetriever();
            var results   = new List <SysInfoResult>
            {
                retriever.Retrieve(SysInfoQueries.OperatingSystem).Filter(
                    new[]
                {
                    "CodeSet",
                    "CurrentTimeZone",
                    "FreePhysicalMemory",
                    "OSArchitecture",
                    "OSLanguage",
                    "Version"
                }),
                retriever.Retrieve(SysInfoQueries.Machine).Filter(
                    new[]
                {
                    "TotalPhysicalMemory",
                    "Manufacturer",
                    "Model"
                })
            };

            return(results);
        }
        public void Can_Retrieve_SysInfo_For_CPU()
        {
            var sysInfoResult = _retriever.Retrieve(SysInfoQueries.Machine);

            Assert.That(sysInfoResult.Nodes.Count, Is.EqualTo(1));                  // at least 1 machine name
            Assert.That(sysInfoResult.ChildResults[0].Nodes.Count, Is.GreaterThan(0));
            Assert.That(sysInfoResult.ChildResults[0].Nodes.Count(r => r.Contains("CurrentTimeZone")), Is.GreaterThan(0));
        }
        public void Can_Retrieve_SysInfo_For_CPU()
        {
            var sysInfoResult = _retriever.Retrieve(SysInfoQueries.Machine);

            if (ExceptionReporter.IsRunningMono())
            {
                Assert.That(sysInfoResult, Is.Null);
                return;
            }
            ;

            Assert.That(sysInfoResult.Nodes.Count, Is.EqualTo(1));                  // at least 1 machine name
            Assert.That(sysInfoResult.ChildResults[0].Nodes.Count, Is.GreaterThan(0));
            Assert.That(sysInfoResult.ChildResults[0].Nodes.Count(r => r.Contains("CurrentTimeZone")), Is.GreaterThan(0));
        }