SensorCollectorTest.cs 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. using System.Linq;
  2. using LibreHardwareMonitor.Hardware;
  3. using Xunit;
  4. namespace OhmGraphite.Test
  5. {
  6. public class SensorCollectorTest
  7. {
  8. [Fact]
  9. public void SensorsAddedWhenHardwareAdded()
  10. {
  11. var computer = new Computer();
  12. var collector = new SensorCollector(computer);
  13. try
  14. {
  15. collector.Open();
  16. var unused = collector.ReadAllSensors().Count();
  17. computer.IsCpuEnabled = true;
  18. computer.IsMotherboardEnabled = true;
  19. computer.IsStorageEnabled = true;
  20. computer.IsMemoryEnabled = true;
  21. var addedCount = collector.ReadAllSensors().Count();
  22. // On CI platforms there may be no detected hardware
  23. if (addedCount <= 0)
  24. {
  25. return;
  26. }
  27. computer.IsCpuEnabled = false;
  28. computer.IsMotherboardEnabled = false;
  29. computer.IsStorageEnabled = false;
  30. computer.IsMemoryEnabled = false;
  31. var removedCount = collector.ReadAllSensors().Count();
  32. Assert.True(addedCount > removedCount, "addedCount > removedCount");
  33. }
  34. finally
  35. {
  36. collector.Close();
  37. }
  38. }
  39. }
  40. }