public void GetSystemStatusViewModel_MemoryStatusIsNotNull_ResultContainsMemoryStatusDataPoint()
        {
            // Arrage
            var memoryStatus = new SystemMemoryInformation {
                UsedMemoryInGB = 1d, AvailableMemoryInGB = 10d
            };
            var systemPerformanceInformation = new SystemPerformanceData {
                MemoryStatus = memoryStatus
            };
            var systemInformation = new SystemInformation {
                SystemPerformance = systemPerformanceInformation
            };
            var memoryStatusViewModel = new SystemStatusPointViewModel {
                Name = "Memory Status", Value = 10d
            };

            var processorStatusOrchestrator = new Mock <IProcessorStatusOrchestrator>();
            var memoryStatusOrchestrator    = new Mock <IMemoryStatusOrchestrator>();

            memoryStatusOrchestrator.Setup(p => p.GetMemoryUtilizationInPercent(It.IsAny <SystemMemoryInformation>())).Returns(memoryStatusViewModel);

            var storageStatusOrchestrator = new Mock <IStorageStatusOrchestrator>();

            var systemStatusOrchestrator = new SystemStatusOrchestrator(
                processorStatusOrchestrator.Object, memoryStatusOrchestrator.Object, storageStatusOrchestrator.Object);

            // Act
            var result = systemStatusOrchestrator.GetSystemStatusViewModel(systemInformation);

            // Assert
            Assert.AreEqual(memoryStatusViewModel.Value, result.DataPoints.First(d => d.Name.Equals(memoryStatusViewModel.Name)).Value);
        }
Пример #2
0
        public void GetHashCode_SameHashCodeIsReturnedEveryTimeTheMethodIsCalled_AsLongAsTheObjectDoesNotChange()
        {
            // Arrange
            var memoryStatus = new SystemMemoryInformation {
                AvailableMemoryInGB = 3
            };
            var processorStatus = new ProcessorUtilizationInformation {
                ProcessorUtilizationInPercent = 30d
            };
            var storageStatus = new SystemStorageInformation();

            var object1 = new SystemPerformanceData {
                MemoryStatus = memoryStatus, ProcessorStatus = processorStatus, StorageStatus = storageStatus
            };

            int expectedHashcode = object1.GetHashCode();

            for (var i = 0; i < 100; i++)
            {
                // Act
                object1.MemoryStatus    = memoryStatus;
                object1.ProcessorStatus = processorStatus;
                object1.StorageStatus   = storageStatus;

                int generatedHashCode = object1.GetHashCode();

                // Assert
                Assert.AreEqual(expectedHashcode, generatedHashCode);
            }
        }
        public void Default_UsedMemoryInGB_IsSetToZero()
        {
            // Arrange
            var processorUtilizationInformation = new SystemMemoryInformation();

            // Assert
            Assert.AreEqual(0.0d, processorUtilizationInformation.UsedMemoryInGB);
        }
        public void Equals_TwoUninitializedObjects_ResultIsTrue()
        {
            // Arrange
            var object1 = new SystemMemoryInformation();
            var object2 = new SystemMemoryInformation();

            // Act
            bool result = object1.Equals(object2);

            // Assert
            Assert.IsTrue(result);
        }
Пример #5
0
        public void GetMemoryUtilizationInPercent_SystemMemoryInformationParameterIsNotInitialized_ValueIsZero()
        {
            // Arrange
            var systemMemoryInformation  = new SystemMemoryInformation();
            var memoryStatusOrchestrator = new MemoryStatusOrchestrator();

            // Act
            var result = memoryStatusOrchestrator.GetMemoryUtilizationInPercent(systemMemoryInformation);

            // Assert
            Assert.AreEqual(0d, result.Value);
        }
Пример #6
0
        public void GetMemoryUtilizationInPercent_SystemMemoryInformationParameterIsValid_NameParameterIsSet()
        {
            // Arrange
            var systemMemoryInformation  = new SystemMemoryInformation();
            var memoryStatusOrchestrator = new MemoryStatusOrchestrator();

            // Act
            var result = memoryStatusOrchestrator.GetMemoryUtilizationInPercent(systemMemoryInformation);

            // Assert
            Assert.IsNotNullOrEmpty(result.Name);
        }
        public void ToString_Contains_UsedMemoryInGB()
        {
            // Arrange
            var object1 = new SystemMemoryInformation {
                AvailableMemoryInGB = 8.0d, UsedMemoryInGB = 3.0d
            };

            // Act
            string result = object1.ToString();

            // Assert
            Assert.IsTrue(result.Contains(object1.UsedMemoryInGB.ToString()));
        }
        public void GetHashCode_TwoIdenticalObjects_BothUninitialized_HashCodesAreEqual()
        {
            // Arrange
            var package1 = new SystemMemoryInformation();
            var package2 = new SystemMemoryInformation();

            // Act
            int hashCodeObject1 = package1.GetHashCode();
            int hashCodeObject2 = package2.GetHashCode();

            // Assert
            Assert.AreEqual(hashCodeObject1, hashCodeObject2);
        }
Пример #9
0
        public void GetMemoryUtilizationInPercent_SystemMemoryInformationParameterValuesAreZero_ValueIsZero()
        {
            // Arrange
            var systemMemoryInformation = new SystemMemoryInformation {
                AvailableMemoryInGB = 0d, UsedMemoryInGB = 0d
            };
            var memoryStatusOrchestrator = new MemoryStatusOrchestrator();

            // Act
            var result = memoryStatusOrchestrator.GetMemoryUtilizationInPercent(systemMemoryInformation);

            // Assert
            Assert.AreEqual(0d, result.Value);
        }
        public void Equals_SuppliedObjectIsOfOtherType_ResultIsFalse()
        {
            // Arrange
            var object1 = new SystemMemoryInformation {
                AvailableMemoryInGB = 8.0d, UsedMemoryInGB = 3.0d
            };
            var object2 = new object();

            // Act
            bool result = object1.Equals(object2);

            // Assert
            Assert.IsFalse(result);
        }
        public void Equals_TwoIdenticalInitializedObjects_ResultIsTrue()
        {
            // Arrange
            var object1 = new SystemMemoryInformation {
                AvailableMemoryInGB = 8.0d, UsedMemoryInGB = 3.0d
            };
            var object2 = new SystemMemoryInformation {
                AvailableMemoryInGB = 8.0d, UsedMemoryInGB = 3.0d
            };

            // Act
            bool result = object1.Equals(object2);

            // Assert
            Assert.IsTrue(result);
        }
Пример #12
0
        public void GetMemoryUtilizationInPercent_SystemMemoryInformationParameterIsValid_ValueIsCorrect()
        {
            // Arrange
            var availableMemory         = 9d;
            var usedMemory              = 1d;
            var systemMemoryInformation = new SystemMemoryInformation {
                AvailableMemoryInGB = availableMemory, UsedMemoryInGB = usedMemory
            };
            var memoryStatusOrchestrator = new MemoryStatusOrchestrator();

            // Act
            var result = memoryStatusOrchestrator.GetMemoryUtilizationInPercent(systemMemoryInformation);

            // Assert
            Assert.AreEqual(10d, result.Value);
        }
        public void GetHashCode_TwoDistinctObjects_HashCodesAreDifferent()
        {
            // Arrange
            var object1 = new SystemMemoryInformation {
                AvailableMemoryInGB = 8.0d, UsedMemoryInGB = 3.0d
            };
            var object2 = new SystemMemoryInformation {
                AvailableMemoryInGB = 16.0d, UsedMemoryInGB = 7.0d
            };

            // Act
            int hashCodeObject1 = object1.GetHashCode();
            int hashCodeObject2 = object2.GetHashCode();

            // Assert
            Assert.AreNotEqual(hashCodeObject1, hashCodeObject2);
        }
        public void GetHashCode_TwoIdenticalObjects_BothInitialized_HashCodesAreEqual()
        {
            // Arrange
            var object1 = new SystemMemoryInformation {
                AvailableMemoryInGB = 8.0d, UsedMemoryInGB = 3.0d
            };
            var object2 = new SystemMemoryInformation {
                AvailableMemoryInGB = 8.0d, UsedMemoryInGB = 3.0d
            };

            // Act
            int hashCodeObject1 = object1.GetHashCode();
            int hashCodeObject2 = object2.GetHashCode();

            // Assert
            Assert.AreEqual(hashCodeObject1, hashCodeObject2);
        }
        public void GetHashCode_ForAllUniqueObject_AUniqueHashCodeIsReturned()
        {
            var hashCodes = new Dictionary <int, SystemMemoryInformation>();

            for (var i = 0; i < 1000; i++)
            {
                // Act
                var object1 = new SystemMemoryInformation {
                    AvailableMemoryInGB = i, UsedMemoryInGB = i / 2.0d
                };

                int generatedHashCode = object1.GetHashCode();

                // Assert
                Assert.IsFalse(hashCodes.ContainsKey(generatedHashCode));
                hashCodes.Add(generatedHashCode, object1);
            }
        }
Пример #16
0
        public SystemStatusPointViewModel GetMemoryUtilizationInPercent(SystemMemoryInformation systemMemoryInformation)
        {
            if (systemMemoryInformation == null)
            {
                throw new ArgumentNullException("systemMemoryInformation");
            }

            var    totalMemory = systemMemoryInformation.UsedMemoryInGB + systemMemoryInformation.AvailableMemoryInGB;
            double memoryUtilizationInPercent = 0d;

            if (totalMemory > 0d)
            {
                memoryUtilizationInPercent = systemMemoryInformation.UsedMemoryInGB * 100 / totalMemory;
            }

            return(new SystemStatusPointViewModel
            {
                Name = MemoryUtilizationDataSeriesName,
                Value = memoryUtilizationInPercent
            });
        }
        public void GetHashCode_SameHashCodeIsReturnedEveryTimeTheMethodIsCalled_AsLongAsTheObjectDoesNotChange()
        {
            // Arrange
            var availableMemoryInGB = 8.0d;
            var usedMemoryInGB      = 3.0d;
            var object1             = new SystemMemoryInformation {
                AvailableMemoryInGB = availableMemoryInGB, UsedMemoryInGB = usedMemoryInGB
            };

            int expectedHashcode = object1.GetHashCode();

            for (var i = 0; i < 100; i++)
            {
                // Act
                object1.AvailableMemoryInGB = availableMemoryInGB;
                object1.UsedMemoryInGB      = usedMemoryInGB;
                int generatedHashCode = object1.GetHashCode();

                // Assert
                Assert.AreEqual(expectedHashcode, generatedHashCode);
            }
        }