File tree Expand file tree Collapse file tree 3 files changed +91
-2
lines changed Expand file tree Collapse file tree 3 files changed +91
-2
lines changed Original file line number Diff line number Diff line change @@ -46,7 +46,7 @@ tests = [
4646 " dvc-render[table]" ,
4747 " dvc-render[markdown]" ,
4848 " pytest==7.2.0" ,
49- " pytest-sugar==0.9.5 " ,
49+ " pytest-sugar==0.9.7 " ,
5050 " pytest-cov==3.0.0" ,
5151 " pytest-mock==3.8.2" ,
5252 " mypy==1.2.0" ,
Original file line number Diff line number Diff line change @@ -211,7 +211,18 @@ def get_revs(self):
211211 """
212212 Returns all revisions that were collected that have datapoints.
213213 """
214- return self .properties .get ("revs_with_datapoints" , [])
214+ return (
215+ self .properties .get ("revs_with_datapoints" , [])
216+ or self ._get_revs_from_datapoints ()
217+ )
218+
219+ def _get_revs_from_datapoints (self ):
220+ revs = []
221+ for datapoint in self .datapoints :
222+ rev = datapoint .get ("rev" )
223+ if rev and rev not in revs :
224+ revs .append (rev )
225+ return revs
215226
216227 def _process_optional_anchors (self , split_anchors : List [str ]):
217228 optional_anchors = [
Original file line number Diff line number Diff line change @@ -526,6 +526,84 @@ def test_optional_anchors_linear( # noqa: PLR0913
526526 assert plot_content ["layer" ][0 ]["transform" ][0 ]["groupby" ] == group_by
527527
528528
529+ # https://github.com/iterative/dvc-render/issues/149
530+ def test_no_revs_with_datapoints ():
531+ datapoints = [
532+ {
533+ "rev" : "B" ,
534+ "acc" : "0.05" ,
535+ "filename" : "test" ,
536+ "field" : "acc" ,
537+ "step" : 1 ,
538+ },
539+ {
540+ "rev" : "B" ,
541+ "acc" : "0.1" ,
542+ "filename" : "test" ,
543+ "field" : "acc" ,
544+ "step" : 2 ,
545+ },
546+ {
547+ "rev" : "C" ,
548+ "acc" : "0.05" ,
549+ "filename" : "test" ,
550+ "field" : "acc" ,
551+ "step" : 1 ,
552+ },
553+ {
554+ "rev" : "C" ,
555+ "acc" : "0.1" ,
556+ "filename" : "test" ,
557+ "field" : "acc" ,
558+ "step" : 2 ,
559+ },
560+ {
561+ "rev" : "D" ,
562+ "acc" : "0.05" ,
563+ "filename" : "test" ,
564+ "field" : "acc" ,
565+ "step" : 1 ,
566+ },
567+ {
568+ "rev" : "D" ,
569+ "acc" : "0.1" ,
570+ "filename" : "test" ,
571+ "field" : "acc" ,
572+ "step" : 2 ,
573+ },
574+ {
575+ "acc" : "0.05" ,
576+ "filename" : "test" ,
577+ "field" : "acc" ,
578+ "step" : 1 ,
579+ },
580+ {
581+ "acc" : "0.05" ,
582+ "filename" : "test" ,
583+ "field" : "acc" ,
584+ "step" : 2 ,
585+ },
586+ ]
587+
588+ props = {
589+ "anchors_y_definitions" : [{"filename" : "test" , "field" : "acc" }],
590+ "template" : "linear" ,
591+ "x" : "step" ,
592+ "y" : "acc" ,
593+ }
594+
595+ renderer = VegaRenderer (datapoints , "foo" , ** props )
596+ plot_content = renderer .get_filled_template ()
597+
598+ assert plot_content ["encoding" ]["color" ] == {
599+ "field" : "rev" ,
600+ "scale" : {
601+ "domain" : ["B" , "C" , "D" ],
602+ "range" : OPTIONAL_ANCHOR_RANGES ["color" ][0 :3 ],
603+ },
604+ }
605+
606+
529607@pytest .mark .parametrize (
530608 (
531609 "anchors_y_definitions" ,
You can’t perform that action at this time.
0 commit comments