diff --git a/Octokit.Tests/Models/DeploymentTests.cs b/Octokit.Tests/Models/DeploymentTests.cs index d60c9b11..dab6b668 100644 --- a/Octokit.Tests/Models/DeploymentTests.cs +++ b/Octokit.Tests/Models/DeploymentTests.cs @@ -8,6 +8,18 @@ namespace Octokit.Tests.Models { public class DeploymentTests { + [Fact] + public void CanSerialize() + { + var deployment = new NewDeployment("ref") + { + Payload = new Dictionary {{"environment", "production"}} + }; + var deserialized = new SimpleJsonSerializer().Serialize(deployment); + + Assert.Equal(@"{""ref"":""ref"",""task"":""deploy"",""payload"":{""environment"":""production""}}", deserialized); + } + [Fact] public void CanDeserialize() { diff --git a/Octokit/Models/Request/NewDeployment.cs b/Octokit/Models/Request/NewDeployment.cs index b844ceff..7fdf30d4 100644 --- a/Octokit/Models/Request/NewDeployment.cs +++ b/Octokit/Models/Request/NewDeployment.cs @@ -1,4 +1,5 @@ -using System.Collections.ObjectModel; +using System.Collections.Generic; +using System.Collections.ObjectModel; using System.Diagnostics; using System.Diagnostics.CodeAnalysis; using System.Globalization; @@ -59,7 +60,7 @@ namespace Octokit /// /// JSON payload with extra information about the deployment. /// - public string Payload { get; set; } + public Dictionary Payload { get; set; } /// /// Optional name for the target deployment environment (e.g., production, staging, qa). Default: "production"