Exemple #1
0
        public void LogGeneralUsageTest()
        {
            // Establish Context
            Stream stream = new MemoryStream(Encoding.Default.GetBytes(@"<?xml version=""1.0"" encoding=""us-ascii""?>
          <UsageCount xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"">
            <MachineGUID>563173AD-8835-4138-B4B0-FF7C5BD8D163_Y</MachineGUID>
            <UserGUID>71536A57-C890-4FDB-9A31-5359116B0F4D_Z</UserGUID>
            <NoClicks>1</NoClicks>
            <NoScreenSaverSessions>1</NoScreenSaverSessions>
            <TotalPlayTime>94</TotalPlayTime>
          </UsageCount>"));

            ILog logForNet = MockRepository.GenerateMock <ILog>();

            ClientDataLogger.SystemTime.Now = () => DateTime.Parse("2011-05-24 17:40:57");
            logForNet.Expect(r => r.Info("2011-05-24 17:40:57|563173AD-8835-4138-B4B0-FF7C5BD8D163_Y|1|1|94"));

            //Act
            var clientDateLogger = new ClientDataLogger();

            clientDateLogger.LogGeneralUsage(logForNet, stream);

            //Assert
            logForNet.VerifyAllExpectations();
        }
Exemple #2
0
        private void LogDataFile(LogDataParameterMessage logDataParameterMessage)
        {
            var clientDataLogger = new ClientDataLogger();

            switch (logDataParameterMessage.ChannelID)
            {
            case "-1":
                clientDataLogger.LogAdImpressionOrClickChannelProportion(
                    logDataParameterMessage.FileName == "i_d_a.dat" ? _adImpressionsChannelProportionsLogger : _adClicksChannelProportionsLogger,
                    logDataParameterMessage.MachineGUID, logDataParameterMessage.LogFileStream);
                break;

            case "-2":
                clientDataLogger.LogGeneralUsage(_generalUsageLogger, logDataParameterMessage.LogFileStream);
                TryLogLastImpressionToDB(logDataParameterMessage.MachineGUID);
                break;

            default:
                ILog log;
                if (logDataParameterMessage.FileName == "i_d_a.dat")
                {
                    //We do not always receive these so log LastImpression when we recieve General Usage file instead
                    //TryLogLastImpressionToDB(logDataParameterMessage.MachineGUID);
                    log = _impressionsLogger;
                }
                else
                {
                    TryLogLastClickToDB(logDataParameterMessage.MachineGUID);
                    log = _clicksLogger;
                }
                clientDataLogger.LogImpressionsOrClicks(log, logDataParameterMessage.MachineGUID, logDataParameterMessage.ChannelID, logDataParameterMessage.LogFileStream);
                break;
            }
        }