using Strata.RxNorm.Biz.RxNorm; using System.Collections.Generic; using System.Diagnostics.CodeAnalysis; using System.Linq; using System.Reflection; namespace Strata.RxNorm.Biz.Test.Unit.Extensions { [ExcludeFromCodeCoverage] public static class RxnConceptExtension { public static IEnumerable LoadRxnConcepts(this string fileName) { var assembly = Assembly.GetExecutingAssembly(); var lines = assembly.LoadRxnNorm(fileName); return lines.Select(l => l.ConceptCtor()).ToList(); } public static RxnConcept ConceptCtor(this string line, string separator = "|") { var data = line.Split(separator).ToArray(); var r = new RxnConcept(); r.Rxcui = data[0]; r.Lat = data[1]; r.Ts = data[2]; r.Lui = data[3]; r.Stt = data[4]; r.Sui = data[5]; r.IsPref = data[6]; r.Rxaui = data[7]; r.Saui = data[8]; r.Scui = data[9]; r.Sdui = data[10]; r.Sab = data[11]; r.Tty = data[12]; r.Code = data[13]; r.Str = data[14]; r.Srl = data[15]; r.Suppress = data[16]; r.Cvf = data[17]; return r; } } }