Travis Harris ff9521ce3d Implement Review API for Pull Requests (#1648)
* First Iteration Need to finish tests and docs

* Mostly Complete

* Fixing tests and adding review comments

* Added tests for reactive client

* Moved Reviews inside fo the Pull request client for better organization and began initial intigration testing

* Fixing bad recursive function breaking tests

* test fixes

* Add paging support to review comments call

* Fixing recursive function

* Addressing comments from PR

* fixing CI break

* Typo build break

* Fixing Convention Tests

* Adding correct nameof() usage in Ensure

* Small consitancy changes

* Trigger build

* Address PR Comments

* Fixup test naming

* Fix sub client ordering and incorrect URL

* Tidy up comments and remove StringEnum wrapper from Request models as it is only for Response models

* Rename GetReview to Get

* tweak debugger display

* Rework integration tests - implement the easy Get/GetAll ones first...

* Implement integration tests for Create method.
Move helpers to create PR/review into SetupHelper class
Fixed up review status enum to contain correct values
Tests for Approve/RequestChanges currently failing as a user cant approve/request changes on their own PR

* Implement secondary account settings for integration tests and a new [DualAccountTest] attribute for discovery when configured
Change integration test to create PR from the 2nd account, so the main test account is able to perform review actions on the PR

* Add integration tests for Delete, Dismiss and Submit methods
Fixed up API client implementation for delete (was looking for incorrect 201 http status)
Removed unnecessary await/async calls from client implementations that dont need to do anything with the result

* Attempting to add comments as part of a review revealed that we cant use the existing PullRequestReviewCommentCreate class as the API throws a validation error due to the CommitId field
These newer review APIs need a DraftPullRequestReviewComment (that doesnt have a commitId) instead

* add second test account user/password to configure-integration-tests script
2017-08-16 20:50:25 +10:00
2014-12-11 17:02:36 +10:30
2017-04-03 10:49:57 +10:00
2017-04-03 10:49:57 +10:00
2017-05-04 20:32:22 +10:00
2017-01-10 08:34:28 +11:00
2014-03-31 12:46:45 +13:00
2016-05-11 14:01:02 +02:00

Octokit - GitHub API Client Library for .NET

Build status Build Status Join the chat at https://gitter.im/octokit/octokit.net

logo

Octokit is a client library targeting .NET 4.5 and above that provides an easy way to interact with the GitHub API.

Usage examples

Get public info on a specific user.

var github = new GitHubClient(new ProductHeaderValue("MyAmazingApp"));
var user = await github.User.Get("half-ogre");
Console.WriteLine(user.Followers + " folks love the half ogre!");

Supported Platforms

  • .NET 4.5 (Desktop / Server)
  • Xamarin.iOS / Xamarin.Android / Xamarin.Mac
  • Mono 3.x
  • Windows 8 / 8.1 Store Apps

Getting Started

Octokit is available on NuGet.

Install-Package Octokit

or an IObservable based GitHub API client library for .NET using Reactive Extensions

Install-Package Octokit.Reactive

Beta packages

Unstable NuGet packages that track the master branch of this repository are available at https://ci.appveyor.com/nuget/octokit-net

In Xamarin Studio you can find this option under the project's context menu: Add | Add Packages...*.

Documentation

Documentation is available at http://octokitnet.readthedocs.io/en/latest/.

Build

Octokit is a single assembly designed to be easy to deploy anywhere. If you prefer to compile it yourself, youll need:

  • Visual Studio 2015 or Xamarin Studio
  • Windows 8.1 or higher to build and test the WinRT projects

To clone it locally click the "Clone in Desktop" button above or run the following git commands.

git clone git@github.com:octokit/Octokit.net.git Octokit
cd Octokit
.\build.cmd

Contribute

Visit the Contributor Guidelines for more details. All contributors are expected to follow our Code of Conduct.

Problems?

Octokit is 100% certified to be bug free. If you find an issue with our certification, please visit the issue tracker and report the issue.

Please be kind and search to see if the issue is already logged before creating a new one. If you're pressed for time, log it anyways.

When creating an issue, clearly explain

  • What you were trying to do.
  • What you expected to happen.
  • What actually happened.
  • Steps to reproduce the problem.

Also include any other information you think is relevant to reproduce the problem.

Copyright 2013 GitHub, Inc.

Licensed under the MIT License

Description
A GitHub API client library for .NET
Readme 111 MiB
Languages
C# 99.9%