repo time

Dependencies:   mbed MAX14720 MAX30205 USBDevice

Committer:
darienf
Date:
Tue Apr 06 06:41:40 2021 +0000
Revision:
20:6d2af70c92ab
another repo

Who changed what in which revision?

UserRevisionLine numberNew contents of line
darienf 20:6d2af70c92ab 1 /*******************************************************************************
darienf 20:6d2af70c92ab 2 * Copyright (C) 2016 Maxim Integrated Products, Inc., All rights Reserved.
darienf 20:6d2af70c92ab 3 *
darienf 20:6d2af70c92ab 4 * This software is protected by copyright laws of the United States and
darienf 20:6d2af70c92ab 5 * of foreign countries. This material may also be protected by patent laws
darienf 20:6d2af70c92ab 6 * and technology transfer regulations of the United States and of foreign
darienf 20:6d2af70c92ab 7 * countries. This software is furnished under a license agreement and/or a
darienf 20:6d2af70c92ab 8 * nondisclosure agreement and may only be used or reproduced in accordance
darienf 20:6d2af70c92ab 9 * with the terms of those agreements. Dissemination of this information to
darienf 20:6d2af70c92ab 10 * any party or parties not specified in the license agreement and/or
darienf 20:6d2af70c92ab 11 * nondisclosure agreement is expressly prohibited.
darienf 20:6d2af70c92ab 12 *
darienf 20:6d2af70c92ab 13 * The above copyright notice and this permission notice shall be included
darienf 20:6d2af70c92ab 14 * in all copies or substantial portions of the Software.
darienf 20:6d2af70c92ab 15 *
darienf 20:6d2af70c92ab 16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
darienf 20:6d2af70c92ab 17 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
darienf 20:6d2af70c92ab 18 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
darienf 20:6d2af70c92ab 19 * IN NO EVENT SHALL MAXIM INTEGRATED BE LIABLE FOR ANY CLAIM, DAMAGES
darienf 20:6d2af70c92ab 20 * OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
darienf 20:6d2af70c92ab 21 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
darienf 20:6d2af70c92ab 22 * OTHER DEALINGS IN THE SOFTWARE.
darienf 20:6d2af70c92ab 23 *
darienf 20:6d2af70c92ab 24 * Except as contained in this notice, the name of Maxim Integrated
darienf 20:6d2af70c92ab 25 * Products, Inc. shall not be used except as stated in the Maxim Integrated
darienf 20:6d2af70c92ab 26 * Products, Inc. Branding Policy.
darienf 20:6d2af70c92ab 27 *
darienf 20:6d2af70c92ab 28 * The mere transfer of this software does not imply any licenses
darienf 20:6d2af70c92ab 29 * of trade secrets, proprietary technology, copyrights, patents,
darienf 20:6d2af70c92ab 30 * trademarks, maskwork rights, or any other form of intellectual
darienf 20:6d2af70c92ab 31 * property whatsoever. Maxim Integrated Products, Inc. retains all
darienf 20:6d2af70c92ab 32 * ownership rights.
darienf 20:6d2af70c92ab 33 *******************************************************************************
darienf 20:6d2af70c92ab 34 */
darienf 20:6d2af70c92ab 35
darienf 20:6d2af70c92ab 36 using System;
darienf 20:6d2af70c92ab 37 using NUnit.Framework;
darienf 20:6d2af70c92ab 38 using HealthSensorPlatform.CustomControls;
darienf 20:6d2af70c92ab 39 using HealthSensorPlatform.Model;
darienf 20:6d2af70c92ab 40 using RPCSupport.Streaming;
darienf 20:6d2af70c92ab 41 using System.Windows.Forms;
darienf 20:6d2af70c92ab 42
darienf 20:6d2af70c92ab 43 namespace EcgViewTest
darienf 20:6d2af70c92ab 44 {
darienf 20:6d2af70c92ab 45 [TestFixture]
darienf 20:6d2af70c92ab 46 public partial class EcgTest
darienf 20:6d2af70c92ab 47 {
darienf 20:6d2af70c92ab 48 /*
darienf 20:6d2af70c92ab 49 [Test]
darienf 20:6d2af70c92ab 50 public void PaceDataTag0()
darienf 20:6d2af70c92ab 51 {
darienf 20:6d2af70c92ab 52 Form form = new Form();
darienf 20:6d2af70c92ab 53 EcgView ecgView = new EcgView();
darienf 20:6d2af70c92ab 54 PaceData result;
darienf 20:6d2af70c92ab 55 PartialArrayIntAvailableEventArgs args = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 56 PartialArrayIntAvailableEventArgs ecgArgs = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 57
darienf 20:6d2af70c92ab 58 ecgArgs = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 59 ecgArgs.reportID = PartialArrayIntAvailableEventArgs.PACKET_MAX30001_ECG;
darienf 20:6d2af70c92ab 60 args.sampleNumberOffset = 5;
darienf 20:6d2af70c92ab 61 args.array1 = new int[] {
darienf 20:6d2af70c92ab 62 7,
darienf 20:6d2af70c92ab 63 7,
darienf 20:6d2af70c92ab 64 0, // Tag 0 has pace data
darienf 20:6d2af70c92ab 65 7,
darienf 20:6d2af70c92ab 66 7
darienf 20:6d2af70c92ab 67 };
darienf 20:6d2af70c92ab 68
darienf 20:6d2af70c92ab 69 args.reportID = PartialArrayIntAvailableEventArgs.PACKET_MAX30001_PACE;
darienf 20:6d2af70c92ab 70 args.sampleNumberOffset = 18;
darienf 20:6d2af70c92ab 71 args.array1 = new int[] {
darienf 20:6d2af70c92ab 72 0 << 14 | 0 << 13 | 0 << 12 | 1 << 2 | 1 << 1 | 1, 123456, 123456,
darienf 20:6d2af70c92ab 73 123456, 123456, 123456,
darienf 20:6d2af70c92ab 74 123456, 123456, 123456,
darienf 20:6d2af70c92ab 75 123456, 123456, 123456,
darienf 20:6d2af70c92ab 76 123456, 123456, 123456,
darienf 20:6d2af70c92ab 77 123456, 123456, 123456
darienf 20:6d2af70c92ab 78 };
darienf 20:6d2af70c92ab 79
darienf 20:6d2af70c92ab 80 form.Controls.Add(ecgView);
darienf 20:6d2af70c92ab 81 ecgView.On_AppendChart(this, args);
darienf 20:6d2af70c92ab 82 result = ecgView.paceData;
darienf 20:6d2af70c92ab 83
darienf 20:6d2af70c92ab 84 Assert.AreEqual(-1, result.PaceLength(0));
darienf 20:6d2af70c92ab 85 }
darienf 20:6d2af70c92ab 86
darienf 20:6d2af70c92ab 87 [Test]
darienf 20:6d2af70c92ab 88 public void PaceDataTag1()
darienf 20:6d2af70c92ab 89 {
darienf 20:6d2af70c92ab 90 Form form = new Form();
darienf 20:6d2af70c92ab 91 EcgView ecgView = new EcgView();
darienf 20:6d2af70c92ab 92 PaceData result;
darienf 20:6d2af70c92ab 93 PartialArrayIntAvailableEventArgs args = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 94 PartialArrayIntAvailableEventArgs ecgArgs = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 95
darienf 20:6d2af70c92ab 96 ecgArgs = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 97 ecgArgs.reportID = PartialArrayIntAvailableEventArgs.PACKET_MAX30001_ECG;
darienf 20:6d2af70c92ab 98 args.sampleNumberOffset = 5;
darienf 20:6d2af70c92ab 99 args.array1 = new int[] {
darienf 20:6d2af70c92ab 100 7,
darienf 20:6d2af70c92ab 101 7,
darienf 20:6d2af70c92ab 102 1, // Tag 0 has pace data
darienf 20:6d2af70c92ab 103 7,
darienf 20:6d2af70c92ab 104 7
darienf 20:6d2af70c92ab 105 };
darienf 20:6d2af70c92ab 106
darienf 20:6d2af70c92ab 107 args.reportID = PartialArrayIntAvailableEventArgs.PACKET_MAX30001_PACE;
darienf 20:6d2af70c92ab 108 args.sampleNumberOffset = 18;
darienf 20:6d2af70c92ab 109 args.array1 = new int[] {
darienf 20:6d2af70c92ab 110 123456, 123456, 123456,
darienf 20:6d2af70c92ab 111 0 << 14 | 0 << 13 | 0 << 12 | 1 << 2 | 1 << 1 | 1, 123456, 123456,
darienf 20:6d2af70c92ab 112 123456, 123456, 123456,
darienf 20:6d2af70c92ab 113 123456, 123456, 123456,
darienf 20:6d2af70c92ab 114 123456, 123456, 123456,
darienf 20:6d2af70c92ab 115 123456, 123456, 123456
darienf 20:6d2af70c92ab 116 };
darienf 20:6d2af70c92ab 117
darienf 20:6d2af70c92ab 118 form.Controls.Add(ecgView);
darienf 20:6d2af70c92ab 119 ecgView.On_AppendChart(this, args);
darienf 20:6d2af70c92ab 120 result = ecgView.paceData;
darienf 20:6d2af70c92ab 121
darienf 20:6d2af70c92ab 122 Assert.AreEqual(-1, result.PaceLength(1));
darienf 20:6d2af70c92ab 123 }
darienf 20:6d2af70c92ab 124
darienf 20:6d2af70c92ab 125 [Test]
darienf 20:6d2af70c92ab 126 public void PaceDataTag2()
darienf 20:6d2af70c92ab 127 {
darienf 20:6d2af70c92ab 128 Form form = new Form();
darienf 20:6d2af70c92ab 129 EcgView ecgView = new EcgView();
darienf 20:6d2af70c92ab 130 PaceData result;
darienf 20:6d2af70c92ab 131 PartialArrayIntAvailableEventArgs args = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 132 PartialArrayIntAvailableEventArgs ecgArgs = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 133
darienf 20:6d2af70c92ab 134 ecgArgs = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 135 ecgArgs.reportID = PartialArrayIntAvailableEventArgs.PACKET_MAX30001_ECG;
darienf 20:6d2af70c92ab 136 args.sampleNumberOffset = 5;
darienf 20:6d2af70c92ab 137 args.array1 = new int[] {
darienf 20:6d2af70c92ab 138 7,
darienf 20:6d2af70c92ab 139 7,
darienf 20:6d2af70c92ab 140 2, // Tag 0 has pace data
darienf 20:6d2af70c92ab 141 7,
darienf 20:6d2af70c92ab 142 7
darienf 20:6d2af70c92ab 143 };
darienf 20:6d2af70c92ab 144
darienf 20:6d2af70c92ab 145 args.reportID = PartialArrayIntAvailableEventArgs.PACKET_MAX30001_PACE;
darienf 20:6d2af70c92ab 146 args.sampleNumberOffset = 18;
darienf 20:6d2af70c92ab 147 args.array1 = new int[] {
darienf 20:6d2af70c92ab 148 123456, 123456, 123456,
darienf 20:6d2af70c92ab 149 123456, 123456, 123456,
darienf 20:6d2af70c92ab 150 0 << 14 | 0 << 13 | 0 << 12 | 1 << 2 | 1 << 1 | 1, 123456, 123456,
darienf 20:6d2af70c92ab 151 123456, 123456, 123456,
darienf 20:6d2af70c92ab 152 123456, 123456, 123456,
darienf 20:6d2af70c92ab 153 123456, 123456, 123456
darienf 20:6d2af70c92ab 154 };
darienf 20:6d2af70c92ab 155
darienf 20:6d2af70c92ab 156 form.Controls.Add(ecgView);
darienf 20:6d2af70c92ab 157 ecgView.On_AppendChart(this, args);
darienf 20:6d2af70c92ab 158 result = ecgView.paceData;
darienf 20:6d2af70c92ab 159
darienf 20:6d2af70c92ab 160 Assert.AreEqual(-1, result.PaceLength(2));
darienf 20:6d2af70c92ab 161 }
darienf 20:6d2af70c92ab 162
darienf 20:6d2af70c92ab 163 [Test]
darienf 20:6d2af70c92ab 164 public void PaceDataTag5()
darienf 20:6d2af70c92ab 165 {
darienf 20:6d2af70c92ab 166 Form form = new Form();
darienf 20:6d2af70c92ab 167 EcgView ecgView = new EcgView();
darienf 20:6d2af70c92ab 168 PaceData result;
darienf 20:6d2af70c92ab 169 PartialArrayIntAvailableEventArgs args = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 170 PartialArrayIntAvailableEventArgs ecgArgs = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 171
darienf 20:6d2af70c92ab 172 ecgArgs = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 173 ecgArgs.reportID = PartialArrayIntAvailableEventArgs.PACKET_MAX30001_ECG;
darienf 20:6d2af70c92ab 174 args.sampleNumberOffset = 5;
darienf 20:6d2af70c92ab 175 args.array1 = new int[] {
darienf 20:6d2af70c92ab 176 7,
darienf 20:6d2af70c92ab 177 7,
darienf 20:6d2af70c92ab 178 5, // Tag 0 has pace data
darienf 20:6d2af70c92ab 179 7,
darienf 20:6d2af70c92ab 180 7
darienf 20:6d2af70c92ab 181 };
darienf 20:6d2af70c92ab 182
darienf 20:6d2af70c92ab 183 args.reportID = PartialArrayIntAvailableEventArgs.PACKET_MAX30001_PACE;
darienf 20:6d2af70c92ab 184 args.sampleNumberOffset = 18;
darienf 20:6d2af70c92ab 185 args.array1 = new int[] {
darienf 20:6d2af70c92ab 186 123456, 123456, 123456,
darienf 20:6d2af70c92ab 187 123456, 123456, 123456,
darienf 20:6d2af70c92ab 188 123456, 123456, 123456,
darienf 20:6d2af70c92ab 189 123456, 123456, 123456,
darienf 20:6d2af70c92ab 190 123456, 123456, 123456,
darienf 20:6d2af70c92ab 191 0 << 14 | 0 << 13 | 0 << 12 | 1 << 2 | 1 << 1 | 1, 123456, 123456
darienf 20:6d2af70c92ab 192 };
darienf 20:6d2af70c92ab 193
darienf 20:6d2af70c92ab 194 form.Controls.Add(ecgView);
darienf 20:6d2af70c92ab 195 ecgView.On_AppendChart(this, args);
darienf 20:6d2af70c92ab 196 result = ecgView.paceData;
darienf 20:6d2af70c92ab 197
darienf 20:6d2af70c92ab 198 Assert.AreEqual(-1, result.PaceLength(5));
darienf 20:6d2af70c92ab 199 }
darienf 20:6d2af70c92ab 200
darienf 20:6d2af70c92ab 201 [Test]
darienf 20:6d2af70c92ab 202 public void PaceDataTag5Last()
darienf 20:6d2af70c92ab 203 {
darienf 20:6d2af70c92ab 204 Form form = new Form();
darienf 20:6d2af70c92ab 205 EcgView ecgView = new EcgView();
darienf 20:6d2af70c92ab 206 PaceData result;
darienf 20:6d2af70c92ab 207 PartialArrayIntAvailableEventArgs args = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 208 PartialArrayIntAvailableEventArgs ecgArgs = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 209
darienf 20:6d2af70c92ab 210 ecgArgs = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 211 ecgArgs.reportID = PartialArrayIntAvailableEventArgs.PACKET_MAX30001_ECG;
darienf 20:6d2af70c92ab 212 args.sampleNumberOffset = 5;
darienf 20:6d2af70c92ab 213 args.array1 = new int[] {
darienf 20:6d2af70c92ab 214 7,
darienf 20:6d2af70c92ab 215 7,
darienf 20:6d2af70c92ab 216 5, // Tag 0 has pace data
darienf 20:6d2af70c92ab 217 7,
darienf 20:6d2af70c92ab 218 7
darienf 20:6d2af70c92ab 219 };
darienf 20:6d2af70c92ab 220
darienf 20:6d2af70c92ab 221 args.reportID = PartialArrayIntAvailableEventArgs.PACKET_MAX30001_PACE;
darienf 20:6d2af70c92ab 222 args.sampleNumberOffset = 18;
darienf 20:6d2af70c92ab 223 args.array1 = new int[] {
darienf 20:6d2af70c92ab 224 123456, 123456, 123456,
darienf 20:6d2af70c92ab 225 123456, 123456, 123456,
darienf 20:6d2af70c92ab 226 123456, 123456, 123456,
darienf 20:6d2af70c92ab 227 123456, 123456, 123456,
darienf 20:6d2af70c92ab 228 123456, 123456, 123456,
darienf 20:6d2af70c92ab 229 0 << 14 | 0 << 13 | 0 << 12 | 1 << 2 | 1 << 1 | 0, 0, 1 << 2 | 1 << 1 | 1
darienf 20:6d2af70c92ab 230 };
darienf 20:6d2af70c92ab 231
darienf 20:6d2af70c92ab 232 form.Controls.Add(ecgView);
darienf 20:6d2af70c92ab 233 ecgView.On_AppendChart(this, args);
darienf 20:6d2af70c92ab 234 result = ecgView.paceData;
darienf 20:6d2af70c92ab 235
darienf 20:6d2af70c92ab 236 Assert.AreEqual(-1, result.PaceLength(5));
darienf 20:6d2af70c92ab 237 }
darienf 20:6d2af70c92ab 238
darienf 20:6d2af70c92ab 239 [Test]
darienf 20:6d2af70c92ab 240 public void PaceDataFalling()
darienf 20:6d2af70c92ab 241 {
darienf 20:6d2af70c92ab 242 Form form = new Form();
darienf 20:6d2af70c92ab 243 EcgView ecgView = new EcgView();
darienf 20:6d2af70c92ab 244 PaceData result;
darienf 20:6d2af70c92ab 245 PartialArrayIntAvailableEventArgs args = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 246 PartialArrayIntAvailableEventArgs ecgArgs = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 247
darienf 20:6d2af70c92ab 248 ecgArgs = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 249 ecgArgs.reportID = PartialArrayIntAvailableEventArgs.PACKET_MAX30001_ECG;
darienf 20:6d2af70c92ab 250 args.sampleNumberOffset = 5;
darienf 20:6d2af70c92ab 251 args.array1 = new int[] {
darienf 20:6d2af70c92ab 252 7,
darienf 20:6d2af70c92ab 253 7,
darienf 20:6d2af70c92ab 254 0, // Tag 0 has pace data
darienf 20:6d2af70c92ab 255 7,
darienf 20:6d2af70c92ab 256 7
darienf 20:6d2af70c92ab 257 };
darienf 20:6d2af70c92ab 258
darienf 20:6d2af70c92ab 259 args.reportID = PartialArrayIntAvailableEventArgs.PACKET_MAX30001_PACE;
darienf 20:6d2af70c92ab 260 args.sampleNumberOffset = 18;
darienf 20:6d2af70c92ab 261 args.array1 = new int[] {
darienf 20:6d2af70c92ab 262 0 << 14 | 0 << 13 | 0 << 12 | 1 << 2 | 0 << 1 | 1, 123456, 123456,
darienf 20:6d2af70c92ab 263 123456, 123456, 123456,
darienf 20:6d2af70c92ab 264 123456, 123456, 123456,
darienf 20:6d2af70c92ab 265 123456, 123456, 123456,
darienf 20:6d2af70c92ab 266 123456, 123456, 123456,
darienf 20:6d2af70c92ab 267 123456, 123456, 123456
darienf 20:6d2af70c92ab 268 };
darienf 20:6d2af70c92ab 269
darienf 20:6d2af70c92ab 270
darienf 20:6d2af70c92ab 271 form.Controls.Add(ecgView);
darienf 20:6d2af70c92ab 272 ecgView.On_AppendChart(this, args);
darienf 20:6d2af70c92ab 273 result = ecgView.paceData;
darienf 20:6d2af70c92ab 274
darienf 20:6d2af70c92ab 275 Assert.AreEqual(-1, result.PaceLength(0));
darienf 20:6d2af70c92ab 276 }
darienf 20:6d2af70c92ab 277
darienf 20:6d2af70c92ab 278 [Test]
darienf 20:6d2af70c92ab 279 public void PaceDataRising()
darienf 20:6d2af70c92ab 280 {
darienf 20:6d2af70c92ab 281 Form form = new Form();
darienf 20:6d2af70c92ab 282 EcgView ecgView = new EcgView();
darienf 20:6d2af70c92ab 283 PaceData result;
darienf 20:6d2af70c92ab 284 PartialArrayIntAvailableEventArgs args = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 285 PartialArrayIntAvailableEventArgs ecgArgs = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 286
darienf 20:6d2af70c92ab 287 ecgArgs = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 288 ecgArgs.reportID = PartialArrayIntAvailableEventArgs.PACKET_MAX30001_ECG;
darienf 20:6d2af70c92ab 289 args.sampleNumberOffset = 5;
darienf 20:6d2af70c92ab 290 args.array1 = new int[] {
darienf 20:6d2af70c92ab 291 7,
darienf 20:6d2af70c92ab 292 7,
darienf 20:6d2af70c92ab 293 0, // Tag 0 has pace data
darienf 20:6d2af70c92ab 294 7,
darienf 20:6d2af70c92ab 295 7
darienf 20:6d2af70c92ab 296 };
darienf 20:6d2af70c92ab 297
darienf 20:6d2af70c92ab 298 args.reportID = PartialArrayIntAvailableEventArgs.PACKET_MAX30001_PACE;
darienf 20:6d2af70c92ab 299 args.sampleNumberOffset = 18;
darienf 20:6d2af70c92ab 300 args.array1 = new int[] {
darienf 20:6d2af70c92ab 301 0 << 14 | 1 << 13 | 0 << 12 | 1 << 2 | 0 << 1 | 1, 123456, 123456,
darienf 20:6d2af70c92ab 302 // Rising Falling
darienf 20:6d2af70c92ab 303 123456, 123456, 123456,
darienf 20:6d2af70c92ab 304 123456, 123456, 123456,
darienf 20:6d2af70c92ab 305 123456, 123456, 123456,
darienf 20:6d2af70c92ab 306 123456, 123456, 123456,
darienf 20:6d2af70c92ab 307 123456, 123456, 123456
darienf 20:6d2af70c92ab 308 };
darienf 20:6d2af70c92ab 309
darienf 20:6d2af70c92ab 310
darienf 20:6d2af70c92ab 311 form.Controls.Add(ecgView);
darienf 20:6d2af70c92ab 312 ecgView.On_AppendChart(this, args);
darienf 20:6d2af70c92ab 313 result = ecgView.paceData;
darienf 20:6d2af70c92ab 314
darienf 20:6d2af70c92ab 315 Assert.AreEqual(1, result.PaceLength(0));
darienf 20:6d2af70c92ab 316 }
darienf 20:6d2af70c92ab 317
darienf 20:6d2af70c92ab 318 [Test]
darienf 20:6d2af70c92ab 319 public void PaceDataMaxCode()
darienf 20:6d2af70c92ab 320 {
darienf 20:6d2af70c92ab 321 Form form = new Form();
darienf 20:6d2af70c92ab 322 EcgView ecgView = new EcgView();
darienf 20:6d2af70c92ab 323 PaceData result;
darienf 20:6d2af70c92ab 324 PartialArrayIntAvailableEventArgs args = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 325 PartialArrayIntAvailableEventArgs ecgArgs = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 326
darienf 20:6d2af70c92ab 327 ecgArgs = new PartialArrayIntAvailableEventArgs();
darienf 20:6d2af70c92ab 328 ecgArgs.reportID = PartialArrayIntAvailableEventArgs.PACKET_MAX30001_ECG;
darienf 20:6d2af70c92ab 329 args.sampleNumberOffset = 5;
darienf 20:6d2af70c92ab 330 args.array1 = new int[] {
darienf 20:6d2af70c92ab 331 7,
darienf 20:6d2af70c92ab 332 7,
darienf 20:6d2af70c92ab 333 0, // Tag 0 has pace data
darienf 20:6d2af70c92ab 334 7,
darienf 20:6d2af70c92ab 335 7
darienf 20:6d2af70c92ab 336 };
darienf 20:6d2af70c92ab 337
darienf 20:6d2af70c92ab 338 args.reportID = PartialArrayIntAvailableEventArgs.PACKET_MAX30001_PACE;
darienf 20:6d2af70c92ab 339 args.sampleNumberOffset = 18;
darienf 20:6d2af70c92ab 340 args.array1 = new int[] {
darienf 20:6d2af70c92ab 341 0 << 14 | 0 << 13 | 0 << 12 | 0x3FF << 2 | 1 << 1 | 1, 123456, 123456,
darienf 20:6d2af70c92ab 342 123456, 123456, 123456,
darienf 20:6d2af70c92ab 343 123456, 123456, 123456,
darienf 20:6d2af70c92ab 344 123456, 123456, 123456,
darienf 20:6d2af70c92ab 345 123456, 123456, 123456,
darienf 20:6d2af70c92ab 346 123456, 123456, 123456
darienf 20:6d2af70c92ab 347 };
darienf 20:6d2af70c92ab 348
darienf 20:6d2af70c92ab 349
darienf 20:6d2af70c92ab 350 form.Controls.Add(ecgView);
darienf 20:6d2af70c92ab 351 ecgView.On_AppendChart(this, args);
darienf 20:6d2af70c92ab 352 result = ecgView.paceData;
darienf 20:6d2af70c92ab 353
darienf 20:6d2af70c92ab 354 Assert.AreEqual(-0x3FF, result.PaceLength(0));
darienf 20:6d2af70c92ab 355 }
darienf 20:6d2af70c92ab 356 */
darienf 20:6d2af70c92ab 357
darienf 20:6d2af70c92ab 358 [Test]
darienf 20:6d2af70c92ab 359 public void PaceDataParsing()
darienf 20:6d2af70c92ab 360 {
darienf 20:6d2af70c92ab 361 PaceData.PaceRegister register = new PaceData.PaceRegister(new int[] { 0x5865A6, 0x5E868C, 0x6E3FFF });
darienf 20:6d2af70c92ab 362
darienf 20:6d2af70c92ab 363 Assert.AreEqual(353, register.Edge[0].Data);
darienf 20:6d2af70c92ab 364 Assert.AreEqual(361, register.Edge[1].Data);
darienf 20:6d2af70c92ab 365 Assert.AreEqual(378, register.Edge[2].Data);
darienf 20:6d2af70c92ab 366 Assert.AreEqual(419, register.Edge[3].Data);
darienf 20:6d2af70c92ab 367 Assert.AreEqual(440, register.Edge[4].Data);
darienf 20:6d2af70c92ab 368 }
darienf 20:6d2af70c92ab 369 }
darienf 20:6d2af70c92ab 370 }