Ejemplo n.º 1
0
        public void SettingsSaveToFileAsExpected()
        {
            const string expected = @"<?xml version=""1.0""?>
<HeartRateSettingsProtocol xmlns:xsi=""http://www.w3.org/2001/XMLSchema-instance"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema"">
  <Version>1</Version>
  <FontName>Arial</FontName>
  <UIFontName>Arial</UIFontName>
  <AlertLevel>70</AlertLevel>
  <WarnLevel>65</WarnLevel>
  <AlertTimeout>120000</AlertTimeout>
  <DisconnectedTimeout>10000</DisconnectedTimeout>
  <Color>FFADD8E6</Color>
  <WarnColor>FFFF0000</WarnColor>
  <UIColor>FF00008B</UIColor>
  <UIWarnColor>FFFF0000</UIWarnColor>
  <UIBackgroundColor>00FFFFFF</UIBackgroundColor>
  <Sizable>true</Sizable>
  <LogFormat>csv</LogFormat>
  <LogDateFormat>OA</LogDateFormat>
  <LogFile> </LogFile>
</HeartRateSettingsProtocol>";

            using (var tempFile = new TempFile())
            {
                var def = HeartRateSettings.CreateDefault(tempFile);
                def.Save();

                var actual = File.ReadAllText(tempFile);
                AssertStringEqualsNormalizeEndings(expected, actual);
            }
        }
Ejemplo n.º 2
0
        public void TestThing()
        {
            using (var settingsFile = new TempFile())
                using (var logFile = new TempFile())
                {
                    var settings = new HeartRateSettings(settingsFile);

                    settings.Save();

                    using (var service = new TestHeartRateService(
                               TimeSpan.FromMilliseconds(100)))
                    {
                        var formThread = new Thread(_ =>
                        {
                            using (var form = new HeartRateForm(
                                       service, settingsFile, DateTime.Now))
                            {
                                form.Show();

                                Thread.Sleep(100000);
                            }
                        })
                        {
                            IsBackground = true
                        };

                        formThread.Start();
                    }

                    Thread.Sleep(100000);
                }
        }
Ejemplo n.º 3
0
        public void Test()
        {
            using (var settingsFile = new TempFile())
                using (var logFile = new TempFile())
                {
                    var settings = new HeartRateSettings(settingsFile)
                    {
                        LogFormat = "csv",
                        LogFile   = logFile
                    };

                    settings.Save();

                    const int count = 3;

                    var left = count;

                    using (var mre = new CountdownEvent(count))
                        using (var service = new TestHeartRateService(
                                   TimeSpan.FromMilliseconds(100)))
                        {
                            service.HeartRateUpdated += (status, bpm) =>
                            {
                                if (Interlocked.Decrement(ref left) >= 0)
                                {
                                    mre.Signal();
                                }
                            };

                            var formThread = new Thread(_ =>
                            {
                                using (var form = new HeartRateForm(
                                           service, settingsFile, DateTime.Now))
                                {
                                    form.Show();
                                    mre.Wait();
                                    Thread.Sleep(1000);
                                }
                            })
                            {
                                IsBackground = true
                            };

                            formThread.Start();
                            mre.Wait();
                        }

                    var actual = File.ReadAllText(logFile);
                    // TODO: finish test.
                }
        }