def test_variants(self): start = 120000 stop = 121000 x = pileup.Features(json="{}", build='hg19', contig='chr1', start=start, stop=stop) assert (x.start == start) assert (x.stop == stop)
def test_minimal_features_html(self): w = pileup.Features(json="{}", build='hg19', contig='chr1', start=1, stop=20) output = StringIO() state = dependency_state(w, drop_defaults=True) embed_minimal_html(output, views=w, drop_defaults=True, state=state) content = output.getvalue() assert content.splitlines()[0] == '<!DOCTYPE html>'
def test_embed_features(self): w = pileup.Features(json="{}", build='hg19', contig='chr1', start=1, stop=20) state = dependency_state(w, drop_defaults=True) data = embed_data(views=w, drop_defaults=True, state=state) state = data['manager_state']['state'] views = data['view_specs'] assert len(views) == 1 model_names = [s['model_name'] for s in state.values()] assert 'FeatureModel' in model_names
def ViewFeatures(self, featureRDD, contig, start, end, showPlot=True): contig_trimmed = contig.lstrip(self.chrPrefix) # Filter RDD filtered = featureRDD.transform(lambda r: r.filter( ((r.contigName == contig) | (r.contigName == contig_trimmed)) & (r.start < end) & (r.end > start))) # convert to GA4GH JSON to be consumed by mango-viz module json = self.ac._jvm.org.bdgenomics.mango.converters.GA4GHutil.featureRDDtoJSON( filtered._jvmRdd) # visualize if (showPlot): return pileup.Features(json=json, build=self.build, contig=contig, start=start, stop=end)
def test_embed_data_two_widgets(self): w1 = pileup.Variants(json="{}", build='hg19', contig='chr1', start=1, stop=20) w2 = pileup.Features(json="{}", build='hg19', contig='chr1', start=1, stop=20) jslink((w1, 'start'), (w2, 'start')) state = dependency_state([w1, w2], drop_defaults=True) data = embed_data(views=[w1, w2], drop_defaults=True, state=state) state = data['manager_state']['state'] views = data['view_specs'] assert len(views) == 2 model_names = [s['model_name'] for s in state.values()] assert 'VariantModel' in model_names assert 'FeatureModel' in model_names