public void LegacyClientRunData_CopyConstructor_Test()
        {
            // Arrange
            var data = new LegacyClientRunData
            {
                StartTime     = DateTime.UtcNow,
                ClientVersion = "1.29",
                Arguments     = "Foo",
                FoldingID     = "Bar",
                Team          = 32,
                UserID        = "12345",
                MachineID     = 1
            };
            // Act
            var copy = new LegacyClientRunData(data);

            // Assert
            Assert.AreEqual(data.StartTime, copy.StartTime);
            Assert.AreEqual(data.ClientVersion, copy.ClientVersion);
            Assert.AreEqual(data.Arguments, copy.Arguments);
            Assert.AreEqual(data.FoldingID, copy.FoldingID);
            Assert.AreEqual(data.Team, copy.Team);
            Assert.AreEqual(data.UserID, copy.UserID);
            Assert.AreEqual(data.MachineID, copy.MachineID);
        }
        public void LegacyClientRunData_CopyConstructor_OtherIsNull_Test()
        {
            // Act
            var copy = new LegacyClientRunData(null);

            // Assert
            Assert.AreEqual(default(DateTime), copy.StartTime);
            Assert.AreEqual(null, copy.ClientVersion);
            Assert.AreEqual(null, copy.Arguments);
            Assert.AreEqual(null, copy.FoldingID);
            Assert.AreEqual(0, copy.Team);
            Assert.AreEqual(null, copy.UserID);
            Assert.AreEqual(0, copy.MachineID);
        }
            /// <summary>
            /// Initializes a new instance of the <see cref="LegacyClientRunData"/> class.
            /// </summary>
            /// <param name="other">The other instance from which data will be copied.</param>
            public LegacyClientRunData(LegacyClientRunData other)
                : base(other)
            {
                if (other == null)
                {
                    return;
                }

                ClientVersion = other.ClientVersion;
                Arguments     = other.Arguments;
                FoldingID     = other.FoldingID;
                Team          = other.Team;
                UserID        = other.UserID;
                MachineID     = other.MachineID;
            }
Esempio n. 4
0
            /// <summary>
            /// Creates a new <see cref="ClientRunData"/> object from the information contained in the <see cref="ClientRun"/> object.
            /// </summary>
            protected override ClientRunData OnGetClientRunData(ClientRun clientRun)
            {
                var clientRunData = new LegacyClientRunData();

                foreach (var line in clientRun.LogLines)
                {
                    switch (line.LineType)
                    {
                    case LogLineType.LogOpen:
                        clientRunData.StartTime = (DateTime)line.Data;
                        break;

                    case LogLineType.ClientVersion:
                        clientRunData.ClientVersion = line.Data.ToString();
                        break;

                    case LogLineType.ClientArguments:
                        clientRunData.Arguments = line.Data.ToString();
                        break;

                    case LogLineType.ClientUserNameAndTeam:
                    {
                        var data = (ClientUserNameAndTeamData)line.Data;
                        clientRunData.FoldingID = data.FoldingID;
                        clientRunData.Team      = data.Team;
                        break;
                    }

                    case LogLineType.ClientUserID:
                    case LogLineType.ClientReceivedUserID:
                        clientRunData.UserID = line.Data.ToString();
                        break;

                    case LogLineType.ClientMachineID:
                        clientRunData.MachineID = (int)line.Data;
                        break;
                    }
                }

                return(clientRunData);
            }