public void Should_return_proper_sequence() { const string expectedResult = "GGCAGATTCCCCCTAGACCCGCCCGCACCATGGTCAGGCATGCCCCTCCTCATCGCTGGGCACA"; var result = _sut.Provide(".fasta", $"> Complement: Complement: HSBGPG Human gene for bone gla protein(BGP)\n{expectedResult}"); result.First().ToString().ShouldBe(expectedResult); }
public IList <long> GetDeltas(SequenceModel[] sequenceData) { var sequences = sequenceData.Select(sequence => _provider.Provide(sequence?.FileName, sequence?.Content).First()).ToList(); _aligner = new DeltaAlignment(sequences.First(), sequences.Last()); return(_aligner.Deltas); }
public IList <ISequenceAlignment> AlignSequences(SequenceModel[] sequenceData, int minimumScore = 200) { _aligner.MinimumScore = minimumScore; var sequences = sequenceData.SelectMany(sequence => _provider.Provide(sequence?.FileName, sequence?.Content)); return(_aligner.Align(sequences)); }
public IEnumerable <Match> GetMatches(SequenceModel sequenceData) { var sequence = _sequenceProvider.Provide(sequenceData?.FileName, sequenceData?.Content)?.First(); _suffixTree = new MultiWaySuffixTree(sequence); return(_suffixTree.SearchMatches(sequence)); }
public IDictionary <string, object> GetMetadata(SequenceModel[] sequenceData) { var sequences = sequenceData.SelectMany(sequence => _provider.Provide(sequence?.FileName, sequence?.Content)).ToList(); var alignment = new PairwiseSequenceAlignment(sequences.First(), sequences.Last()); return(alignment.Metadata); }
public IDictionary <string, IList <int> > GetMatches(SequenceModel sequenceData, string[] searches, bool ignoreCase = false, int startIndex = 0) { var sequence = _sequenceProvider.Provide(sequenceData?.FileName, sequenceData?.Content)?.First(); _boyerMoore.IgnoreCase = ignoreCase; _boyerMoore.StartIndex = startIndex; return(_boyerMoore.FindMatch(sequence, searches)); }
public IndexModule(ISequenceProvider provider) { _provider = provider; Get["/"] = parameters => View["index"]; Post["/Sequence/Parse"] = _ => { var data = this.Bind <SequenceModel>(); return(Response.AsJson(_provider.Provide(data?.FileName, data?.Content).Select(x => x.ToString()))); }; }
private IEnumerable <TItem> BaseStatistics <TItem>(string fileName, string content, Func <SequenceStatistics, TItem> selector) { var sequences = _sequenceProvider.Provide(fileName, content); return(sequences.ToList().Select(x => { var stats = new SequenceStatistics(x); return selector(stats); })); }
public ISequence Translate(SequenceModel sequenceData) { var sequence = _provider.Provide(sequenceData?.FileName, sequenceData?.Content)?.First(); return(ProteinTranslation.Translate(sequence)); }
public IList <IPairwiseSequenceAlignment> AlignSequences(SequenceModel[] sequenceData) { var sequences = sequenceData.SelectMany(sequence => _provider.Provide(sequence?.FileName, sequence?.Content)); return(_aligner.Align(sequences)); }
public ISequence TranscribeToRNA(SequenceModel sequenceData) { var sequence = _sequenceProvider.Provide(sequenceData?.FileName, sequenceData?.Content)?.First(); return(Transcription.Transcribe(sequence)); }