/* ItemsTest.cs * part of zaaReloaded2 * * Copyright 2015 Daniel Kraus * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ using System; using System.Collections.Generic; using System.Linq; using System.Text; using NUnit.Framework; using Microsoft.Office.Interop.Word; using zaaReloaded2.LabModel; using zaaReloaded2.Formatter; using zaa = zaaReloaded2.Formatter.Elements; namespace Tests.Formatter.Elements { [TestFixture] class ItemsTest { zaaReloaded2.Formatter.Formatter _formatter; [SetUp] public void SetUp() { _formatter = new zaaReloaded2.Formatter.Formatter(new Document()); } [TearDown] public void TearDown() { ((_Document)_formatter.Document).Close(WdSaveOptions.wdDoNotSaveChanges); } [Test] public void ItemsTestWithoutCaption() { Laboratory lab = new Laboratory(); TimePoint tp = new TimePoint(); tp.TimeStamp = new DateTime(2015, 7, 13, 13, 31, 00); tp.AddItem(new LabItem("Na", "133", "133")); tp.AddItem(new LabItem("K", "6", "5")); // We do not add a 'Cl' item, and it should not appear in output. lab.AddTimePoint(tp); _formatter.ReferenceStyle = ReferenceStyle.IfAbnormal; _formatter.Laboratory = lab; _formatter.Elements.Add(new zaa.Items("Na, K, Cl")); _formatter.Run(); Assert.AreEqual("Na 133, K 6 (5)\r", _formatter.Document.Range().Text); } [Test] public void ItemsTestWithCaption() { Laboratory lab = new Laboratory(); TimePoint tp = new TimePoint(); tp.TimeStamp = new DateTime(2015, 7, 13, 13, 31, 00); tp.AddItem(new LabItem("Na", "133", "")); tp.AddItem(new LabItem("K", "6", "5")); // We do not add a 'Cl' item, and it should not appear in output. lab.AddTimePoint(tp); _formatter.ReferenceStyle = ReferenceStyle.IfAbnormal; _formatter.Laboratory = lab; _formatter.Elements.Add(new zaa.Items("Klinische Chemie: Na, K, Cl")); _formatter.Run(); Assert.AreEqual("Klinische Chemie: Na 133, K 6 (5)\r", _formatter.Document.Range().Text); } [Test] public void ItemsTestWithCaptionButNoItems() { Laboratory lab = new Laboratory(); TimePoint tp = new TimePoint(); tp.TimeStamp = new DateTime(2015, 7, 13, 13, 31, 00); tp.AddItem(new LabItem("Na", "133", "")); tp.AddItem(new LabItem("K", "6", "5")); // We do not add a 'Cl' item, and it should not appear in output. lab.AddTimePoint(tp); _formatter.ReferenceStyle = ReferenceStyle.IfAbnormal; _formatter.Laboratory = lab; _formatter.Elements.Add(new zaa.Items("Klinische Chemie: this, does, not, exist")); _formatter.Run(); Assert.AreEqual("\r", _formatter.Document.Range().Text); } } }