From edd233deac62b1433f71719f8a309dfb89397e88 Mon Sep 17 00:00:00 2001 From: sagar23sj Date: Mon, 12 Jul 2021 13:57:44 +0530 Subject: [PATCH] Resources Covered : - Tag - createTagRequest --- github/git_tags_test.go | 88 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) diff --git a/github/git_tags_test.go b/github/git_tags_test.go index 02ab238520b..3962f49118f 100644 --- a/github/git_tags_test.go +++ b/github/git_tags_test.go @@ -83,3 +83,91 @@ func TestGitService_CreateTag(t *testing.T) { return err }) } + +func TestTag_Marshal(t *testing.T) { + testJSONMarshal(t, &Tag{}, "{}") + + u := &Tag{ + Tag: String("tag"), + SHA: String("sha"), + URL: String("url"), + Message: String("msg"), + Tagger: &CommitAuthor{ + Date: &referenceTime, + Name: String("name"), + Email: String("email"), + Login: String("login"), + }, + Object: &GitObject{ + Type: String("type"), + SHA: String("sha"), + URL: String("url"), + }, + Verification: &SignatureVerification{ + Verified: Bool(true), + Reason: String("reason"), + Signature: String("sign"), + Payload: String("payload"), + }, + NodeID: String("nid"), + } + + want := `{ + "tag": "tag", + "sha": "sha", + "url": "url", + "message": "msg", + "tagger": { + "date": ` + referenceTimeStr + `, + "name": "name", + "email": "email", + "username": "login" + }, + "object": { + "type": "type", + "sha": "sha", + "url": "url" + }, + "verification": { + "verified": true, + "reason": "reason", + "signature": "sign", + "payload": "payload" + }, + "node_id": "nid" + }` + + testJSONMarshal(t, u, want) +} + +func TestCreateTagRequest_Marshal(t *testing.T) { + testJSONMarshal(t, &createTagRequest{}, "{}") + + u := &createTagRequest{ + Tag: String("tag"), + Message: String("msg"), + Object: String("obj"), + Type: String("type"), + Tagger: &CommitAuthor{ + Date: &referenceTime, + Name: String("name"), + Email: String("email"), + Login: String("login"), + }, + } + + want := `{ + "tag": "tag", + "message": "msg", + "object": "obj", + "type": "type", + "tagger": { + "date": ` + referenceTimeStr + `, + "name": "name", + "email": "email", + "username": "login" + } + }` + + testJSONMarshal(t, u, want) +}