@@ -3,9 +3,11 @@ package github
33import (
44 "context"
55 "testing"
6+ "time"
67
78 "github.com/grafana/github-datasource/pkg/models"
89 "github.com/grafana/github-datasource/pkg/testutil"
10+ "github.com/shurcooL/githubv4"
911)
1012
1113func TestListMilestones (t * testing.T ) {
@@ -30,3 +32,85 @@ func TestListMilestones(t *testing.T) {
3032 t .Fatal (err )
3133 }
3234}
35+
36+ func TestMilestonesDataframe (t * testing.T ) {
37+ openedAt , err := time .Parse (time .RFC3339 , "2020-08-25T16:21:56+00:00" )
38+ if err != nil {
39+ t .Fatal (err )
40+ }
41+
42+ firstUser := User {
43+ ID : "1" ,
44+ Login : "testUser" ,
45+ Name : "Test User" ,
46+ Company : "ACME corp" ,
47+ 48+ }
49+ secondUser := User {
50+ ID : "2" ,
51+ Login : "testUser2" ,
52+ Name : "Second User" ,
53+ Company : "ACME corp" ,
54+ 55+ }
56+
57+ milestones := Milestones {
58+ {
59+ Closed : false ,
60+ Creator : struct {
61+ User User "graphql:\" ... on User\" "
62+ }{
63+ User : firstUser ,
64+ },
65+ DueOn : githubv4.DateTime {
66+ Time : openedAt .Add (100 * time .Hour ),
67+ },
68+ ClosedAt : githubv4.DateTime {},
69+ CreatedAt : githubv4.DateTime {
70+ Time : openedAt ,
71+ },
72+ State : githubv4 .MilestoneStateOpen ,
73+ Title : "first milestone" ,
74+ },
75+ {
76+ Closed : true ,
77+ Creator : struct {
78+ User User "graphql:\" ... on User\" "
79+ }{
80+ User : secondUser ,
81+ },
82+ DueOn : githubv4.DateTime {
83+ Time : openedAt .Add (100 * time .Hour ),
84+ },
85+ ClosedAt : githubv4.DateTime {
86+ Time : openedAt .Add (10 * time .Hour ),
87+ },
88+ CreatedAt : githubv4.DateTime {
89+ Time : openedAt ,
90+ },
91+ State : githubv4 .MilestoneStateClosed ,
92+ Title : "seoncd milestone" ,
93+ },
94+ {
95+ Closed : false ,
96+ Creator : struct {
97+ User User "graphql:\" ... on User\" "
98+ }{
99+ User : secondUser ,
100+ },
101+ DueOn : githubv4.DateTime {
102+ Time : openedAt .Add (120 * time .Hour ),
103+ },
104+ ClosedAt : githubv4.DateTime {},
105+ CreatedAt : githubv4.DateTime {
106+ Time : openedAt ,
107+ },
108+ State : githubv4 .MilestoneStateOpen ,
109+ Title : "third milestone" ,
110+ },
111+ }
112+
113+ if err := testutil .CheckGoldenFramer ("milestones" , milestones ); err != nil {
114+ t .Fatal (err )
115+ }
116+ }
0 commit comments