Compare commits

...

111 Commits

Author SHA1 Message Date
Liam Newman
f7f626a00c Fix invalid category test 2021-06-14 13:11:10 -07:00
Liam Newman
3eb2e13a6d Rename discussion url method 2021-06-14 12:55:04 -07:00
Liam Newman
44fefbbc30 Rename discussion url method 2021-06-14 12:47:41 -07:00
Liam Newman
12d4f7a807 Fix ArchTest to allow assertThrows 2021-06-14 12:47:12 -07:00
Julien Lengrand-Lambert
1087acd7a2 Updates mocks for no unknown category test 2021-06-11 09:57:19 +02:00
Julien Lengrand-Lambert
c9faa4e733 Merge remote-tracking branch 'origin/main' into feature/create-discussion-with-release 2021-06-11 09:50:41 +02:00
Julien Lengrand-Lambert
56c89e4f0b Code formatting fixes 2021-06-11 09:44:06 +02:00
Julien Lengrand-Lambert
0f4063763e Update now also tests discussion url 2021-06-11 09:41:49 +02:00
Julien Lengrand-Lambert
88003331a5 Adds discussion url value in GHRelease
* Discussion URLs are present for release where a discussion has been created
* Also adds test
2021-06-11 09:39:18 +02:00
Julien Lengrand-Lambert
a0156b0aa3 Adds test for delete or release 2021-06-11 09:27:58 +02:00
Julien Lengrand-Lambert
4d78d4cafb Adds test for update 2021-06-11 09:25:01 +02:00
Julien Lengrand-Lambert
880da37056 Adhere to naming conventions
* Also removes ignore test
2021-06-11 08:51:52 +02:00
Liam Newman
68cabc7a96 Merge pull request #1183 from t0m4uk1991/add_get_projects_method
Add list projects method for GHUser
2021-06-10 14:36:44 -07:00
t0m4uk1991
7dbccd26b9 Add get projects method for GHUser 2021-06-10 23:44:58 +03:00
Julien Lengrand-Lambert
b3f1852230 Merge remote-tracking branch 'origin/main' into feature/create-discussion-with-release 2021-06-10 22:19:01 +02:00
Julien Lengrand-Lambert
e9685e0aae Relaxes ArchTests requirements 2021-06-10 18:23:57 +02:00
Julien Lengrand-Lambert
21ffe1693d Ensures releases fails for unknown categories 2021-06-10 18:14:52 +02:00
Julien Lengrand-Lambert
0ad7b462e9 Adds test to ensure double releases fail 2021-06-10 18:06:59 +02:00
Julien Lengrand-Lambert
86963d7adb Move to own test class 2021-06-10 17:53:56 +02:00
Julien Lengrand-Lambert
5b07a5e012 Adds test for simple release 2021-06-10 17:41:10 +02:00
Liam Newman
fb69457274 Merge pull request #1153 from hub4j/dependabot/maven/org.apache.maven.plugins-maven-gpg-plugin-3.0.1
Chore(deps): Bump maven-gpg-plugin from 1.6 to 3.0.1
2021-06-09 19:23:53 -07:00
Liam Newman
05e63f5bc7 Merge pull request #1175 from t0m4uk1991/issue_rename_event_add_from_to_metadata
Add mapping for from/to fields in issue rename event
2021-06-09 19:05:29 -07:00
Julien Lengrand-Lambert
fd6ff7e484 Adds category name for releases
* Allows users to create discussions when creating or updating a new release
2021-06-10 00:40:13 +02:00
t0m4uk1991
2c06ed07a8 Add mapping for from/to fields in issue rename event 2021-06-05 11:37:41 +03:00
Liam Newman
3ced4fc9c8 Update README.md 2021-06-02 14:59:14 -07:00
Liam Newman
4748db2bc3 Update release-drafter.yml 2021-06-02 11:14:35 -07:00
Liam Newman
e0ebec5d5c [maven-release-plugin] prepare for next development iteration 2021-06-02 10:44:46 -07:00
Liam Newman
b1ff0a4453 [maven-release-plugin] prepare release github-api-1.130 2021-06-02 10:44:40 -07:00
Liam Newman
6564648230 Merge pull request #1163 from hub4j/dependabot/maven/org.eclipse.jgit-org.eclipse.jgit-5.11.1.202105131744-r
Chore(deps-dev): Bump org.eclipse.jgit from 5.11.0.202103091610-r to 5.11.1.202105131744-r
2021-06-01 16:14:25 -07:00
dependabot[bot]
48cadbc814 Chore(deps-dev): Bump org.eclipse.jgit
Bumps org.eclipse.jgit from 5.11.0.202103091610-r to 5.11.1.202105131744-r.

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-01 23:13:34 +00:00
Liam Newman
fbfba70714 Merge pull request #1159 from gsmet/check-run-enum
Fix issues related to introduction of new values in GHEvent
2021-06-01 16:13:28 -07:00
Liam Newman
30a6cc504e Merge pull request #1168 from hub4j/dependabot/maven/com.google.code.gson-gson-2.8.7
Chore(deps-dev): Bump gson from 2.8.6 to 2.8.7
2021-06-01 16:12:53 -07:00
Liam Newman
54d8fe93a8 Merge branch 'main' into check-run-enum 2021-06-01 16:05:51 -07:00
Liam Newman
4abf33acdb Merge pull request #1167 from shuheiktgw/add_meta
Add packages, actions and dependabot to meta
2021-06-01 16:05:10 -07:00
Liam Newman
c00d562b48 Remove internal map-only enum
We took a change that added an enum that was used purely for mapping from
EventInfo.type to GHEvent. This seemed fine but that enum is used only by EventInfo.

This change removed that enum and adds a map to EventInfo to do the required mapping.
This avoids shoehorning mapping behavior in to the EnumUtils.
2021-06-01 15:57:39 -07:00
dependabot[bot]
fad4753f0f Chore(deps-dev): Bump gson from 2.8.6 to 2.8.7
Bumps [gson](https://github.com/google/gson) from 2.8.6 to 2.8.7.
- [Release notes](https://github.com/google/gson/releases)
- [Changelog](https://github.com/google/gson/blob/master/CHANGELOG.md)
- [Commits](https://github.com/google/gson/compare/gson-parent-2.8.6...gson-parent-2.8.7)

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-01 22:39:41 +00:00
Liam Newman
c24df1d022 Merge pull request #1164 from bitwiseman/revert/reflective
Revert #1083 reflective access for PATCH method
2021-06-01 15:39:04 -07:00
Liam Newman
823465590e Merge pull request #1169 from hub4j/dependabot/github_actions/actions/cache-2.1.6
Chore(deps): Bump actions/cache from 2.1.5 to 2.1.6
2021-06-01 15:38:38 -07:00
Liam Newman
804db70049 Merge pull request #1170 from hub4j/dependabot/maven/com.tngtech.archunit-archunit-0.19.0
Chore(deps-dev): Bump archunit from 0.18.0 to 0.19.0
2021-06-01 15:38:26 -07:00
dependabot[bot]
1782e5a483 Chore(deps-dev): Bump archunit from 0.18.0 to 0.19.0
Bumps [archunit](https://github.com/TNG/ArchUnit) from 0.18.0 to 0.19.0.
- [Release notes](https://github.com/TNG/ArchUnit/releases)
- [Commits](https://github.com/TNG/ArchUnit/compare/v0.18.0...v0.19.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-01 02:00:30 +00:00
dependabot[bot]
b6283a0493 Chore(deps): Bump actions/cache from 2.1.5 to 2.1.6
Bumps [actions/cache](https://github.com/actions/cache) from 2.1.5 to 2.1.6.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](https://github.com/actions/cache/compare/v2.1.5...v2.1.6)

Signed-off-by: dependabot[bot] <support@github.com>
2021-06-01 02:00:29 +00:00
shuheiktgw
0bb18ee7c5 Add packages, actions, and dependabot to meta 2021-05-31 11:38:48 +09:00
Liam Newman
1a77dd270f Merge pull request #1158 from shuheiktgw/fix_getWorkflowJob
Remove a trailing slash from getWorkflowJob
2021-05-28 00:54:58 -07:00
Liam Newman
1c6ab19d59 Merge pull request #1166 from hub4j/dependabot/maven/com.diffplug.spotless-spotless-maven-plugin-2.11.1
Chore(deps): Bump spotless-maven-plugin from 2.10.3 to 2.11.1
2021-05-28 00:53:57 -07:00
Liam Newman
ef4e64dcdd Merge pull request #1165 from hub4j/dependabot/maven/org.awaitility-awaitility-4.1.0
Chore(deps-dev): Bump awaitility from 4.0.3 to 4.1.0
2021-05-28 00:53:44 -07:00
Liam Newman
946b4e963b Merge branch 'main' into fix_getWorkflowJob 2021-05-27 23:32:25 -07:00
Liam Newman
0d7867daf6 Merge branch 'main' into dependabot/maven/com.diffplug.spotless-spotless-maven-plugin-2.11.1 2021-05-27 23:31:28 -07:00
Liam Newman
3044b5437b Merge branch 'main' into dependabot/maven/org.awaitility-awaitility-4.1.0 2021-05-27 23:30:37 -07:00
shuheiktgw
4a2886531d Updaet GHWorkflowRunTest URL 2021-05-28 07:03:38 +09:00
dependabot[bot]
c5e2d8b2ae Chore(deps): Bump spotless-maven-plugin from 2.10.3 to 2.11.1
Bumps [spotless-maven-plugin](https://github.com/diffplug/spotless) from 2.10.3 to 2.11.1.
- [Release notes](https://github.com/diffplug/spotless/releases)
- [Changelog](https://github.com/diffplug/spotless/blob/main/CHANGES.md)
- [Commits](https://github.com/diffplug/spotless/compare/maven/2.10.3...maven/2.11.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-27 21:51:28 +00:00
dependabot[bot]
3041431468 Chore(deps-dev): Bump awaitility from 4.0.3 to 4.1.0
Bumps [awaitility](https://github.com/awaitility/awaitility) from 4.0.3 to 4.1.0.
- [Release notes](https://github.com/awaitility/awaitility/releases)
- [Changelog](https://github.com/awaitility/awaitility/blob/master/changelog.txt)
- [Commits](https://github.com/awaitility/awaitility/commits/awaitility-4.1.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-27 21:51:07 +00:00
Liam Newman
63b9188dad Merge pull request #1161 from hub4j/dependabot/maven/com.github.tomakehurst-wiremock-jre8-standalone-2.28.0
Chore(deps-dev): Bump wiremock-jre8-standalone from 2.27.2 to 2.28.0
2021-05-27 14:50:20 -07:00
Liam Newman
2436ed0431 Allow reflective access of java.net 2021-05-27 14:42:14 -07:00
Liam Newman
0295ad82fa Additional test tweaks 2021-05-27 11:35:26 -07:00
Liam Newman
c197dc6b7b Revert "Merge pull request #1083 from bitwiseman/issue/754"
This reverts commit 837526ce5d, reversing
changes made to 8b3f50d4d3.
2021-05-27 11:13:39 -07:00
Guillaume Smet
a79971e406 Store GHEvents as strings so that we properly handle the unknown values 2021-05-27 13:44:02 +02:00
Guillaume Smet
1a56f9d093 Add new DISCUSSION and DISCUSSION_COMMENT GHEvents 2021-05-27 13:34:39 +02:00
Liam Newman
8f3d965e70 Merge branch 'main' into dependabot/maven/org.apache.maven.plugins-maven-gpg-plugin-3.0.1 2021-05-27 04:33:08 -07:00
Liam Newman
35852055e8 Merge branch 'main' into dependabot/maven/com.github.tomakehurst-wiremock-jre8-standalone-2.28.0 2021-05-27 04:32:31 -07:00
Liam Newman
196ee25452 Merge pull request #1160 from bitwiseman/bug/withCreds
Fix withCredetials() to correctly detect missing creds
2021-05-27 04:25:33 -07:00
dependabot[bot]
7d8335423d Chore(deps-dev): Bump wiremock-jre8-standalone from 2.27.2 to 2.28.0
Bumps [wiremock-jre8-standalone](https://github.com/tomakehurst/wiremock) from 2.27.2 to 2.28.0.
- [Release notes](https://github.com/tomakehurst/wiremock/releases)
- [Commits](https://github.com/tomakehurst/wiremock/compare/2.27.2...2.28.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-27 11:24:26 +00:00
dependabot[bot]
7e8575894e Chore(deps): Bump maven-gpg-plugin from 1.6 to 3.0.1
Bumps [maven-gpg-plugin](https://github.com/apache/maven-gpg-plugin) from 1.6 to 3.0.1.
- [Release notes](https://github.com/apache/maven-gpg-plugin/releases)
- [Commits](https://github.com/apache/maven-gpg-plugin/compare/maven-gpg-plugin-1.6...maven-gpg-plugin-3.0.1)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-27 11:24:07 +00:00
Liam Newman
eac4990eac Merge pull request #1149 from hub4j/dependabot/maven/org.mockito-mockito-core-3.10.0
Chore(deps-dev): Bump mockito-core from 3.9.0 to 3.10.0
2021-05-27 04:23:46 -07:00
Liam Newman
0f17812732 Merge pull request #1148 from hub4j/dependabot/maven/org.apache.maven.plugins-maven-javadoc-plugin-3.3.0
Chore(deps): Bump maven-javadoc-plugin from 3.2.0 to 3.3.0
2021-05-27 04:23:34 -07:00
Liam Newman
3bafb965c5 Merge pull request #1147 from hub4j/dependabot/maven/com.infradna.tool-bridge-method-annotation-1.21
Chore(deps): Bump bridge-method-annotation from 1.18 to 1.21
2021-05-27 04:23:18 -07:00
Liam Newman
0e02444c07 Environmentment tests do not work on windows 2021-05-27 04:18:18 -07:00
Liam Newman
4dcc479d48 Add properties test 2021-05-27 04:00:36 -07:00
Liam Newman
a564c97763 Merge branch 'main' into bug/withCreds 2021-05-27 03:05:12 -07:00
Liam Newman
80e17109de Fix withCredetials() to correctly detect missing creds
Fixes #1155
2021-05-27 02:54:01 -07:00
shuheiktgw
c395b9d6b3 Remove a trailing slash from getWorkflowJob 2021-05-27 14:20:16 +09:00
dependabot[bot]
e34d33f1cd Chore(deps): Bump maven-javadoc-plugin from 3.2.0 to 3.3.0
Bumps [maven-javadoc-plugin](https://github.com/apache/maven-javadoc-plugin) from 3.2.0 to 3.3.0.
- [Release notes](https://github.com/apache/maven-javadoc-plugin/releases)
- [Commits](https://github.com/apache/maven-javadoc-plugin/compare/maven-javadoc-plugin-3.2.0...maven-javadoc-plugin-3.3.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-25 07:05:30 +00:00
dependabot[bot]
1c920dee06 Chore(deps): Bump bridge-method-annotation from 1.18 to 1.21
Bumps [bridge-method-annotation](https://github.com/infradna/bridge-method-injector) from 1.18 to 1.21.
- [Release notes](https://github.com/infradna/bridge-method-injector/releases)
- [Commits](https://github.com/infradna/bridge-method-injector/compare/bridge-method-injector-parent-1.18...bridge-method-injector-parent-1.21)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-25 07:05:02 +00:00
Liam Newman
955d2e0a07 Merge branch 'main' into dependabot/maven/org.mockito-mockito-core-3.10.0 2021-05-24 23:25:13 -07:00
Liam Newman
d0912009dd Merge pull request #1150 from hub4j/dependabot/maven/org.jacoco-jacoco-maven-plugin-0.8.7
Chore(deps): Bump jacoco-maven-plugin from 0.8.6 to 0.8.7
2021-05-24 23:24:21 -07:00
dependabot[bot]
e68950e619 Chore(deps): Bump jacoco-maven-plugin from 0.8.6 to 0.8.7
Bumps [jacoco-maven-plugin](https://github.com/jacoco/jacoco) from 0.8.6 to 0.8.7.
- [Release notes](https://github.com/jacoco/jacoco/releases)
- [Commits](https://github.com/jacoco/jacoco/compare/v0.8.6...v0.8.7)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-24 15:40:32 +00:00
dependabot[bot]
93c026b7af Chore(deps-dev): Bump mockito-core from 3.9.0 to 3.10.0
Bumps [mockito-core](https://github.com/mockito/mockito) from 3.9.0 to 3.10.0.
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v3.9.0...v3.10.0)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-24 15:40:26 +00:00
Liam Newman
5254839ff7 codecov/codecov-action@v1.5.0 2021-05-24 08:39:44 -07:00
Liam Newman
6ca0d83b70 Update release-drafter.yml 2021-05-24 07:49:09 -07:00
Liam Newman
8ed832a303 [maven-release-plugin] prepare for next development iteration 2021-05-24 05:08:48 -07:00
Liam Newman
dbf6d3bf37 [maven-release-plugin] prepare release github-api-1.129 2021-05-24 05:08:42 -07:00
Liam Newman
081a454ec8 Merge pull request #1141 from hub4j/bitwiseman-patch-1
Only run coverage on code in this library
2021-05-17 14:47:00 -07:00
Liam Newman
543b643fdb Only run coverage on code in this library 2021-05-17 13:55:18 -07:00
Liam Newman
d02f194668 Update release-drafter.yml 2021-05-13 13:03:08 -07:00
Liam Newman
9c8c00b77c Update release-drafter.yml 2021-05-13 12:55:43 -07:00
Liam Newman
a23de4707b Create release-drafter.yml 2021-05-13 12:54:38 -07:00
Liam Newman
301303bd90 Merge pull request #1139 from akashRindhe/feature/1080
(feat) Add method to check if Organization has projects enabled
2021-05-13 11:26:07 -07:00
Akash Rindhe
4689b8f885 (feat) Add method to set projects enabled flag for Organization
[https://github.com/hub4j/github-api/issues/1080]
2021-05-14 00:36:55 +08:00
Akash Rindhe
c4de682493 (feat) Add method to check if Organization has projects enabled
[https://github.com/hub4j/github-api/issues/1080]
2021-05-14 00:35:22 +08:00
Liam Newman
b23934a5a1 Merge pull request #1134 from bitwiseman/task/atomic
Minimize locking for rate limit
2021-05-11 10:26:00 -07:00
Liam Newman
f2eecc3cc5 Update src/main/java/org/kohsuke/github/GHRateLimit.java 2021-05-06 14:37:11 -07:00
dependabot[bot]
f5310965dc Merge pull request #1114 from hub4j/dependabot/github_actions/actions/setup-java-v2 2021-05-04 21:38:47 +00:00
Tim Jacomb
47ffff3407 Update maven-build.yml 2021-05-04 22:33:24 +01:00
Liam Newman
f2a70a46ad Minimize locking for rate limit
Rather than locking to ensure ordered updates to rate limit, use AtomicReference. This reduces
the need for locking to only when rate limit has expired and we have to call getRateLimit().
2021-05-04 12:29:05 -07:00
dependabot[bot]
acd5c6baa6 Chore(deps): Bump actions/setup-java from v1 to v2
Bumps [actions/setup-java](https://github.com/actions/setup-java) from v1 to v2.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/v1...8764a52df183aa0ccea74521dfd9d506ffc7a19a)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-04 19:25:01 +00:00
Liam Newman
06d02059cb Merge pull request #1131 from hub4j/dependabot/maven/org.apache.maven.plugins-maven-project-info-reports-plugin-3.1.2
Chore(deps): Bump maven-project-info-reports-plugin from 3.1.1 to 3.1.2
2021-05-04 12:24:38 -07:00
Liam Newman
603288c361 Merge pull request #1132 from hub4j/dependabot/maven/com.diffplug.spotless-spotless-maven-plugin-2.10.3
Chore(deps): Bump spotless-maven-plugin from 2.10.1 to 2.10.3
2021-05-04 12:24:24 -07:00
dependabot[bot]
09ee3168f9 Chore(deps): Bump spotless-maven-plugin from 2.10.1 to 2.10.3
Bumps [spotless-maven-plugin](https://github.com/diffplug/project) from 2.10.1 to 2.10.3.
- [Release notes](https://github.com/diffplug/project/releases)
- [Commits](https://github.com/diffplug/project/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-01 02:01:02 +00:00
dependabot[bot]
1559d063c7 Chore(deps): Bump maven-project-info-reports-plugin from 3.1.1 to 3.1.2
Bumps [maven-project-info-reports-plugin](https://github.com/apache/maven-project-info-reports-plugin) from 3.1.1 to 3.1.2.
- [Release notes](https://github.com/apache/maven-project-info-reports-plugin/releases)
- [Commits](https://github.com/apache/maven-project-info-reports-plugin/compare/maven-project-info-reports-plugin-3.1.1...maven-project-info-reports-plugin-3.1.2)

Signed-off-by: dependabot[bot] <support@github.com>
2021-05-01 02:00:57 +00:00
Liam Newman
cfdcb182a4 Merge pull request #1124 from alexanderkjall/upgrade-commons-io
upgrade commons-io due to CVE-2021-29425
2021-04-29 08:41:16 -07:00
Liam Newman
d526b13d7d Apply suggestions from code review
Co-authored-by: Guillaume Smet <guillaume.smet@gmail.com>
2021-04-28 13:33:13 -07:00
Liam Newman
fffe31220e Make apache commons restrictions more accurate and legible 2021-04-27 15:19:46 -07:00
Liam Newman
ce17396ea6 Merge branch 'main' into upgrade-commons-io 2021-04-27 02:33:44 -07:00
Liam Newman
d18e81dc74 More informative message 2021-04-26 21:13:09 -07:00
Liam Newman
6ae5acba5d Fix typo 2021-04-26 21:08:59 -07:00
Liam Newman
0a1c803f69 Test for approved Apache commons methods
This is an inaccurate way of verifying that we are calling only methods that are
compatible with older versions of commons, but it should be sufficient to deter
usage without careful consideration.
2021-04-26 20:39:27 -07:00
Liam Newman
fa0865b208 Fix assertThat arch test 2021-04-26 14:27:28 -07:00
Liam Newman
886887913c Merge pull request #1126 from akashRindhe/refactor/1099
(refactor) Replace complex parsing logic from GHEvent.type to GHEvent with static mapping
2021-04-21 23:53:10 -07:00
Liam Newman
5c64fec032 Streamline with EnumUtils 2021-04-21 16:57:37 -07:00
Liam Newman
892f60ea16 [maven-release-plugin] prepare for next development iteration 2021-04-21 11:05:58 -07:00
Akash Rindhe
72dc5c5d18 (refactor) Replace complex parsing logic from GHEvent.type to GHEvent with static mapping
[https://github.com/hub4j/github-api/issues/1099]
2021-04-21 20:07:10 +08:00
Alexander Kjäll
e629a23bd4 upgrade commons-io due to CVE-2021-29425, it's a vulnerability in FileNameUtils.normalize that isn't used in this project 2021-04-21 11:37:38 +02:00
277 changed files with 10525 additions and 801 deletions

View File

@@ -17,11 +17,12 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: Set up JDK
uses: actions/setup-java@v1
uses: actions/setup-java@v2
with:
java-version: ${{ matrix.java }}
distribution: 'adopt'
- name: Cached .m2
uses: actions/cache@v2.1.5
uses: actions/cache@v2.1.6
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
@@ -41,10 +42,11 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: Set up JDK
uses: actions/setup-java@v1
uses: actions/setup-java@v2
with:
java-version: ${{ matrix.java }}
- uses: actions/cache@v2.1.5
distribution: 'adopt'
- uses: actions/cache@v2.1.6
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
@@ -63,10 +65,11 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: Set up JDK
uses: actions/setup-java@v1
uses: actions/setup-java@v2
with:
java-version: ${{ matrix.java }}
- uses: actions/cache@v2.1.5
distribution: 'adopt'
- uses: actions/cache@v2.1.6
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
@@ -81,15 +84,15 @@ jobs:
run: mvn -B install -D enable-ci --file pom.xml
- name: Codecov Report
if: matrix.os != 'windows' && matrix.java == '8'
uses: codecov/codecov-action@v1.4.1
uses: codecov/codecov-action@v1.5.0
# JDK 11+
- name: Maven Install without Code Coverage
if: matrix.os == 'windows' && matrix.java != '8'
env:
MAVEN_OPTS: ${{ env.JAVA_11_PLUS_MAVEN_OPTS }}
run: mvn -B install --file pom.xml
run: mvn -B install --file pom.xml "-Dsurefire.argLine=--add-opens java.base/java.net=ALL-UNNAMED"
- name: Maven Install with Code Coverage
if: matrix.os != 'windows' && matrix.java != '8'
env:
MAVEN_OPTS: ${{ env.JAVA_11_PLUS_MAVEN_OPTS }}
run: mvn -B install -D enable-ci --file pom.xml
run: mvn -B install -D enable-ci --file pom.xml "-Dsurefire.argLine=--add-opens java.base/java.net=ALL-UNNAMED"

16
.github/workflows/release-drafter.yml vendored Normal file
View File

@@ -0,0 +1,16 @@
name: Release Drafter
on:
push:
branches:
- main
jobs:
update_release_draft:
runs-on: ubuntu-latest
steps:
- name: Release Drafter
uses: release-drafter/release-drafter@v5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -3,7 +3,7 @@
[![Sonatype Nexus (Releases)](https://img.shields.io/nexus/r/org.kohsuke/github-api?server=https%3A%2F%2Foss.sonatype.org)](https://mvnrepository.com/artifact/org.kohsuke/github-api)
[![Join the chat at https://gitter.im/hub4j/github-api](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/hub4j/github-api?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
![CI](https://github.com/hub4j/github-api/workflows/CI/badge.svg?branch=main)
[![codecov](https://codecov.io/gh/hub4j/github-api/branch/main/graph/badge.svg?token=j1jQqydZLJ)](https://codecov.io/gh/hub4j/github-api)
See https://github-api.kohsuke.org/ for more details

32
pom.xml
View File

@@ -2,7 +2,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>org.kohsuke</groupId>
<artifactId>github-api</artifactId>
<version>1.128</version>
<version>1.131-SNAPSHOT</version>
<name>GitHub API for Java</name>
<url>https://github-api.kohsuke.org/</url>
<description>GitHub API for Java</description>
@@ -11,7 +11,7 @@
<connection>scm:git:git@github.com/hub4j/${project.artifactId}.git</connection>
<developerConnection>scm:git:ssh://git@github.com/hub4j/${project.artifactId}.git</developerConnection>
<url>https://github.com/hub4j/github-api/</url>
<tag>github-api-1.128</tag>
<tag>HEAD</tag>
</scm>
<distributionManagement>
@@ -97,12 +97,12 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.6</version>
<version>3.0.1</version>
</plugin>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.6</version>
<version>0.8.7</version>
<executions>
<execution>
<goals>
@@ -110,6 +110,8 @@
</goals>
<configuration>
<propertyName>jacoco.surefire.argLine</propertyName>
<!-- no need to get data about external code. It dramatically reduces performance of JaCoCo for nothing -->
<include>org.kohsuke.*</include>
</configuration>
</execution>
<!-- attached to Maven test phase -->
@@ -204,7 +206,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.2.0</version>
<version>3.3.0</version>
<configuration>
<source>8</source>
<failOnWarnings>true</failOnWarnings>
@@ -248,7 +250,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>3.1.1</version>
<version>3.1.2</version>
<dependencies>
<dependency>
<groupId>org.apache.bcel</groupId>
@@ -321,7 +323,7 @@
<plugin>
<groupId>com.diffplug.spotless</groupId>
<artifactId>spotless-maven-plugin</artifactId>
<version>2.10.1</version>
<version>2.11.1</version>
<executions>
<execution>
<id>spotless-check</id>
@@ -387,7 +389,7 @@
<dependency>
<groupId>com.tngtech.archunit</groupId>
<artifactId>archunit</artifactId>
<version>0.18.0</version>
<version>0.19.0</version>
<scope>test</scope>
</dependency>
<dependency>
@@ -418,7 +420,7 @@
<dependency>
<groupId>org.awaitility</groupId>
<artifactId>awaitility</artifactId>
<version>4.0.3</version>
<version>4.1.0</version>
<scope>test</scope>
</dependency>
<dependency>
@@ -429,12 +431,12 @@
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
<version>2.8.0</version>
</dependency>
<dependency>
<groupId>com.infradna.tool</groupId>
<artifactId>bridge-method-annotation</artifactId>
<version>1.18</version>
<version>1.21</version>
<optional>true</optional>
</dependency>
<!-- for stapler-jetty -->
@@ -467,7 +469,7 @@
<dependency>
<groupId>org.eclipse.jgit</groupId>
<artifactId>org.eclipse.jgit</artifactId>
<version>5.11.0.202103091610-r</version>
<version>5.11.1.202105131744-r</version>
<scope>test</scope>
</dependency>
<dependency>
@@ -523,7 +525,7 @@
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>3.9.0</version>
<version>3.10.0</version>
<scope>test</scope>
</dependency>
<dependency>
@@ -535,13 +537,13 @@
<dependency>
<groupId>com.github.tomakehurst</groupId>
<artifactId>wiremock-jre8-standalone</artifactId>
<version>2.27.2</version>
<version>2.28.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.6</version>
<version>2.8.7</version>
<scope>test</scope>
</dependency>
<dependency>

View File

@@ -1,9 +1,12 @@
package org.kohsuke.github;
import org.kohsuke.github.internal.EnumUtils;
import java.io.IOException;
import java.net.URL;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import static org.kohsuke.github.internal.Previews.MACHINE_MAN;
@@ -20,7 +23,7 @@ public class GHApp extends GHObject {
private String description;
private String externalUrl;
private Map<String, String> permissions;
private List<GHEvent> events;
private List<String> events;
private long installationsCount;
private String htmlUrl;
@@ -114,7 +117,9 @@ public class GHApp extends GHObject {
* @return the events
*/
public List<GHEvent> getEvents() {
return events;
return events.stream()
.map(e -> EnumUtils.getEnumOrDefault(GHEvent.class, e, GHEvent.UNKNOWN))
.collect(Collectors.toList());
}
/**
@@ -126,7 +131,7 @@ public class GHApp extends GHObject {
*/
@Deprecated
public void setEvents(List<GHEvent> events) {
this.events = events;
this.events = events.stream().map(GHEvent::symbol).collect(Collectors.toList());
}
/**

View File

@@ -1,12 +1,14 @@
package org.kohsuke.github;
import com.fasterxml.jackson.annotation.JsonProperty;
import org.kohsuke.github.internal.EnumUtils;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import static org.kohsuke.github.internal.Previews.GAMBIT;
import static org.kohsuke.github.internal.Previews.MACHINE_MAN;
@@ -35,7 +37,7 @@ public class GHAppInstallation extends GHObject {
@JsonProperty("target_type")
private GHTargetType targetType;
private Map<String, GHPermissionType> permissions;
private List<GHEvent> events;
private List<String> events;
@JsonProperty("single_file_name")
private String singleFileName;
@JsonProperty("repository_selection")
@@ -250,7 +252,9 @@ public class GHAppInstallation extends GHObject {
* @return the events
*/
public List<GHEvent> getEvents() {
return events;
return events.stream()
.map(e -> EnumUtils.getEnumOrDefault(GHEvent.class, e, GHEvent.UNKNOWN))
.collect(Collectors.toList());
}
/**
@@ -262,7 +266,7 @@ public class GHAppInstallation extends GHObject {
*/
@Deprecated
public void setEvents(List<GHEvent> events) {
this.events = events;
this.events = events.stream().map(GHEvent::symbol).collect(Collectors.toList());
}
/**

View File

@@ -20,6 +20,8 @@ public enum GHEvent {
DEPLOY_KEY,
DEPLOYMENT,
DEPLOYMENT_STATUS,
DISCUSSION,
DISCUSSION_COMMENT,
DOWNLOAD,
FOLLOW,
FORK,

View File

@@ -4,7 +4,7 @@ import com.fasterxml.jackson.databind.node.ObjectNode;
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import java.io.IOException;
import java.util.Date;
import java.util.*;
/**
* Represents an event.
@@ -18,6 +18,16 @@ public class GHEventInfo extends GitHubInteractiveObject {
private long id;
private String created_at;
/**
* Representation of GitHub Event API Event Type.
*
* This is not the same as the values used for hook methods such as
* {@link GHRepository#createHook(String, Map, Collection, boolean)}.
*
* @see <a href="https://docs.github.com/en/developers/webhooks-and-events/github-event-types">GitHub event
* types</a>
*/
private String type;
// these are all shallow objects
@@ -40,20 +50,45 @@ public class GHEventInfo extends GitHubInteractiveObject {
private String name; // owner/repo
}
static final Map<String, GHEvent> mapTypeStringToEvent = createEventMap();
/**
* Map for GitHub Event API Event Type to GHEvent.
*
* @see <a href="https://docs.github.com/en/developers/webhooks-and-events/github-event-types">GitHub event
* types</a>
*/
private static Map<String, GHEvent> createEventMap() {
HashMap<String, GHEvent> map = new HashMap<>();
map.put("CommitCommentEvent", GHEvent.COMMIT_COMMENT);
map.put("CreateEvent", GHEvent.CREATE);
map.put("DeleteEvent", GHEvent.DELETE);
map.put("ForkEvent", GHEvent.FORK);
map.put("GollumEvent", GHEvent.GOLLUM);
map.put("IssueCommentEvent", GHEvent.ISSUE_COMMENT);
map.put("IssuesEvent", GHEvent.ISSUES);
map.put("MemberEvent", GHEvent.MEMBER);
map.put("PublicEvent", GHEvent.PUBLIC);
map.put("PullRequestEvent", GHEvent.PULL_REQUEST);
map.put("PullRequestReviewEvent", GHEvent.PULL_REQUEST_REVIEW);
map.put("PullRequestReviewCommentEvent", GHEvent.PULL_REQUEST_REVIEW_COMMENT);
map.put("PushEvent", GHEvent.PUSH);
map.put("ReleaseEvent", GHEvent.RELEASE);
map.put("WatchEvent", GHEvent.WATCH);
return Collections.unmodifiableMap(map);
}
static GHEvent transformTypeToGHEvent(String type) {
return mapTypeStringToEvent.getOrDefault(type, GHEvent.UNKNOWN);
}
/**
* Gets type.
*
* @return the type
*/
public GHEvent getType() {
String t = type;
if (t.endsWith("Event"))
t = t.substring(0, t.length() - 5);
for (GHEvent e : GHEvent.values()) {
if (e.name().replace("_", "").equalsIgnoreCase(t))
return e;
}
return GHEvent.UNKNOWN;
return transformTypeToGHEvent(type);
}
GHEventInfo wrapUp(GitHub root) {

View File

@@ -1,13 +1,13 @@
package org.kohsuke.github;
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
import org.kohsuke.github.internal.EnumUtils;
import java.io.IOException;
import java.net.URL;
import java.util.Collections;
import java.util.EnumSet;
import java.util.List;
import java.util.Locale;
import java.util.Map;
/**
@@ -40,10 +40,7 @@ public abstract class GHHook extends GHObject {
public EnumSet<GHEvent> getEvents() {
EnumSet<GHEvent> s = EnumSet.noneOf(GHEvent.class);
for (String e : events) {
if (e.equals("*"))
s.add(GHEvent.ALL);
else
s.add(Enum.valueOf(GHEvent.class, e.toUpperCase(Locale.ENGLISH)));
s.add(e.equals("*") ? GHEvent.ALL : EnumUtils.getEnumOrDefault(GHEvent.class, e, GHEvent.UNKNOWN));
}
return s;
}

View File

@@ -21,6 +21,7 @@ public class GHIssueEvent extends GitHubInteractiveObject {
private GHMilestone milestone;
private GHLabel label;
private GHUser assignee;
private GHIssueRename rename;
private GHIssue issue;
@@ -144,6 +145,16 @@ public class GHIssueEvent extends GitHubInteractiveObject {
return assignee;
}
/**
* Get the {@link GHIssueRename} that contains information about issue old and new name. Only present for event
* "renamed", <code>null</code> otherwise.
*
* @return the GHIssueRename
*/
public GHIssueRename getRename() {
return this.rename;
}
GHIssueEvent wrapUp(GitHub root) {
this.root = root;
return this;

View File

@@ -0,0 +1,32 @@
package org.kohsuke.github;
/**
* The type GHIssueRename.
*
* @see <a href="https://docs.github.com/en/developers/webhooks-and-events/events/issue-event-types#renamed">Github
* documentation for renamed event</a>
*
* @author Andrii Tomchuk
*/
public class GHIssueRename {
private String from = "";
private String to = "";
/**
* Old issue name.
*
* @return old issue name
*/
public String getFrom() {
return this.from;
}
/**
* New issue name.
*
* @return new issue name
*/
public String getTo() {
return this.to;
}
}

View File

@@ -23,6 +23,9 @@ public class GHMeta {
private List<String> api;
private List<String> pages;
private List<String> importer = new ArrayList<>();
private List<String> packages;
private List<String> actions;
private List<String> dependabot;
/**
* Is verifiable password authentication boolean.
@@ -86,4 +89,31 @@ public class GHMeta {
public List<String> getImporter() {
return Collections.unmodifiableList(importer);
}
/**
* Gets package.
*
* @return the package
*/
public List<String> getPackages() {
return Collections.unmodifiableList(packages);
}
/**
* Gets actions.
*
* @return the actions
*/
public List<String> getActions() {
return Collections.unmodifiableList(actions);
}
/**
* Gets dependabot.
*
* @return the dependabot
*/
public List<String> getDependabot() {
return Collections.unmodifiableList(dependabot);
}
}

View File

@@ -18,6 +18,9 @@ import static org.kohsuke.github.internal.Previews.INERTIA;
* @author Kohsuke Kawaguchi
*/
public class GHOrganization extends GHPerson {
private boolean has_organization_projects;
GHOrganization wrapUp(GitHub root) {
return (GHOrganization) super.wrapUp(root);
}
@@ -367,6 +370,35 @@ public class GHOrganization extends GHPerson {
root.createRequest().method("DELETE").withUrlPath("/orgs/" + login + "/public_members/" + u.getLogin()).send();
}
/**
* Are projects enabled for organization boolean.
*
* @return the boolean
*/
public boolean areOrganizationProjectsEnabled() {
return has_organization_projects;
}
/**
* Sets organization projects enabled status boolean
*
* @param newStatus
* enable status
* @throws IOException
* the io exception
*/
public void enableOrganizationProjects(boolean newStatus) throws IOException {
edit("has_organization_projects", newStatus);
}
private void edit(String key, Object value) throws IOException {
root.createRequest()
.withUrlPath(String.format("/orgs/%s", login))
.method("PATCH")
.with(key, value)
.fetchInto(this);
}
/**
* Returns the projects for this organization.
*

View File

@@ -12,6 +12,7 @@ import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeParseException;
import java.util.Date;
import java.util.Objects;
import java.util.concurrent.atomic.AtomicReference;
import java.util.logging.Logger;
import javax.annotation.CheckForNull;
@@ -344,7 +345,7 @@ public class GHRateLimit {
private static final UnknownLimitRecord DEFAULT = new UnknownLimitRecord(Long.MIN_VALUE);
// The starting current UnknownLimitRecord is an expired record.
private static UnknownLimitRecord current = DEFAULT;
private static final AtomicReference<UnknownLimitRecord> current = new AtomicReference<>(DEFAULT);
/**
* Create a new unknown record that resets at the specified time.
@@ -356,18 +357,20 @@ public class GHRateLimit {
super(unknownLimit, unknownRemaining, resetEpochSeconds);
}
static synchronized Record current() {
if (current.isExpired()) {
current = new UnknownLimitRecord(System.currentTimeMillis() / 1000L + unknownLimitResetSeconds);
static Record current() {
Record result = current.get();
if (result.isExpired()) {
current.set(new UnknownLimitRecord(System.currentTimeMillis() / 1000L + unknownLimitResetSeconds));
result = current.get();
}
return current;
return result;
}
/**
* Reset the current UnknownLimitRecord. For use during testing only.
*/
static synchronized void reset() {
current = DEFAULT;
static void reset() {
current.set(DEFAULT);
unknownLimitResetSeconds = defaultUnknownLimitResetSeconds;
}
}

View File

@@ -34,6 +34,16 @@ public class GHRelease extends GHObject {
private Date published_at;
private String tarball_url;
private String zipball_url;
private String discussion_url;
/**
* Gets discussion url. Only present if a discussion relating to the release exists
*
* @return the discussion url
*/
public String getDiscussionUrl() {
return discussion_url;
}
/**
* Gets assets url.

View File

@@ -87,6 +87,18 @@ public class GHReleaseBuilder {
return this;
}
/**
* Optional
*
* @param categoryName
* the category of the discussion to be created for the release. Category should already exist
* @return the gh release builder
*/
public GHReleaseBuilder categoryName(String categoryName) {
builder.with("discussion_category_name", categoryName);
return this;
}
/**
* Create gh release.
*

View File

@@ -91,6 +91,18 @@ public class GHReleaseUpdater {
return this;
}
/**
* Optional
*
* @param categoryName
* the category of the discussion to be created for the release. Category should already exist
* @return the gh release builder
*/
public GHReleaseUpdater categoryName(String categoryName) {
builder.with("discussion_category_name", categoryName);
return this;
}
/**
* Update gh release.
*

View File

@@ -3073,7 +3073,7 @@ public class GHRepository extends GHObject {
*/
public GHWorkflowJob getWorkflowJob(long id) throws IOException {
return root.createRequest()
.withUrlPath(getApiTailUrl("/actions/jobs/"), String.valueOf(id))
.withUrlPath(getApiTailUrl("/actions/jobs"), String.valueOf(id))
.fetch(GHWorkflowJob.class)
.wrapUp(this);
}

View File

@@ -28,6 +28,8 @@ import com.infradna.tool.bridge_method_injector.WithBridgeMethods;
import java.io.IOException;
import java.util.*;
import static org.kohsuke.github.internal.Previews.INERTIA;
/**
* Represents an user of GitHub.
*
@@ -134,6 +136,22 @@ public class GHUser extends GHPerson {
return listRepositories("starred");
}
/**
* Lists all the projects.
* <p>
* https://docs.github.com/en/rest/reference/projects#list-user-projects
*
* @return the paged iterable
*/
@Deprecated
@Preview(INERTIA)
public PagedIterable<GHProject> listProjects() {
return root.createRequest()
.withPreview(INERTIA)
.withUrlPath(getApiTailUrl("projects"))
.toIterable(GHProject[].class, item -> item.wrap(root));
}
private PagedIterable<GHRepository> listRepositories(final String suffix) {
return root.createRequest()
.withUrlPath(getApiTailUrl(suffix))

View File

@@ -24,6 +24,9 @@ import javax.annotation.Nonnull;
*/
public class GitHubBuilder implements Cloneable {
// for testing
static File HOME_DIRECTORY = null;
// default scoped so unit tests can read them.
/* private */ String endpoint = GitHubClient.GITHUB_URL;
@@ -60,13 +63,13 @@ public class GitHubBuilder implements Cloneable {
builder = fromEnvironment();
if (builder.authorizationProvider != null)
if (builder.authorizationProvider != AuthorizationProvider.ANONYMOUS)
return builder;
try {
builder = fromPropertyFile();
if (builder.authorizationProvider != null)
if (builder.authorizationProvider != AuthorizationProvider.ANONYMOUS)
return builder;
} catch (FileNotFoundException e) {
// fall through
@@ -178,7 +181,7 @@ public class GitHubBuilder implements Cloneable {
* the io exception
*/
public static GitHubBuilder fromPropertyFile() throws IOException {
File homeDir = new File(System.getProperty("user.home"));
File homeDir = HOME_DIRECTORY != null ? HOME_DIRECTORY : new File(System.getProperty("user.home"));
File propertyFile = new File(homeDir, ".github");
return fromPropertyFile(propertyFile.getPath());
}

View File

@@ -14,6 +14,7 @@ import java.time.Instant;
import java.time.format.DateTimeFormatter;
import java.time.temporal.ChronoUnit;
import java.util.*;
import java.util.concurrent.atomic.AtomicReference;
import java.util.function.Consumer;
import java.util.logging.Logger;
@@ -52,10 +53,8 @@ abstract class GitHubClient {
private HttpConnector connector;
private final Object rateLimitLock = new Object();
@Nonnull
private GHRateLimit rateLimit = GHRateLimit.DEFAULT;
private final AtomicReference<GHRateLimit> rateLimit = new AtomicReference<>(GHRateLimit.DEFAULT);
private static final Logger LOGGER = Logger.getLogger(GitHubClient.class.getName());
@@ -255,9 +254,7 @@ abstract class GitHubClient {
@Nonnull
@Deprecated
GHRateLimit lastRateLimit() {
synchronized (rateLimitLock) {
return rateLimit;
}
return rateLimit.get();
}
/**
@@ -277,12 +274,19 @@ abstract class GitHubClient {
*/
@Nonnull
GHRateLimit rateLimit(@Nonnull RateLimitTarget rateLimitTarget) throws IOException {
synchronized (rateLimitLock) {
if (rateLimit.getRecord(rateLimitTarget).isExpired()) {
getRateLimit(rateLimitTarget);
GHRateLimit result = rateLimit.get();
// Most of the time rate limit is not expired, so try to avoid locking.
if (result.getRecord(rateLimitTarget).isExpired()) {
// if the rate limit is expired, synchronize to ensure
// only one call to getRateLimit() is made to refresh it.
synchronized (this) {
if (rateLimit.get().getRecord(rateLimitTarget).isExpired()) {
getRateLimit(rateLimitTarget);
}
}
return rateLimit;
result = rateLimit.get();
}
return result;
}
/**
@@ -295,15 +299,9 @@ abstract class GitHubClient {
* {@link GHRateLimit.Record} constructed from the response header information
*/
private GHRateLimit updateRateLimit(@Nonnull GHRateLimit observed) {
synchronized (rateLimitLock) {
observed = rateLimit.getMergedRateLimit(observed);
if (rateLimit != observed) {
rateLimit = observed;
LOGGER.log(FINE, "Rate limit now: {0}", rateLimit);
}
return rateLimit;
}
GHRateLimit result = rateLimit.accumulateAndGet(observed, (current, x) -> current.getMergedRateLimit(x));
LOGGER.log(FINEST, "Rate limit now: {0}", rateLimit.get());
return result;
}
/**

View File

@@ -5,6 +5,7 @@ import org.kohsuke.github.authorization.AuthorizationProvider;
import java.io.IOException;
import java.io.InputStream;
import java.lang.reflect.Field;
import java.net.HttpURLConnection;
import java.net.ProtocolException;
import java.nio.charset.StandardCharsets;
@@ -162,9 +163,30 @@ class GitHubHttpUrlConnectionClient extends GitHubClient {
connection.setRequestMethod(method);
} catch (ProtocolException e) {
// JDK only allows one of the fixed set of verbs. Try to override that
connection.setRequestProperty("X-HTTP-Method-Override", method);
connection.setRequestMethod("POST");
try {
Field $method = HttpURLConnection.class.getDeclaredField("method");
$method.setAccessible(true);
$method.set(connection, method);
} catch (Exception x) {
throw (IOException) new IOException("Failed to set the custom verb").initCause(x);
}
// sun.net.www.protocol.https.DelegatingHttpsURLConnection delegates to another HttpURLConnection
try {
Field $delegate = connection.getClass().getDeclaredField("delegate");
$delegate.setAccessible(true);
Object delegate = $delegate.get(connection);
if (delegate instanceof HttpURLConnection) {
HttpURLConnection nested = (HttpURLConnection) delegate;
setRequestMethod(method, nested);
}
} catch (NoSuchFieldException x) {
// no problem
} catch (IllegalAccessException x) {
throw (IOException) new IOException("Failed to set the custom verb").initCause(x);
}
}
if (!connection.getRequestMethod().equals(method))
throw new IllegalStateException("Failed to set the request method to " + method);
}
/**

View File

@@ -30,9 +30,27 @@ public final class EnumUtils {
if (value == null) {
return null;
}
return getEnumOrDefault(enumClass, value, defaultEnum);
}
/**
* Returns an enum value matching the value if found, {@code defaultEnum} if the value is null or cannot be matched
* to a value of the enum.
*
* @param <E>
* the type of the enum
* @param enumClass
* the type of the enum
* @param value
* the value to interpret
* @param defaultEnum
* the default enum value if the value doesn't match one of the enum value
* @return an enum value
*/
public static <E extends Enum<E>> E getEnumOrDefault(Class<E> enumClass, String value, E defaultEnum) {
try {
return Enum.valueOf(enumClass, value.toUpperCase(Locale.ROOT));
} catch (IllegalArgumentException e) {
} catch (NullPointerException | IllegalArgumentException e) {
LOGGER.warning("Unknown value " + value + " for enum class " + enumClass.getName() + ", defaulting to "
+ defaultEnum.name());
return defaultEnum;

View File

@@ -777,43 +777,6 @@ public class AppTest extends AbstractGitHubWireMockTest {
assertThat(j.hasPublicMember(b), is(false));
}
@Ignore("Needs mocking check")
@Test
public void testCreateRelease() throws Exception {
kohsuke();
GHRepository r = gitHub.getRepository("kohsuke2/testCreateRelease");
String tagName = UUID.randomUUID().toString();
String releaseName = "release-" + tagName;
GHRelease rel = r.createRelease(tagName).name(releaseName).prerelease(false).create();
Thread.sleep(3000);
try {
for (GHTag tag : r.listTags()) {
if (tagName.equals(tag.getName())) {
String ash = tag.getCommit().getSHA1();
GHRef ref = r.createRef("refs/heads/" + releaseName, ash);
assertThat(("refs/heads/" + releaseName), equalTo(ref.getRef()));
for (Map.Entry<String, GHBranch> entry : r.getBranches().entrySet()) {
// System.out.println(entry.getKey() + "/" + entry.getValue());
if (releaseName.equals(entry.getValue().getName())) {
return;
}
}
fail("branch not found");
}
}
fail("release creation failed! tag not found");
} finally {
rel.delete();
}
}
@Test
public void testRef() throws IOException {
GHRef mainRef = gitHub.getRepository("jenkinsci/jenkins").getRef("heads/main");

View File

@@ -1,19 +1,42 @@
package org.kohsuke.github;
import com.tngtech.archunit.base.DescribedPredicate;
import com.tngtech.archunit.core.domain.JavaAnnotation;
import com.tngtech.archunit.core.domain.JavaClasses;
import com.tngtech.archunit.core.domain.*;
import com.tngtech.archunit.core.domain.properties.HasName;
import com.tngtech.archunit.core.domain.properties.HasOwner;
import com.tngtech.archunit.core.importer.ClassFileImporter;
import com.tngtech.archunit.core.importer.ImportOption;
import com.tngtech.archunit.lang.ArchCondition;
import com.tngtech.archunit.lang.ArchRule;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import org.junit.BeforeClass;
import org.junit.Test;
import java.io.Closeable;
import java.io.InputStream;
import java.io.Reader;
import java.lang.reflect.Field;
import java.nio.charset.Charset;
import static com.google.common.base.Preconditions.checkNotNull;
import static com.tngtech.archunit.core.domain.JavaCall.Predicates.target;
import static com.tngtech.archunit.core.domain.JavaClass.Predicates.resideInAPackage;
import static com.tngtech.archunit.core.domain.JavaClass.Predicates.type;
import static com.tngtech.archunit.core.domain.JavaClass.namesOf;
import static com.tngtech.archunit.core.domain.properties.HasName.Predicates.name;
import static com.tngtech.archunit.core.domain.properties.HasName.Predicates.nameContaining;
import static com.tngtech.archunit.core.domain.properties.HasOwner.Predicates.With.owner;
import static com.tngtech.archunit.core.domain.properties.HasParameterTypes.Predicates.rawParameterTypes;
import static com.tngtech.archunit.lang.conditions.ArchConditions.*;
import static com.tngtech.archunit.lang.syntax.ArchRuleDefinition.classes;
import static com.tngtech.archunit.lang.syntax.ArchRuleDefinition.fields;
import static com.tngtech.archunit.lang.syntax.ArchRuleDefinition.methods;
import static org.junit.Assert.assertTrue;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.greaterThan;
public class ArchTests {
@@ -22,7 +45,9 @@ public class ArchTests {
.withImportOption(new ImportOption.DoNotIncludeJars())
.importPackages("org.kohsuke.github");
private static final JavaClasses tesetClassFiles = new ClassFileImporter()
private static final JavaClasses apacheCommons = new ClassFileImporter().importPackages("org.apache.commons.lang3");
private static final JavaClasses testClassFiles = new ClassFileImporter()
.withImportOption(new ImportOption.OnlyIncludeTests())
.withImportOption(new ImportOption.DoNotIncludeJars())
.importPackages("org.kohsuke.github");
@@ -40,7 +65,7 @@ public class ArchTests {
@BeforeClass
public static void beforeClass() {
assertTrue(classFiles.size() > 0);
assertThat(classFiles.size(), greaterThan(0));
}
@Test
@@ -113,14 +138,103 @@ public class ArchTests {
@Test
public void testRequireUseOfAssertThat() {
String reason = "This project uses `assertThat(...)` instead of other assert*() methods.";
final String reason = "This project uses `assertThat(...)` instead of other `assert*()` methods.";
ArchRule onlyAssertThatRule = methods().that()
.haveNameContaining("assert")
.should()
.haveName("assertThat")
final DescribedPredicate<HasName> assertMethodOtherThanAssertThat = nameContaining("assert")
.and(DescribedPredicate.not(name("assertThat")).and(DescribedPredicate.not(name("assertThrows"))));
final ArchRule onlyAssertThatRule = classes()
.should(not(callMethodWhere(target(assertMethodOtherThanAssertThat))))
.because(reason);
onlyAssertThatRule.check(tesetClassFiles);
onlyAssertThatRule.check(testClassFiles);
}
@Test
public void testRequireUseOfOnlySpecificApacheCommons() {
final ArchRule onlyApprovedApacheCommonsMethods = classes()
.should(notCallMethodsInPackageUnless("org.apache.commons..",
// unless it is one of these methods
targetMethodIs(StringUtils.class, "capitalize", String.class),
targetMethodIs(StringUtils.class, "defaultString", String.class, String.class),
targetMethodIs(StringUtils.class, "equals", CharSequence.class, CharSequence.class),
targetMethodIs(StringUtils.class, "isBlank", CharSequence.class),
targetMethodIs(StringUtils.class, "isEmpty", CharSequence.class),
targetMethodIs(StringUtils.class, "join", Iterable.class, String.class),
targetMethodIs(StringUtils.class,
"prependIfMissing",
String.class,
CharSequence.class,
CharSequence[].class),
targetMethodIs(ToStringBuilder.class, "toString"),
targetMethodIs(ToStringBuilder.class, "append", String.class, Object.class),
targetMethodIs(ToStringBuilder.class, "append", String.class, long.class),
targetMethodIs(ToStringBuilder.class, "append", String.class, int.class),
targetMethodIs(ToStringBuilder.class, "isEmpty"),
targetMethodIs(ToStringBuilder.class, "equals"),
targetMethodIs(ToStringBuilder.class, "capitalize"),
targetMethodIs(ToStringStyle.class,
"append",
StringBuffer.class,
String.class,
Object.class,
Boolean.class),
targetMethodIs(ReflectionToStringBuilder.class, "accept", Field.class),
targetMethodIs(IOUtils.class, "closeQuietly", InputStream.class),
targetMethodIs(IOUtils.class, "closeQuietly", Closeable.class),
targetMethodIs(IOUtils.class, "toString", InputStream.class, Charset.class),
targetMethodIs(IOUtils.class, "toString", Reader.class),
targetMethodIs(IOUtils.class, "toByteArray", InputStream.class)))
.because(
"Commons methods must be manually verified to be compatible with commons-io:2.4 or earlier and commons-lang3:3.9 or earlier.");
onlyApprovedApacheCommonsMethods.check(classFiles);
}
public static ArchCondition<JavaClass> notCallMethodsInPackageUnless(final String packageIdentifier,
final DescribedPredicate<JavaCall<?>>... unlessPredicates) {
DescribedPredicate<JavaCall<?>> restrictedPackageCalls = target(
HasOwner.Predicates.With.<JavaClass>owner(resideInAPackage(packageIdentifier)));
if (unlessPredicates.length > 0) {
DescribedPredicate<JavaCall<?>> allowed = unlessPredicates[0];
for (int x = 1; x < unlessPredicates.length; x++) {
allowed = allowed.or(unlessPredicates[x]);
}
restrictedPackageCalls = unless(restrictedPackageCalls, allowed);
}
return not(callMethodWhere(restrictedPackageCalls));
}
public static DescribedPredicate<JavaCall<?>> targetMethodIs(Class<?> owner,
String methodName,
Class<?>... parameterTypes) {
return JavaCall.Predicates.target(owner(type(owner)))
.and(JavaCall.Predicates.target(name(methodName)))
.and(JavaCall.Predicates.target(rawParameterTypes(parameterTypes)))
.as("method is %s",
Formatters.formatMethodSimple(owner.getSimpleName(), methodName, namesOf(parameterTypes)));
}
public static <T> DescribedPredicate<T> unless(DescribedPredicate<? super T> first,
DescribedPredicate<? super T> second) {
return new UnlessPredicate(first, second);
}
private static class UnlessPredicate<T> extends DescribedPredicate<T> {
private final DescribedPredicate<T> current;
private final DescribedPredicate<? super T> other;
UnlessPredicate(DescribedPredicate<T> current, DescribedPredicate<? super T> other) {
super(current.getDescription() + " unless " + other.getDescription());
this.current = checkNotNull(current);
this.other = checkNotNull(other);
}
@Override
public boolean apply(T input) {
return current.apply(input) && !other.apply(input);
}
}
}

View File

@@ -27,7 +27,7 @@ public class EnumTest extends AbstractGitHubWireMockTest {
assertThat(GHDirection.values().length, equalTo(2));
assertThat(GHEvent.values().length, equalTo(58));
assertThat(GHEvent.values().length, equalTo(60));
assertThat(GHEvent.ALL.symbol(), equalTo("*"));
assertThat(GHEvent.PULL_REQUEST.symbol(), equalTo(GHEvent.PULL_REQUEST.toString().toLowerCase()));

View File

@@ -0,0 +1,33 @@
package org.kohsuke.github;
import org.junit.Test;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.is;
public class GHEventTest {
/**
* Function from GHEventInfo to transform string event to GHEvent which has been replaced by static mapping due to
* complex parsing logic below
*/
private static GHEvent oldTransformationFunction(String t) {
if (t.endsWith("Event")) {
t = t.substring(0, t.length() - 5);
}
for (GHEvent e : GHEvent.values()) {
if (e.name().replace("_", "").equalsIgnoreCase(t)) {
return e;
}
}
return GHEvent.UNKNOWN;
}
@Test
public void regressionTest() {
assertThat(GHEventInfo.transformTypeToGHEvent("NewlyAddedOrBogusEvent"), is(GHEvent.UNKNOWN));
for (String eventInfoType : GHEventInfo.mapTypeStringToEvent.keySet()) {
assertThat(GHEventInfo.transformTypeToGHEvent(eventInfoType), is(oldTransformationFunction(eventInfoType)));
}
}
}

View File

@@ -39,6 +39,40 @@ public class GHIssueEventTest extends AbstractGitHubWireMockTest {
issue.close();
}
@Test
public void testEventsForIssueRename() throws Exception {
// Create the issue.
GHRepository repo = getRepository();
GHIssueBuilder builder = repo.createIssue("Some invalid issue name");
GHIssue issue = builder.create();
// Generate rename event.
issue.setTitle("Fixed issue name");
// Test that the event is present.
List<GHIssueEvent> list = issue.listEvents().toList();
assertThat(list.size(), equalTo(1));
GHIssueEvent event = list.get(0);
assertThat(event.getIssue().getNumber(), equalTo(issue.getNumber()));
assertThat(event.getEvent(), equalTo("renamed"));
assertThat(event.getRename(), notNullValue());
assertThat(event.getRename().getFrom(), equalTo("Some invalid issue name"));
assertThat(event.getRename().getTo(), equalTo("Fixed issue name"));
// Test that we can get a single event directly.
GHIssueEvent eventFromRepo = repo.getIssueEvent(event.getId());
assertThat(eventFromRepo.getId(), equalTo(event.getId()));
assertThat(eventFromRepo.getCreatedAt(), equalTo(event.getCreatedAt()));
assertThat(eventFromRepo.getEvent(), equalTo("renamed"));
assertThat(eventFromRepo.getRename(), notNullValue());
assertThat(eventFromRepo.getRename().getFrom(), equalTo("Some invalid issue name"));
assertThat(eventFromRepo.getRename().getTo(), equalTo("Fixed issue name"));
// Close the issue.
issue.close();
}
@Test
public void testRepositoryEvents() throws Exception {
GHRepository repo = getRepository();

View File

@@ -29,6 +29,8 @@ public class GHOrganizationTest extends AbstractGitHubWireMockTest {
if (team != null) {
team.delete();
}
getNonRecordingGitHub().getOrganization(GITHUB_API_TEST_ORG).enableOrganizationProjects(true);
}
@Test
@@ -231,4 +233,28 @@ public class GHOrganizationTest extends AbstractGitHubWireMockTest {
assertThat(team.getDescription(), equalTo("Team description"));
assertThat(team.getPrivacy(), equalTo(GHTeam.Privacy.CLOSED));
}
@Test
public void testAreOrganizationProjectsEnabled() throws IOException {
// Arrange
GHOrganization org = gitHub.getOrganization(GITHUB_API_TEST_ORG);
// Act
boolean result = org.areOrganizationProjectsEnabled();
// Assert
assertThat(result, is(true));
}
@Test
public void testEnableOrganizationProjects() throws IOException {
// Arrange
GHOrganization org = gitHub.getOrganization(GITHUB_API_TEST_ORG);
// Act
org.enableOrganizationProjects(false);
// Assert
assertThat(org.areOrganizationProjectsEnabled(), is(false));
}
}

View File

@@ -4,7 +4,7 @@ import org.junit.Test;
import java.io.IOException;
import static org.junit.Assert.assertTrue;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;
@@ -15,7 +15,7 @@ public class GHPullRequestMockTest {
GHPullRequest pullRequest = mock(GHPullRequest.class);
when(pullRequest.isDraft()).thenReturn(true);
assertTrue("Mock should return true", pullRequest.isDraft());
assertThat("Mock should return true", pullRequest.isDraft());
}
}

View File

@@ -0,0 +1,125 @@
package org.kohsuke.github;
import org.junit.Test;
import static org.hamcrest.Matchers.*;
import static org.junit.Assert.assertThrows;
public class GHReleaseTest extends AbstractGitHubWireMockTest {
@Test
public void testCreateSimpleRelease() throws Exception {
GHRepository repo = gitHub.getRepository("hub4j-test-org/testCreateRelease");
String tagName = mockGitHub.getMethodName();
GHRelease release = repo.createRelease(tagName).categoryName("announcements").prerelease(false).create();
try {
GHRelease releaseCheck = repo.getRelease(release.getId());
assertThat(releaseCheck, notNullValue());
assertThat(releaseCheck.getTagName(), is(tagName));
assertThat(releaseCheck.isPrerelease(), is(false));
assertThat(releaseCheck.getDiscussionUrl(), notNullValue());
} finally {
release.delete();
assertThat(repo.getRelease(release.getId()), nullValue());
}
}
@Test
public void testCreateSimpleReleaseWithoutDiscussion() throws Exception {
GHRepository repo = gitHub.getRepository("hub4j-test-org/testCreateRelease");
String tagName = mockGitHub.getMethodName();
GHRelease release = repo.createRelease(tagName).create();
try {
GHRelease releaseCheck = repo.getRelease(release.getId());
assertThat(releaseCheck, notNullValue());
assertThat(releaseCheck.getTagName(), is(tagName));
assertThat(releaseCheck.getDiscussionUrl(), nullValue());
} finally {
release.delete();
assertThat(repo.getRelease(release.getId()), nullValue());
}
}
@Test
public void testCreateDoubleReleaseFails() throws Exception {
GHRepository repo = gitHub.getRepository("hub4j-test-org/testCreateRelease");
String tagName = mockGitHub.getMethodName();
GHRelease release = repo.createRelease(tagName).create();
try {
GHRelease releaseCheck = repo.getRelease(release.getId());
assertThat(releaseCheck, notNullValue());
HttpException httpException = assertThrows(HttpException.class, () -> {
repo.createRelease(tagName).create();
});
assertThat(httpException.getResponseCode(), is(422));
} finally {
release.delete();
assertThat(repo.getRelease(release.getId()), nullValue());
}
}
@Test
public void testCreateReleaseWithUnknownCategoryFails() throws Exception {
GHRepository repo = gitHub.getRepository("hub4j-test-org/testCreateRelease");
String tagName = mockGitHub.getMethodName();
String releaseName = "release-" + tagName;
assertThrows(GHFileNotFoundException.class, () -> {
repo.createRelease(tagName)
.name(releaseName)
.categoryName("an invalid cateogry")
.prerelease(false)
.create();
});
}
@Test
public void testUpdateRelease() throws Exception {
GHRepository repo = gitHub.getRepository("hub4j-test-org/testCreateRelease");
String tagName = mockGitHub.getMethodName();
GHRelease release = repo.createRelease(tagName).prerelease(true).create();
try {
GHRelease releaseCheck = repo.getRelease(release.getId());
GHRelease updateCheck = releaseCheck.update().categoryName("announcements").prerelease(false).update();
assertThat(releaseCheck, notNullValue());
assertThat(releaseCheck.getTagName(), is(tagName));
assertThat(releaseCheck.isPrerelease(), is(true));
assertThat(releaseCheck.getDiscussionUrl(), nullValue());
assertThat(updateCheck, notNullValue());
assertThat(updateCheck.getTagName(), is(tagName));
assertThat(updateCheck.isPrerelease(), is(false));
assertThat(updateCheck.getDiscussionUrl(), notNullValue());
} finally {
release.delete();
assertThat(repo.getRelease(release.getId()), nullValue());
}
}
@Test
public void testDeleteRelease() throws Exception {
GHRepository repo = gitHub.getRepository("hub4j-test-org/testCreateRelease");
String tagName = mockGitHub.getMethodName();
GHRelease release = repo.createRelease(tagName).categoryName("announcements").prerelease(true).create();
assertThat(repo.getRelease(release.getId()), notNullValue());
release.delete();
assertThat(repo.getRelease(release.getId()), nullValue());
}
}

View File

@@ -81,6 +81,17 @@ public class GHUserTest extends AbstractGitHubWireMockTest {
assertThat(i, equalTo(115));
}
@Test
public void listProjects() throws IOException {
GHUser user = gitHub.getUser("t0m4uk1991");
List<GHProject> projects = user.listProjects().toList();
assertThat(projects, notNullValue());
assertThat(projects.size(), is(3));
assertThat(projects.get(0).getName(), is("Project 1"));
assertThat(projects.get(1).getName(), is("Project 2"));
assertThat(projects.get(2).getName(), is("Project 3"));
}
@Test
public void listPublicRepositoriesPageSize62() throws IOException {
GHUser user = gitHub.getUser("kohsuke");

View File

@@ -1,14 +1,19 @@
package org.kohsuke.github;
import org.apache.commons.lang3.SystemUtils;
import org.junit.Assume;
import org.junit.Test;
import org.kohsuke.github.authorization.AuthorizationProvider;
import org.kohsuke.github.authorization.UserAuthorizationProvider;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.lang.reflect.Field;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
import static org.hamcrest.Matchers.*;
@@ -137,6 +142,147 @@ public class GitHubConnectionTest extends AbstractGitHubWireMockTest {
assertThat(((UserAuthorizationProvider) builder.authorizationProvider).getLogin(), equalTo("bogus login"));
}
@Test
public void testGitHubBuilderFromCredentialsWithEnvironment() throws IOException {
// we disable this test for JDK 16+ as the current hacks in setupEnvironment() don't work with JDK 16+
Assume.assumeThat(Double.valueOf(System.getProperty("java.specification.version")), lessThan(16.0));
Assume.assumeFalse(SystemUtils.IS_OS_WINDOWS);
Map<String, String> props = new HashMap<String, String>();
props.put("endpoint", "bogus endpoint url");
props.put("oauth", "bogus oauth token string");
setupEnvironment(props);
GitHubBuilder builder = GitHubBuilder.fromCredentials();
assertThat(builder.endpoint, equalTo("bogus endpoint url"));
assertThat(builder.authorizationProvider, instanceOf(UserAuthorizationProvider.class));
assertThat(builder.authorizationProvider.getEncodedAuthorization(), equalTo("token bogus oauth token string"));
assertThat(((UserAuthorizationProvider) builder.authorizationProvider).getLogin(), nullValue());
props.put("login", "bogus login");
setupEnvironment(props);
builder = GitHubBuilder.fromCredentials();
assertThat(builder.authorizationProvider, instanceOf(UserAuthorizationProvider.class));
assertThat(builder.authorizationProvider.getEncodedAuthorization(), equalTo("token bogus oauth token string"));
assertThat(((UserAuthorizationProvider) builder.authorizationProvider).getLogin(), equalTo("bogus login"));
props.put("jwt", "bogus jwt token string");
setupEnvironment(props);
builder = GitHubBuilder.fromCredentials();
assertThat(builder.authorizationProvider, not(instanceOf(UserAuthorizationProvider.class)));
assertThat(builder.authorizationProvider.getEncodedAuthorization(), equalTo("Bearer bogus jwt token string"));
props.put("password", "bogus weak password");
setupEnvironment(props);
builder = GitHubBuilder.fromCredentials();
assertThat(builder.authorizationProvider, instanceOf(UserAuthorizationProvider.class));
assertThat(builder.authorizationProvider.getEncodedAuthorization(),
equalTo("Basic Ym9ndXMgbG9naW46Ym9ndXMgd2VhayBwYXNzd29yZA=="));
assertThat(((UserAuthorizationProvider) builder.authorizationProvider).getLogin(), equalTo("bogus login"));
}
@Test
public void testGitHubBuilderFromCredentialsWithPropertyFile() throws IOException {
// we disable this test for JDK 16+ as the current hacks in setupEnvironment() don't work with JDK 16+
Assume.assumeThat(Double.valueOf(System.getProperty("java.specification.version")), lessThan(16.0));
Assume.assumeFalse(SystemUtils.IS_OS_WINDOWS);
Map<String, String> props = new HashMap<String, String>();
// Clear the environment
setupEnvironment(props);
try {
GitHubBuilder.HOME_DIRECTORY = new File(getTestDirectory());
try {
GitHubBuilder builder = GitHubBuilder.fromCredentials();
fail();
} catch (Exception e) {
assertThat(e, instanceOf(IOException.class));
assertThat(e.getMessage(), equalTo("Failed to resolve credentials from ~/.github or the environment."));
}
props = new HashMap<String, String>();
props.put("endpoint", "bogus endpoint url");
props.put("oauth", "bogus oauth token string");
setupPropertyFile(props);
GitHubBuilder builder = GitHubBuilder.fromCredentials();
assertThat(builder.endpoint, equalTo("bogus endpoint url"));
assertThat(builder.authorizationProvider, instanceOf(UserAuthorizationProvider.class));
assertThat(builder.authorizationProvider.getEncodedAuthorization(),
equalTo("token bogus oauth token string"));
assertThat(((UserAuthorizationProvider) builder.authorizationProvider).getLogin(), nullValue());
props.put("login", "bogus login");
setupPropertyFile(props);
builder = GitHubBuilder.fromCredentials();
assertThat(builder.authorizationProvider, instanceOf(UserAuthorizationProvider.class));
assertThat(builder.authorizationProvider.getEncodedAuthorization(),
equalTo("token bogus oauth token string"));
assertThat(((UserAuthorizationProvider) builder.authorizationProvider).getLogin(), equalTo("bogus login"));
props.put("jwt", "bogus jwt token string");
setupPropertyFile(props);
builder = GitHubBuilder.fromCredentials();
assertThat(builder.authorizationProvider, not(instanceOf(UserAuthorizationProvider.class)));
assertThat(builder.authorizationProvider.getEncodedAuthorization(),
equalTo("Bearer bogus jwt token string"));
props.put("password", "bogus weak password");
setupPropertyFile(props);
builder = GitHubBuilder.fromCredentials();
assertThat(builder.authorizationProvider, instanceOf(UserAuthorizationProvider.class));
assertThat(builder.authorizationProvider.getEncodedAuthorization(),
equalTo("Basic Ym9ndXMgbG9naW46Ym9ndXMgd2VhayBwYXNzd29yZA=="));
assertThat(((UserAuthorizationProvider) builder.authorizationProvider).getLogin(), equalTo("bogus login"));
} finally {
GitHubBuilder.HOME_DIRECTORY = null;
File propertyFile = new File(getTestDirectory(), ".github");
propertyFile.delete();
}
}
private void setupPropertyFile(Map<String, String> props) throws IOException {
File propertyFile = new File(getTestDirectory(), ".github");
Properties properties = new Properties();
properties.putAll(props);
properties.store(new FileOutputStream(propertyFile), "");
}
private String getTestDirectory() {
return new File("target").getAbsolutePath();
}
@Test
public void testAnonymous() throws IOException {
// we disable this test for JDK 16+ as the current hacks in setupEnvironment() don't work with JDK 16+
Assume.assumeThat(Double.valueOf(System.getProperty("java.specification.version")), lessThan(16.0));
Map<String, String> props = new HashMap<String, String>();
props.put("endpoint", mockGitHub.apiServer().baseUrl());
setupEnvironment(props);
// No values present except endpoint
GitHubBuilder builder = GitHubBuilder
.fromEnvironment("customLogin", "customPassword", "customOauth", "endpoint");
assertThat(builder.endpoint, equalTo(mockGitHub.apiServer().baseUrl()));
assertThat(builder.authorizationProvider, sameInstance(AuthorizationProvider.ANONYMOUS));
}
@Test
public void testGithubBuilderWithAppInstallationToken() throws Exception {

View File

@@ -168,11 +168,14 @@ public class GitHubTest extends AbstractGitHubWireMockTest {
GHMeta meta = gitHub.getMeta();
assertThat(meta.isVerifiablePasswordAuthentication(), is(true));
assertThat(meta.getApi().size(), equalTo(19));
assertThat(meta.getGit().size(), equalTo(19));
assertThat(meta.getHooks().size(), equalTo(3));
assertThat(meta.getImporter().size(), equalTo(6));
assertThat(meta.getGit().size(), equalTo(36));
assertThat(meta.getHooks().size(), equalTo(4));
assertThat(meta.getImporter().size(), equalTo(3));
assertThat(meta.getPages().size(), equalTo(6));
assertThat(meta.getWeb().size(), equalTo(19));
assertThat(meta.getWeb().size(), equalTo(20));
assertThat(meta.getPackages().size(), equalTo(25));
assertThat(meta.getActions().size(), equalTo(1739));
assertThat(meta.getDependabot().size(), equalTo(3));
// Also test examples here
Class[] examples = new Class[]{ ReadOnlyObjects.GHMetaPublic.class, ReadOnlyObjects.GHMetaPackage.class,
@@ -185,11 +188,11 @@ public class GitHubTest extends AbstractGitHubWireMockTest {
.fetch((Class<ReadOnlyObjects.GHMetaExample>) metaClass);
assertThat(metaExample.isVerifiablePasswordAuthentication(), is(true));
assertThat(metaExample.getApi().size(), equalTo(19));
assertThat(metaExample.getGit().size(), equalTo(19));
assertThat(metaExample.getHooks().size(), equalTo(3));
assertThat(metaExample.getImporter().size(), equalTo(6));
assertThat(metaExample.getGit().size(), equalTo(36));
assertThat(metaExample.getHooks().size(), equalTo(4));
assertThat(metaExample.getImporter().size(), equalTo(3));
assertThat(metaExample.getPages().size(), equalTo(6));
assertThat(metaExample.getWeb().size(), equalTo(19));
assertThat(metaExample.getWeb().size(), equalTo(20));
}
}

View File

@@ -2,19 +2,26 @@ package org.kohsuke.github.internal;
import org.junit.Test;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.*;
public class EnumUtilsTest {
@Test
public void testGetEnum() {
assertNull(EnumUtils.getNullableEnumOrDefault(TestEnum.class, null, TestEnum.UNKNOWN));
assertEquals(TestEnum.UNKNOWN, EnumUtils.getNullableEnumOrDefault(TestEnum.class, "foobar", TestEnum.UNKNOWN));
assertEquals(TestEnum.VALUE_1, EnumUtils.getNullableEnumOrDefault(TestEnum.class, "VALUE_1", TestEnum.UNKNOWN));
assertEquals(TestEnum.VALUE_1, EnumUtils.getNullableEnumOrDefault(TestEnum.class, "value_1", TestEnum.UNKNOWN));
assertEquals(TestEnum.VALUE_2, EnumUtils.getNullableEnumOrDefault(TestEnum.class, "VALUE_2", TestEnum.UNKNOWN));
assertEquals(TestEnum.VALUE_2, EnumUtils.getNullableEnumOrDefault(TestEnum.class, "value_2", TestEnum.UNKNOWN));
assertThat(EnumUtils.getEnumOrDefault(TestEnum.class, null, TestEnum.UNKNOWN), equalTo(TestEnum.UNKNOWN));
assertThat(EnumUtils.getNullableEnumOrDefault(TestEnum.class, null, TestEnum.UNKNOWN), nullValue());
assertThat(EnumUtils.getNullableEnumOrDefault(TestEnum.class, "foobar", TestEnum.UNKNOWN),
equalTo(TestEnum.UNKNOWN));
assertThat(EnumUtils.getNullableEnumOrDefault(TestEnum.class, "VALUE_1", TestEnum.UNKNOWN),
equalTo(TestEnum.VALUE_1));
assertThat(EnumUtils.getNullableEnumOrDefault(TestEnum.class, "value_1", TestEnum.UNKNOWN),
equalTo(TestEnum.VALUE_1));
assertThat(EnumUtils.getNullableEnumOrDefault(TestEnum.class, "VALUE_2", TestEnum.UNKNOWN),
equalTo(TestEnum.VALUE_2));
assertThat(EnumUtils.getNullableEnumOrDefault(TestEnum.class, "vAlUe_2", TestEnum.UNKNOWN),
equalTo(TestEnum.VALUE_2));
}
private enum TestEnum {

View File

@@ -159,9 +159,6 @@ public class GitHubWireMockRule extends WireMockMultiServerRule {
if (server != null) {
server.snapshotRecord(recordSpec().forTarget(target)
// "X-HTTP-Method-Override" is used to send http methods not supported by
// HttpURLConnection without using hacky Java reflection techniques
.captureHeader("X-HTTP-Method-Override")
// "If-None-Match" header used for ETag matching for caching connections
.captureHeader("If-None-Match")
// "If-Modified-Since" header used for ETag matching for caching connections

View File

@@ -3,6 +3,7 @@
"name": "notifications_threads_523050578",
"request": {
"url": "/notifications/threads/523050578",
"method": "PATCH",
"bodyPatterns": [
{
"equalToJson": "{}",
@@ -10,11 +11,7 @@
"ignoreExtraElements": true
}
],
"method": "POST",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -3,11 +3,8 @@
"name": "repos_kohsuke_sandbox-ant_comments_46267761",
"request": {
"url": "/repos/kohsuke/sandbox-ant/comments/46267761",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -3,6 +3,7 @@
"name": "repos_hub4j-test-org_github-api-test_issues_1",
"request": {
"url": "/repos/hub4j-test-org/github-api-test/issues/1",
"method": "PATCH",
"bodyPatterns": [
{
"equalToJson": "{\"state\":\"closed\"}",
@@ -10,11 +11,7 @@
"ignoreExtraElements": true
}
],
"method": "POST",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -3,11 +3,8 @@
"name": "repos_bitwiseman_github-api-test-rename",
"request": {
"url": "/repos/bitwiseman/github-api-test-rename",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -3,11 +3,8 @@
"name": "repos_bitwiseman_github-api-test-rename",
"request": {
"url": "/repos/bitwiseman/github-api-test-rename",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -3,11 +3,8 @@
"name": "repos_bitwiseman_github-api-test-rename",
"request": {
"url": "/repos/bitwiseman/github-api-test-rename",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -3,11 +3,8 @@
"name": "repos_bitwiseman_github-api-test-rename",
"request": {
"url": "/repos/bitwiseman/github-api-test-rename",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -3,11 +3,8 @@
"name": "repos_bitwiseman_github-api-test-rename",
"request": {
"url": "/repos/bitwiseman/github-api-test-rename",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -8,7 +8,7 @@
"login": "hub4j-test-org",
"id": 7544739,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjc1NDQ3Mzk=",
"avatar_url": "https://avatars.githubusercontent.com/u/7544739?v=4",
"avatar_url": "https://avatars3.githubusercontent.com/u/7544739?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/hub4j-test-org",
"html_url": "https://github.com/hub4j-test-org",
@@ -105,7 +105,7 @@
"login": "hub4j-test-org",
"id": 7544739,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjc1NDQ3Mzk=",
"avatar_url": "https://avatars.githubusercontent.com/u/7544739?v=4",
"avatar_url": "https://avatars3.githubusercontent.com/u/7544739?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/hub4j-test-org",
"html_url": "https://github.com/hub4j-test-org",

View File

@@ -2,7 +2,7 @@
"login": "bitwiseman",
"id": 1958953,
"node_id": "MDQ6VXNlcjE5NTg5NTM=",
"avatar_url": "https://avatars.githubusercontent.com/u/1958953?v=4",
"avatar_url": "https://avatars3.githubusercontent.com/u/1958953?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/bitwiseman",
"html_url": "https://github.com/bitwiseman",
@@ -23,12 +23,23 @@
"location": "Seattle, WA, USA",
"email": "bitwiseman@gmail.com",
"hireable": null,
"bio": null,
"twitter_username": "bitwiseman",
"public_repos": 206,
"public_gists": 8,
"followers": 181,
"following": 11,
"bio": "https://twitter.com/bitwiseman",
"public_repos": 181,
"public_gists": 7,
"followers": 149,
"following": 9,
"created_at": "2012-07-11T20:38:33Z",
"updated_at": "2021-04-02T21:55:29Z"
"updated_at": "2020-03-26T21:08:45Z",
"private_gists": 8,
"total_private_repos": 10,
"owned_private_repos": 0,
"disk_usage": 33697,
"collaborators": 0,
"two_factor_authentication": true,
"plan": {
"name": "free",
"space": 976562499,
"collaborators": 0,
"private_repos": 10000
}
}

View File

@@ -1,5 +1,5 @@
{
"id": "55f5d0e7-2f1f-4a8a-812c-204ea56540f7",
"id": "e24be5d0-73bf-4748-8c79-a68eb5e2becf",
"name": "repos_hub4j-test-org_test-labels",
"request": {
"url": "/repos/hub4j-test-org/test-labels",
@@ -14,33 +14,33 @@
"status": 200,
"bodyFileName": "repos_hub4j-test-org_test-labels-2.json",
"headers": {
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:38:59 GMT",
"Date": "Thu, 26 Mar 2020 21:52:19 GMT",
"Content-Type": "application/json; charset=utf-8",
"Server": "GitHub.com",
"Status": "200 OK",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4993",
"X-RateLimit-Reset": "1585263138",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
"Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI"
],
"ETag": "W/\"86fbc9276b6690bc16bd74f81c0ce45c1f5fda7db638aaa2c4bb0bcdd63da176\"",
"ETag": "W/\"6b3e989ed9af12ce6cd75038c1664ab5\"",
"Last-Modified": "Sun, 15 Feb 2015 14:49:09 GMT",
"X-OAuth-Scopes": "repo, workflow",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "repo",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4937",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "63",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "E09C:148F:17AC74:19F151:606F69E3"
"X-GitHub-Request-Id": "E69B:9495:1D1CC:2452B:5E7D2411"
}
},
"uuid": "55f5d0e7-2f1f-4a8a-812c-204ea56540f7",
"uuid": "e24be5d0-73bf-4748-8c79-a68eb5e2becf",
"persistent": true,
"insertionIndex": 2
}

View File

@@ -1,5 +1,5 @@
{
"id": "7896038e-2291-4a94-8ce9-ea12923353b2",
"id": "2c942d88-1a5a-4fba-ae09-ada2a5dff83f",
"name": "repos_hub4j-test-org_test-labels_labels",
"request": {
"url": "/repos/hub4j-test-org/test-labels/labels",
@@ -13,41 +13,41 @@
{
"equalToJson": "{\"color\":\"123457\",\"name\":\"test2\",\"description\":\"this is a different test\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": false
"ignoreExtraElements": true
}
]
},
"response": {
"status": 201,
"body": "{\"id\":2897001309,\"node_id\":\"MDU6TGFiZWwyODk3MDAxMzA5\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test2\",\"name\":\"test2\",\"color\":\"123457\",\"default\":false,\"description\":\"this is a different test\"}",
"body": "{\"id\":1937402965,\"node_id\":\"MDU6TGFiZWwxOTM3NDAyOTY1\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test2\",\"name\":\"test2\",\"color\":\"123457\",\"default\":false,\"description\":\"this is a different test\"}",
"headers": {
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:39:02 GMT",
"Date": "Thu, 26 Mar 2020 21:52:22 GMT",
"Content-Type": "application/json; charset=utf-8",
"Server": "GitHub.com",
"Status": "201 Created",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4980",
"X-RateLimit-Reset": "1585263137",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
"Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI"
],
"ETag": "\"6bb2796b20a76d6ab8e7a147bf6b19cf6d0605587e59367c34afe06bb4786f60\"",
"X-OAuth-Scopes": "repo, workflow",
"ETag": "\"648a902d66c2f46f74c7b836969fdfe9\"",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "",
"Location": "https://api.github.com/repos/hub4j-test-org/test-labels/labels/test2",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4924",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "76",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "E09C:148F:17AD20:19F219:606F69E6",
"Location": "https://api.github.com/repos/hub4j-test-org/test-labels/labels/test2"
"X-GitHub-Request-Id": "E69B:9495:1D214:245B7:5E7D2416"
}
},
"uuid": "7896038e-2291-4a94-8ce9-ea12923353b2",
"uuid": "2c942d88-1a5a-4fba-ae09-ada2a5dff83f",
"persistent": true,
"insertionIndex": 15
}

View File

@@ -1,5 +1,5 @@
{
"id": "6e74fbe2-04df-4da4-bc1e-b47d70f8859f",
"id": "3f418ea2-7ad2-4a8d-a0e0-aa8dba0bc3aa",
"name": "repos_hub4j-test-org_test-labels_labels",
"request": {
"url": "/repos/hub4j-test-org/test-labels/labels",
@@ -13,41 +13,41 @@
{
"equalToJson": "{\"color\":\"123458\",\"name\":\"test2\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": false
"ignoreExtraElements": true
}
]
},
"response": {
"status": 201,
"body": "{\"id\":2897001319,\"node_id\":\"MDU6TGFiZWwyODk3MDAxMzE5\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test2\",\"name\":\"test2\",\"color\":\"123458\",\"default\":false,\"description\":null}",
"body": "{\"id\":1937403007,\"node_id\":\"MDU6TGFiZWwxOTM3NDAzMDA3\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test2\",\"name\":\"test2\",\"color\":\"123458\",\"default\":false,\"description\":null}",
"headers": {
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:39:02 GMT",
"Date": "Thu, 26 Mar 2020 21:52:23 GMT",
"Content-Type": "application/json; charset=utf-8",
"Server": "GitHub.com",
"Status": "201 Created",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4977",
"X-RateLimit-Reset": "1585263137",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
"Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI"
],
"ETag": "\"7e509bb6bfb281f1384f5d57791a3d8ba047a0c3d0b85ee4fa1cbe97aed88087\"",
"X-OAuth-Scopes": "repo, workflow",
"ETag": "\"b44c275d6657bfc2df3d5bfe449bff8d\"",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "",
"Location": "https://api.github.com/repos/hub4j-test-org/test-labels/labels/test2",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4921",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "79",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "E09C:148F:17AD66:19F25F:606F69E6",
"Location": "https://api.github.com/repos/hub4j-test-org/test-labels/labels/test2"
"X-GitHub-Request-Id": "E69B:9495:1D220:245C5:5E7D2416"
}
},
"uuid": "6e74fbe2-04df-4da4-bc1e-b47d70f8859f",
"uuid": "3f418ea2-7ad2-4a8d-a0e0-aa8dba0bc3aa",
"persistent": true,
"insertionIndex": 18
}

View File

@@ -1,5 +1,5 @@
{
"id": "36809c63-2d61-4819-8a71-4d49c9297eea",
"id": "2ec8e57b-45b1-417f-bc4e-6ea23334d4df",
"name": "repos_hub4j-test-org_test-labels_labels",
"request": {
"url": "/repos/hub4j-test-org/test-labels/labels",
@@ -14,32 +14,32 @@
"status": 200,
"bodyFileName": "repos_hub4j-test-org_test-labels_labels-3.json",
"headers": {
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:38:59 GMT",
"Date": "Thu, 26 Mar 2020 21:52:19 GMT",
"Content-Type": "application/json; charset=utf-8",
"Server": "GitHub.com",
"Status": "200 OK",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4992",
"X-RateLimit-Reset": "1585263137",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
"Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI"
],
"ETag": "W/\"00b3a4cbf9037c3810a8853aef5c28e7847b3f6d7d8fed6d803203bbf758aedd\"",
"X-OAuth-Scopes": "repo, workflow",
"ETag": "W/\"e7c4fba8fbd1312b7b8bc4cac1dfbc25\"",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "repo",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4936",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "64",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "E09C:148F:17AC7A:19F15B:606F69E3"
"X-GitHub-Request-Id": "E69B:9495:1D1D0:2455A:5E7D2413"
}
},
"uuid": "36809c63-2d61-4819-8a71-4d49c9297eea",
"uuid": "2ec8e57b-45b1-417f-bc4e-6ea23334d4df",
"persistent": true,
"insertionIndex": 3
}

View File

@@ -1,5 +1,5 @@
{
"id": "463b99c3-2031-488d-acf0-ab106d5d4f3d",
"id": "95656815-d16d-4592-9678-10766659ddeb",
"name": "repos_hub4j-test-org_test-labels_labels",
"request": {
"url": "/repos/hub4j-test-org/test-labels/labels",
@@ -13,41 +13,41 @@
{
"equalToJson": "{\"color\":\"123456\",\"name\":\"test\",\"description\":\"\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": false
"ignoreExtraElements": true
}
]
},
"response": {
"status": 201,
"body": "{\"id\":2897001281,\"node_id\":\"MDU6TGFiZWwyODk3MDAxMjgx\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test\",\"name\":\"test\",\"color\":\"123456\",\"default\":false,\"description\":\"\"}",
"body": "{\"id\":1937402918,\"node_id\":\"MDU6TGFiZWwxOTM3NDAyOTE4\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test\",\"name\":\"test\",\"color\":\"123456\",\"default\":false,\"description\":\"\"}",
"headers": {
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:39:00 GMT",
"Date": "Thu, 26 Mar 2020 21:52:19 GMT",
"Content-Type": "application/json; charset=utf-8",
"Server": "GitHub.com",
"Status": "201 Created",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4990",
"X-RateLimit-Reset": "1585263137",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
"Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI"
],
"ETag": "\"30be2cbd89d25d27271419964a66bc1dce33812d6e0e519ff5801bb0b09b4b62\"",
"X-OAuth-Scopes": "repo, workflow",
"ETag": "\"48de34595ef7992c2e74e8ceb548cdfa\"",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "",
"Location": "https://api.github.com/repos/hub4j-test-org/test-labels/labels/test",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4934",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "66",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "E09C:148F:17AC80:19F168:606F69E4",
"Location": "https://api.github.com/repos/hub4j-test-org/test-labels/labels/test"
"X-GitHub-Request-Id": "E69B:9495:1D1D9:24565:5E7D2413"
}
},
"uuid": "463b99c3-2031-488d-acf0-ab106d5d4f3d",
"uuid": "95656815-d16d-4592-9678-10766659ddeb",
"persistent": true,
"insertionIndex": 5
}

View File

@@ -1,5 +1,5 @@
{
"id": "8e6459a2-d1f8-4e7b-a9dd-542cb0c954ef",
"id": "2b5a3df5-478a-4539-b5ff-a1aa27b6a164",
"name": "repos_hub4j-test-org_test-labels_labels_enhancement",
"request": {
"url": "/repos/hub4j-test-org/test-labels/labels/enhancement",
@@ -14,33 +14,33 @@
"status": 200,
"body": "{\"id\":177339106,\"node_id\":\"MDU6TGFiZWwxNzczMzkxMDY=\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/enhancement\",\"name\":\"enhancement\",\"color\":\"84b6eb\",\"default\":true,\"description\":null}",
"headers": {
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:38:59 GMT",
"Date": "Thu, 26 Mar 2020 21:52:19 GMT",
"Content-Type": "application/json; charset=utf-8",
"Server": "GitHub.com",
"Status": "200 OK",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4991",
"X-RateLimit-Reset": "1585263137",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
"Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI"
],
"ETag": "W/\"14222d412fe9506e0624aa60cf0d1b9ba356bae0032bdb63f80dcb0bf75d74fd\"",
"ETag": "W/\"27ddcfc35bfde213e1754cfc9af09e7b\"",
"Last-Modified": "Sun, 15 Feb 2015 14:49:10 GMT",
"X-OAuth-Scopes": "repo, workflow",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "repo",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4935",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "65",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "E09C:148F:17AC7E:19F160:606F69E3"
"X-GitHub-Request-Id": "E69B:9495:1D1D4:24561:5E7D2413"
}
},
"uuid": "8e6459a2-d1f8-4e7b-a9dd-542cb0c954ef",
"uuid": "2b5a3df5-478a-4539-b5ff-a1aa27b6a164",
"persistent": true,
"insertionIndex": 4
}

View File

@@ -1,13 +1,10 @@
{
"id": "d17664b2-c30b-4d25-b10e-a5d14ce27509",
"id": "cfabb012-1a36-4232-8f6d-e7d3f35673e3",
"name": "repos_hub4j-test-org_test-labels_labels_test",
"request": {
"url": "/repos/hub4j-test-org/test-labels/labels/test",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}
@@ -16,40 +13,40 @@
{
"equalToJson": "{\"color\":\"000000\",\"name\":\"test\",\"description\":\"Deprecated\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": false
"ignoreExtraElements": true
}
]
},
"response": {
"status": 200,
"body": "{\"id\":2897001281,\"node_id\":\"MDU6TGFiZWwyODk3MDAxMjgx\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test\",\"name\":\"test\",\"color\":\"000000\",\"default\":false,\"description\":\"Deprecated\"}",
"body": "{\"id\":1937402918,\"node_id\":\"MDU6TGFiZWwxOTM3NDAyOTE4\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test\",\"name\":\"test\",\"color\":\"000000\",\"default\":false,\"description\":\"Deprecated\"}",
"headers": {
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:39:01 GMT",
"Date": "Thu, 26 Mar 2020 21:52:20 GMT",
"Content-Type": "application/json; charset=utf-8",
"Server": "GitHub.com",
"Status": "200 OK",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4985",
"X-RateLimit-Reset": "1585263137",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
"Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI"
],
"ETag": "W/\"07a5cf65f90f90ff1092d072a4eeae55a8eb0e6442fbc7b222596f3d1fbc8983\"",
"X-OAuth-Scopes": "repo, workflow",
"ETag": "W/\"4a7241dfa969b562ba29b03b5ac9bc3a\"",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4929",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "71",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "E09C:148F:17ACBC:19F1AE:606F69E4"
"X-GitHub-Request-Id": "E69B:9495:1D1F5:2458C:5E7D2414"
}
},
"uuid": "d17664b2-c30b-4d25-b10e-a5d14ce27509",
"uuid": "cfabb012-1a36-4232-8f6d-e7d3f35673e3",
"persistent": true,
"insertionIndex": 10
}

View File

@@ -1,5 +1,5 @@
{
"id": "8a8ad40e-67c5-4f3c-8335-8fc8f163f292",
"id": "dce1e639-fea0-48b9-a21e-43f2dd9b77a1",
"name": "repos_hub4j-test-org_test-labels_labels_test",
"request": {
"url": "/repos/hub4j-test-org/test-labels/labels/test",
@@ -12,35 +12,35 @@
},
"response": {
"status": 200,
"body": "{\"id\":2897001281,\"node_id\":\"MDU6TGFiZWwyODk3MDAxMjgx\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test\",\"name\":\"test\",\"color\":\"000000\",\"default\":false,\"description\":\"Deprecated\"}",
"body": "{\"id\":1937402918,\"node_id\":\"MDU6TGFiZWwxOTM3NDAyOTE4\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test\",\"name\":\"test\",\"color\":\"000000\",\"default\":false,\"description\":\"Deprecated\"}",
"headers": {
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:39:01 GMT",
"Date": "Thu, 26 Mar 2020 21:52:21 GMT",
"Content-Type": "application/json; charset=utf-8",
"Server": "GitHub.com",
"Status": "200 OK",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4984",
"X-RateLimit-Reset": "1585263137",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
"Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI"
],
"ETag": "W/\"07a5cf65f90f90ff1092d072a4eeae55a8eb0e6442fbc7b222596f3d1fbc8983\"",
"Last-Modified": "Thu, 08 Apr 2021 20:39:01 GMT",
"X-OAuth-Scopes": "repo, workflow",
"ETag": "W/\"4a7241dfa969b562ba29b03b5ac9bc3a\"",
"Last-Modified": "Thu, 26 Mar 2020 21:52:20 GMT",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "repo",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4928",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "72",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "E09C:148F:17ACD3:19F1CC:606F69E5"
"X-GitHub-Request-Id": "E69B:9495:1D1FD:24595:5E7D2414"
}
},
"uuid": "8a8ad40e-67c5-4f3c-8335-8fc8f163f292",
"uuid": "dce1e639-fea0-48b9-a21e-43f2dd9b77a1",
"persistent": true,
"scenarioName": "scenario-1-repos-hub4j-test-org-test-labels-labels-test",
"requiredScenarioState": "scenario-1-repos-hub4j-test-org-test-labels-labels-test-3",

View File

@@ -1,13 +1,10 @@
{
"id": "f631b166-3456-4077-a8f6-02bd76f00556",
"id": "73f6275a-8ea1-4697-9b93-608128f04e47",
"name": "repos_hub4j-test-org_test-labels_labels_test",
"request": {
"url": "/repos/hub4j-test-org/test-labels/labels/test",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}
@@ -16,40 +13,40 @@
{
"equalToJson": "{\"color\":\"000000\",\"name\":\"test\",\"description\":\"this is also a test\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": false
"ignoreExtraElements": true
}
]
},
"response": {
"status": 200,
"body": "{\"id\":2897001281,\"node_id\":\"MDU6TGFiZWwyODk3MDAxMjgx\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test\",\"name\":\"test\",\"color\":\"000000\",\"default\":false,\"description\":\"this is also a test\"}",
"body": "{\"id\":1937402918,\"node_id\":\"MDU6TGFiZWwxOTM3NDAyOTE4\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test\",\"name\":\"test\",\"color\":\"000000\",\"default\":false,\"description\":\"this is also a test\"}",
"headers": {
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:39:01 GMT",
"Date": "Thu, 26 Mar 2020 21:52:21 GMT",
"Content-Type": "application/json; charset=utf-8",
"Server": "GitHub.com",
"Status": "200 OK",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4983",
"X-RateLimit-Reset": "1585263137",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
"Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI"
],
"ETag": "W/\"bfca8b6c194e9d4c98b1f8c2eb47477761b73647444b0f1c3407337b3ce430c9\"",
"X-OAuth-Scopes": "repo, workflow",
"ETag": "W/\"d53816a82e924d1178daa76454ed6372\"",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4927",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "73",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "E09C:148F:17ACEE:19F1E2:606F69E5"
"X-GitHub-Request-Id": "E69B:9495:1D202:2459E:5E7D2415"
}
},
"uuid": "f631b166-3456-4077-a8f6-02bd76f00556",
"uuid": "73f6275a-8ea1-4697-9b93-608128f04e47",
"persistent": true,
"insertionIndex": 12
}

View File

@@ -1,5 +1,5 @@
{
"id": "55586936-51ee-4234-81ef-139c1b88732d",
"id": "2f35559b-a057-4ebd-926e-37b89964ce0e",
"name": "repos_hub4j-test-org_test-labels_labels_test",
"request": {
"url": "/repos/hub4j-test-org/test-labels/labels/test",
@@ -13,26 +13,26 @@
"response": {
"status": 204,
"headers": {
"Date": "Thu, 26 Mar 2020 21:52:21 GMT",
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:39:01 GMT",
"X-OAuth-Scopes": "repo, workflow",
"Status": "204 No Content",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4982",
"X-RateLimit-Reset": "1585263137",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4926",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "74",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"Vary": "Accept-Encoding, Accept, X-Requested-With",
"X-GitHub-Request-Id": "E09C:148F:17AD02:19F1F8:606F69E5"
"Vary": "Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI",
"X-GitHub-Request-Id": "E69B:9495:1D208:245A7:5E7D2415"
}
},
"uuid": "55586936-51ee-4234-81ef-139c1b88732d",
"uuid": "2f35559b-a057-4ebd-926e-37b89964ce0e",
"persistent": true,
"insertionIndex": 13
}

View File

@@ -1,5 +1,5 @@
{
"id": "6b993840-624c-4b20-96c3-d5036b7502a1",
"id": "0c78363a-0c1e-4070-9210-a890b324c506",
"name": "repos_hub4j-test-org_test-labels_labels_test",
"request": {
"url": "/repos/hub4j-test-org/test-labels/labels/test",
@@ -12,29 +12,29 @@
},
"response": {
"status": 404,
"body": "{\"message\":\"Not Found\",\"documentation_url\":\"https://docs.github.com/rest/reference/issues#get-a-label\"}",
"body": "{\"message\":\"Not Found\",\"documentation_url\":\"https://developer.github.com/v3/issues/labels/#get-a-single-label\"}",
"headers": {
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:39:02 GMT",
"Date": "Thu, 26 Mar 2020 21:52:22 GMT",
"Content-Type": "application/json; charset=utf-8",
"X-OAuth-Scopes": "repo, workflow",
"Server": "GitHub.com",
"Status": "404 Not Found",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4981",
"X-RateLimit-Reset": "1585263138",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "repo",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4925",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "75",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"Vary": "Accept-Encoding, Accept, X-Requested-With",
"X-GitHub-Request-Id": "E09C:148F:17AD12:19F20A:606F69E5"
"Vary": "Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI",
"X-GitHub-Request-Id": "E69B:9495:1D211:245AD:5E7D2415"
}
},
"uuid": "6b993840-624c-4b20-96c3-d5036b7502a1",
"uuid": "0c78363a-0c1e-4070-9210-a890b324c506",
"persistent": true,
"scenarioName": "scenario-1-repos-hub4j-test-org-test-labels-labels-test",
"requiredScenarioState": "scenario-1-repos-hub4j-test-org-test-labels-labels-test-4",

View File

@@ -1,5 +1,5 @@
{
"id": "f5c0a21a-b320-41f6-8c11-0d7d7a6a935e",
"id": "3e2f3c6f-2300-4da5-a68a-e8ffc23cbaa7",
"name": "repos_hub4j-test-org_test-labels_labels_test",
"request": {
"url": "/repos/hub4j-test-org/test-labels/labels/test",
@@ -12,35 +12,35 @@
},
"response": {
"status": 200,
"body": "{\"id\":2897001281,\"node_id\":\"MDU6TGFiZWwyODk3MDAxMjgx\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test\",\"name\":\"test\",\"color\":\"123456\",\"default\":false,\"description\":\"\"}",
"body": "{\"id\":1937402918,\"node_id\":\"MDU6TGFiZWwxOTM3NDAyOTE4\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test\",\"name\":\"test\",\"color\":\"123456\",\"default\":false,\"description\":\"\"}",
"headers": {
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:39:00 GMT",
"Date": "Thu, 26 Mar 2020 21:52:20 GMT",
"Content-Type": "application/json; charset=utf-8",
"Server": "GitHub.com",
"Status": "200 OK",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4989",
"X-RateLimit-Reset": "1585263137",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
"Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI"
],
"ETag": "W/\"30be2cbd89d25d27271419964a66bc1dce33812d6e0e519ff5801bb0b09b4b62\"",
"Last-Modified": "Thu, 08 Apr 2021 20:39:00 GMT",
"X-OAuth-Scopes": "repo, workflow",
"ETag": "W/\"48de34595ef7992c2e74e8ceb548cdfa\"",
"Last-Modified": "Thu, 26 Mar 2020 21:52:19 GMT",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "repo",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4933",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "67",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "E09C:148F:17AC8C:19F176:606F69E4"
"X-GitHub-Request-Id": "E69B:9495:1D1E0:24570:5E7D2413"
}
},
"uuid": "f5c0a21a-b320-41f6-8c11-0d7d7a6a935e",
"uuid": "3e2f3c6f-2300-4da5-a68a-e8ffc23cbaa7",
"persistent": true,
"scenarioName": "scenario-1-repos-hub4j-test-org-test-labels-labels-test",
"requiredScenarioState": "Started",

View File

@@ -1,13 +1,10 @@
{
"id": "117bb46b-6d0d-4901-b27e-324ef427f5c4",
"id": "6d637a44-3eff-4110-bb1f-dd9002d0e051",
"name": "repos_hub4j-test-org_test-labels_labels_test",
"request": {
"url": "/repos/hub4j-test-org/test-labels/labels/test",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}
@@ -16,40 +13,40 @@
{
"equalToJson": "{\"color\":\"000000\",\"name\":\"test\",\"description\":\"It is dark!\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": false
"ignoreExtraElements": true
}
]
},
"response": {
"status": 200,
"body": "{\"id\":2897001281,\"node_id\":\"MDU6TGFiZWwyODk3MDAxMjgx\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test\",\"name\":\"test\",\"color\":\"000000\",\"default\":false,\"description\":\"It is dark!\"}",
"body": "{\"id\":1937402918,\"node_id\":\"MDU6TGFiZWwxOTM3NDAyOTE4\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test\",\"name\":\"test\",\"color\":\"000000\",\"default\":false,\"description\":\"It is dark!\"}",
"headers": {
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:39:00 GMT",
"Date": "Thu, 26 Mar 2020 21:52:20 GMT",
"Content-Type": "application/json; charset=utf-8",
"Server": "GitHub.com",
"Status": "200 OK",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4988",
"X-RateLimit-Reset": "1585263137",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
"Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI"
],
"ETag": "W/\"ba89b8a15e377c2e7eb219dc3c48b277edd958e762f8814667ad312cc33de62c\"",
"X-OAuth-Scopes": "repo, workflow",
"ETag": "W/\"14706c3016a6b3a0cfce85c5b6389c4e\"",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4932",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "68",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "E09C:148F:17AC95:19F17B:606F69E4"
"X-GitHub-Request-Id": "E69B:9495:1D1E3:24577:5E7D2414"
}
},
"uuid": "117bb46b-6d0d-4901-b27e-324ef427f5c4",
"uuid": "6d637a44-3eff-4110-bb1f-dd9002d0e051",
"persistent": true,
"insertionIndex": 7
}

View File

@@ -1,13 +1,10 @@
{
"id": "f558f48f-7af7-4263-9770-89e4b515af5a",
"id": "6e6dba1e-604f-400c-8edc-9282547d33b2",
"name": "repos_hub4j-test-org_test-labels_labels_test",
"request": {
"url": "/repos/hub4j-test-org/test-labels/labels/test",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}
@@ -16,40 +13,40 @@
{
"equalToJson": "{\"color\":\"123456\",\"name\":\"test\",\"description\":\"Deprecated\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": false
"ignoreExtraElements": true
}
]
},
"response": {
"status": 200,
"body": "{\"id\":2897001281,\"node_id\":\"MDU6TGFiZWwyODk3MDAxMjgx\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test\",\"name\":\"test\",\"color\":\"123456\",\"default\":false,\"description\":\"Deprecated\"}",
"body": "{\"id\":1937402918,\"node_id\":\"MDU6TGFiZWwxOTM3NDAyOTE4\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test\",\"name\":\"test\",\"color\":\"123456\",\"default\":false,\"description\":\"Deprecated\"}",
"headers": {
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:39:00 GMT",
"Date": "Thu, 26 Mar 2020 21:52:20 GMT",
"Content-Type": "application/json; charset=utf-8",
"Server": "GitHub.com",
"Status": "200 OK",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4987",
"X-RateLimit-Reset": "1585263137",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
"Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI"
],
"ETag": "W/\"5dda62923a7111d26151ff437289ea9473c852c89983b93781d079758bcf496a\"",
"X-OAuth-Scopes": "repo, workflow",
"ETag": "W/\"362625bccae2af3dc55feed7298cb6eb\"",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4931",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "69",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "E09C:148F:17AC9F:19F18D:606F69E4"
"X-GitHub-Request-Id": "E69B:9495:1D1E9:2457F:5E7D2414"
}
},
"uuid": "f558f48f-7af7-4263-9770-89e4b515af5a",
"uuid": "6e6dba1e-604f-400c-8edc-9282547d33b2",
"persistent": true,
"insertionIndex": 8
}

View File

@@ -1,5 +1,5 @@
{
"id": "2e547f9d-8630-49dc-bb8c-95991320aacf",
"id": "79ce6715-a164-4bb4-974c-7f20616f47d7",
"name": "repos_hub4j-test-org_test-labels_labels_test",
"request": {
"url": "/repos/hub4j-test-org/test-labels/labels/test",
@@ -12,35 +12,35 @@
},
"response": {
"status": 200,
"body": "{\"id\":2897001281,\"node_id\":\"MDU6TGFiZWwyODk3MDAxMjgx\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test\",\"name\":\"test\",\"color\":\"123456\",\"default\":false,\"description\":\"Deprecated\"}",
"body": "{\"id\":1937402918,\"node_id\":\"MDU6TGFiZWwxOTM3NDAyOTE4\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test\",\"name\":\"test\",\"color\":\"123456\",\"default\":false,\"description\":\"Deprecated\"}",
"headers": {
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:39:00 GMT",
"Date": "Thu, 26 Mar 2020 21:52:20 GMT",
"Content-Type": "application/json; charset=utf-8",
"Server": "GitHub.com",
"Status": "200 OK",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4986",
"X-RateLimit-Reset": "1585263137",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
"Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI"
],
"ETag": "W/\"5dda62923a7111d26151ff437289ea9473c852c89983b93781d079758bcf496a\"",
"Last-Modified": "Thu, 08 Apr 2021 20:39:00 GMT",
"X-OAuth-Scopes": "repo, workflow",
"ETag": "W/\"362625bccae2af3dc55feed7298cb6eb\"",
"Last-Modified": "Thu, 26 Mar 2020 21:52:20 GMT",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "repo",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4930",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "70",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "E09C:148F:17ACB3:19F1A1:606F69E4"
"X-GitHub-Request-Id": "E69B:9495:1D1F1:24586:5E7D2414"
}
},
"uuid": "2e547f9d-8630-49dc-bb8c-95991320aacf",
"uuid": "79ce6715-a164-4bb4-974c-7f20616f47d7",
"persistent": true,
"scenarioName": "scenario-1-repos-hub4j-test-org-test-labels-labels-test",
"requiredScenarioState": "scenario-1-repos-hub4j-test-org-test-labels-labels-test-2",

View File

@@ -1,5 +1,5 @@
{
"id": "f6ff2ef4-3475-44b3-8343-8747b248621c",
"id": "e64a0737-c9a7-4ca4-82ce-20e1d0937bbf",
"name": "repos_hub4j-test-org_test-labels_labels_test2",
"request": {
"url": "/repos/hub4j-test-org/test-labels/labels/test2",
@@ -12,35 +12,35 @@
},
"response": {
"status": 200,
"body": "{\"id\":2897001309,\"node_id\":\"MDU6TGFiZWwyODk3MDAxMzA5\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test2\",\"name\":\"test2\",\"color\":\"123457\",\"default\":false,\"description\":\"this is a different test\"}",
"body": "{\"id\":1937402965,\"node_id\":\"MDU6TGFiZWwxOTM3NDAyOTY1\",\"url\":\"https://api.github.com/repos/hub4j-test-org/test-labels/labels/test2\",\"name\":\"test2\",\"color\":\"123457\",\"default\":false,\"description\":\"this is a different test\"}",
"headers": {
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:39:02 GMT",
"Date": "Thu, 26 Mar 2020 21:52:22 GMT",
"Content-Type": "application/json; charset=utf-8",
"Server": "GitHub.com",
"Status": "200 OK",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4979",
"X-RateLimit-Reset": "1585263137",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
"Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI"
],
"ETag": "W/\"6bb2796b20a76d6ab8e7a147bf6b19cf6d0605587e59367c34afe06bb4786f60\"",
"Last-Modified": "Thu, 08 Apr 2021 20:39:02 GMT",
"X-OAuth-Scopes": "repo, workflow",
"ETag": "W/\"648a902d66c2f46f74c7b836969fdfe9\"",
"Last-Modified": "Thu, 26 Mar 2020 21:52:22 GMT",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "repo",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4923",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "77",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "E09C:148F:17AD40:19F239:606F69E6"
"X-GitHub-Request-Id": "E69B:9495:1D219:245BC:5E7D2416"
}
},
"uuid": "f6ff2ef4-3475-44b3-8343-8747b248621c",
"uuid": "e64a0737-c9a7-4ca4-82ce-20e1d0937bbf",
"persistent": true,
"insertionIndex": 16
}

View File

@@ -1,5 +1,5 @@
{
"id": "63ae900f-dd82-428d-abb0-6047083b3a5c",
"id": "932ad601-65b1-4472-9b6a-13ead9cbc248",
"name": "repos_hub4j-test-org_test-labels_labels_test2",
"request": {
"url": "/repos/hub4j-test-org/test-labels/labels/test2",
@@ -13,26 +13,26 @@
"response": {
"status": 204,
"headers": {
"Date": "Thu, 26 Mar 2020 21:52:22 GMT",
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:39:02 GMT",
"X-OAuth-Scopes": "repo, workflow",
"Status": "204 No Content",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4978",
"X-RateLimit-Reset": "1585263137",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4922",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "78",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"Vary": "Accept-Encoding, Accept, X-Requested-With",
"X-GitHub-Request-Id": "E09C:148F:17AD4D:19F246:606F69E6"
"Vary": "Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI",
"X-GitHub-Request-Id": "E69B:9495:1D21C:245BF:5E7D2416"
}
},
"uuid": "63ae900f-dd82-428d-abb0-6047083b3a5c",
"uuid": "932ad601-65b1-4472-9b6a-13ead9cbc248",
"persistent": true,
"insertionIndex": 17
}

View File

@@ -1,5 +1,5 @@
{
"id": "d82ec73a-75a1-4f50-aace-f39edd6b432b",
"id": "0a9dfe83-1110-41c7-9542-4c9d299f430f",
"name": "user",
"request": {
"url": "/user",
@@ -14,33 +14,33 @@
"status": 200,
"bodyFileName": "user-1.json",
"headers": {
"Server": "GitHub.com",
"Date": "Thu, 08 Apr 2021 20:38:58 GMT",
"Date": "Thu, 26 Mar 2020 21:52:17 GMT",
"Content-Type": "application/json; charset=utf-8",
"Server": "GitHub.com",
"Status": "200 OK",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4999",
"X-RateLimit-Reset": "1585263137",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
"Accept-Encoding, Accept, X-Requested-With, X-GitHub-OpenAPI"
],
"ETag": "W/\"0787acf16cf61d6918eeb628d3c11826278c378a9c61ae7a64005efde6229b52\"",
"Last-Modified": "Fri, 02 Apr 2021 21:55:29 GMT",
"X-OAuth-Scopes": "repo, workflow",
"ETag": "W/\"ef9ba8a02c78b6a718bca0bca9f1bb5d\"",
"Last-Modified": "Thu, 26 Mar 2020 21:08:45 GMT",
"X-OAuth-Scopes": "admin:org, admin:org_hook, admin:public_key, admin:repo_hook, delete_repo, gist, notifications, repo, user, write:discussion",
"X-Accepted-OAuth-Scopes": "",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4943",
"X-RateLimit-Reset": "1617917629",
"X-RateLimit-Used": "57",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"X-XSS-Protection": "1; mode=block",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "E09C:148F:17AC5A:19F136:606F69E2"
"X-GitHub-Request-Id": "E69B:9495:1D1A7:24524:5E7D2411"
}
},
"uuid": "d82ec73a-75a1-4f50-aace-f39edd6b432b",
"uuid": "0a9dfe83-1110-41c7-9542-4c9d299f430f",
"persistent": true,
"insertionIndex": 1
}

View File

@@ -3,11 +3,8 @@
"name": "repos_hub4j-test-org_test-checks_check-runs_1424883599",
"request": {
"url": "/repos/hub4j-test-org/test-checks/check-runs/1424883599",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "application/vnd.github.antiope-preview+json"
}

View File

@@ -3,11 +3,8 @@
"name": "repos_hub4j-test-org_test-checks_check-runs_1424883599",
"request": {
"url": "/repos/hub4j-test-org/test-checks/check-runs/1424883599",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "application/vnd.github.antiope-preview+json"
}

View File

@@ -3,11 +3,8 @@
"name": "repos_hub4j-test-org_test-checks_check-runs_1424883037",
"request": {
"url": "/repos/hub4j-test-org/test-checks/check-runs/1424883037",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "application/vnd.github.antiope-preview+json"
}

View File

@@ -3,11 +3,8 @@
"name": "organizations_7544739_team_3451996_discussions_64",
"request": {
"url": "/organizations/7544739/team/3451996/discussions/64",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -3,11 +3,8 @@
"name": "organizations_7544739_team_3451996_discussions_64",
"request": {
"url": "/organizations/7544739/team/3451996/discussions/64",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -3,11 +3,8 @@
"name": "organizations_7544739_team_3451996_discussions_64",
"request": {
"url": "/organizations/7544739/team/3451996/discussions/64",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -3,11 +3,8 @@
"name": "gists_11a257b91982aafd6370089ef877a682",
"request": {
"url": "/gists/11a257b91982aafd6370089ef877a682",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -3,11 +3,8 @@
"name": "gists_11a257b91982aafd6370089ef877a682",
"request": {
"url": "/gists/11a257b91982aafd6370089ef877a682",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -3,11 +3,8 @@
"name": "gists_11a257b91982aafd6370089ef877a682",
"request": {
"url": "/gists/11a257b91982aafd6370089ef877a682",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -3,6 +3,7 @@
"name": "gists_209fef72c25fe4b3f673437603ab6d5d",
"request": {
"url": "/gists/209fef72c25fe4b3f673437603ab6d5d",
"method": "PATCH",
"bodyPatterns": [
{
"equalToJson": "{\"description\":\"Description updated by API\",\"files\":{\"new-file.txt\":{\"content\":\"Added by updater\"},\"rename-me.py\":{\"filename\":\"renamed.py\"},\"update-me.txt\":{\"content\":\"Content updated by API\"}}}",
@@ -10,11 +11,7 @@
"ignoreExtraElements": true
}
],
"method": "POST",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -0,0 +1,31 @@
{
"login": "hub4j-test-org",
"id": 7544739,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjc1NDQ3Mzk=",
"url": "https://api.github.com/orgs/hub4j-test-org",
"repos_url": "https://api.github.com/orgs/hub4j-test-org/repos",
"events_url": "https://api.github.com/orgs/hub4j-test-org/events",
"hooks_url": "https://api.github.com/orgs/hub4j-test-org/hooks",
"issues_url": "https://api.github.com/orgs/hub4j-test-org/issues",
"members_url": "https://api.github.com/orgs/hub4j-test-org/members{/member}",
"public_members_url": "https://api.github.com/orgs/hub4j-test-org/public_members{/member}",
"avatar_url": "https://avatars.githubusercontent.com/u/7544739?v=4",
"description": "Hub4j Test Org Description (this could be null or blank too)",
"name": "Hub4j Test Org Name (this could be null or blank too)",
"company": null,
"blog": "https://hub4j.url.io/could/be/null",
"location": "Hub4j Test Org Location (this could be null or blank too)",
"email": "hub4jtestorgemail@could.be.null.com",
"twitter_username": null,
"is_verified": false,
"has_organization_projects": true,
"has_repository_projects": true,
"public_repos": 18,
"public_gists": 0,
"followers": 0,
"following": 0,
"html_url": "https://github.com/hub4j-test-org",
"created_at": "2014-05-10T19:39:11Z",
"updated_at": "2020-06-04T05:56:10Z",
"type": "Organization"
}

View File

@@ -0,0 +1,328 @@
{
"id": 206888201,
"node_id": "MDEwOlJlcG9zaXRvcnkyMDY4ODgyMDE=",
"name": "github-api",
"full_name": "hub4j-test-org/github-api",
"private": false,
"owner": {
"login": "hub4j-test-org",
"id": 7544739,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjc1NDQ3Mzk=",
"avatar_url": "https://avatars.githubusercontent.com/u/7544739?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/hub4j-test-org",
"html_url": "https://github.com/hub4j-test-org",
"followers_url": "https://api.github.com/users/hub4j-test-org/followers",
"following_url": "https://api.github.com/users/hub4j-test-org/following{/other_user}",
"gists_url": "https://api.github.com/users/hub4j-test-org/gists{/gist_id}",
"starred_url": "https://api.github.com/users/hub4j-test-org/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/hub4j-test-org/subscriptions",
"organizations_url": "https://api.github.com/users/hub4j-test-org/orgs",
"repos_url": "https://api.github.com/users/hub4j-test-org/repos",
"events_url": "https://api.github.com/users/hub4j-test-org/events{/privacy}",
"received_events_url": "https://api.github.com/users/hub4j-test-org/received_events",
"type": "Organization",
"site_admin": false
},
"html_url": "https://github.com/hub4j-test-org/github-api",
"description": "Tricky",
"fork": true,
"url": "https://api.github.com/repos/hub4j-test-org/github-api",
"forks_url": "https://api.github.com/repos/hub4j-test-org/github-api/forks",
"keys_url": "https://api.github.com/repos/hub4j-test-org/github-api/keys{/key_id}",
"collaborators_url": "https://api.github.com/repos/hub4j-test-org/github-api/collaborators{/collaborator}",
"teams_url": "https://api.github.com/repos/hub4j-test-org/github-api/teams",
"hooks_url": "https://api.github.com/repos/hub4j-test-org/github-api/hooks",
"issue_events_url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/events{/number}",
"events_url": "https://api.github.com/repos/hub4j-test-org/github-api/events",
"assignees_url": "https://api.github.com/repos/hub4j-test-org/github-api/assignees{/user}",
"branches_url": "https://api.github.com/repos/hub4j-test-org/github-api/branches{/branch}",
"tags_url": "https://api.github.com/repos/hub4j-test-org/github-api/tags",
"blobs_url": "https://api.github.com/repos/hub4j-test-org/github-api/git/blobs{/sha}",
"git_tags_url": "https://api.github.com/repos/hub4j-test-org/github-api/git/tags{/sha}",
"git_refs_url": "https://api.github.com/repos/hub4j-test-org/github-api/git/refs{/sha}",
"trees_url": "https://api.github.com/repos/hub4j-test-org/github-api/git/trees{/sha}",
"statuses_url": "https://api.github.com/repos/hub4j-test-org/github-api/statuses/{sha}",
"languages_url": "https://api.github.com/repos/hub4j-test-org/github-api/languages",
"stargazers_url": "https://api.github.com/repos/hub4j-test-org/github-api/stargazers",
"contributors_url": "https://api.github.com/repos/hub4j-test-org/github-api/contributors",
"subscribers_url": "https://api.github.com/repos/hub4j-test-org/github-api/subscribers",
"subscription_url": "https://api.github.com/repos/hub4j-test-org/github-api/subscription",
"commits_url": "https://api.github.com/repos/hub4j-test-org/github-api/commits{/sha}",
"git_commits_url": "https://api.github.com/repos/hub4j-test-org/github-api/git/commits{/sha}",
"comments_url": "https://api.github.com/repos/hub4j-test-org/github-api/comments{/number}",
"issue_comment_url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/comments{/number}",
"contents_url": "https://api.github.com/repos/hub4j-test-org/github-api/contents/{+path}",
"compare_url": "https://api.github.com/repos/hub4j-test-org/github-api/compare/{base}...{head}",
"merges_url": "https://api.github.com/repos/hub4j-test-org/github-api/merges",
"archive_url": "https://api.github.com/repos/hub4j-test-org/github-api/{archive_format}{/ref}",
"downloads_url": "https://api.github.com/repos/hub4j-test-org/github-api/downloads",
"issues_url": "https://api.github.com/repos/hub4j-test-org/github-api/issues{/number}",
"pulls_url": "https://api.github.com/repos/hub4j-test-org/github-api/pulls{/number}",
"milestones_url": "https://api.github.com/repos/hub4j-test-org/github-api/milestones{/number}",
"notifications_url": "https://api.github.com/repos/hub4j-test-org/github-api/notifications{?since,all,participating}",
"labels_url": "https://api.github.com/repos/hub4j-test-org/github-api/labels{/name}",
"releases_url": "https://api.github.com/repos/hub4j-test-org/github-api/releases{/id}",
"deployments_url": "https://api.github.com/repos/hub4j-test-org/github-api/deployments",
"created_at": "2019-09-06T23:26:04Z",
"updated_at": "2021-04-19T20:09:00Z",
"pushed_at": "2021-04-19T20:08:56Z",
"git_url": "git://github.com/hub4j-test-org/github-api.git",
"ssh_url": "git@github.com:hub4j-test-org/github-api.git",
"clone_url": "https://github.com/hub4j-test-org/github-api.git",
"svn_url": "https://github.com/hub4j-test-org/github-api",
"homepage": "http://github-api.kohsuke.org/",
"size": 19045,
"stargazers_count": 0,
"watchers_count": 0,
"language": "Java",
"has_issues": true,
"has_projects": true,
"has_downloads": true,
"has_wiki": true,
"has_pages": false,
"forks_count": 0,
"mirror_url": null,
"archived": false,
"disabled": false,
"open_issues_count": 5,
"license": {
"key": "mit",
"name": "MIT License",
"spdx_id": "MIT",
"url": "https://api.github.com/licenses/mit",
"node_id": "MDc6TGljZW5zZTEz"
},
"forks": 0,
"open_issues": 5,
"watchers": 0,
"default_branch": "main",
"permissions": {
"admin": false,
"push": false,
"pull": true
},
"temp_clone_token": "",
"organization": {
"login": "hub4j-test-org",
"id": 7544739,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjc1NDQ3Mzk=",
"avatar_url": "https://avatars.githubusercontent.com/u/7544739?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/hub4j-test-org",
"html_url": "https://github.com/hub4j-test-org",
"followers_url": "https://api.github.com/users/hub4j-test-org/followers",
"following_url": "https://api.github.com/users/hub4j-test-org/following{/other_user}",
"gists_url": "https://api.github.com/users/hub4j-test-org/gists{/gist_id}",
"starred_url": "https://api.github.com/users/hub4j-test-org/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/hub4j-test-org/subscriptions",
"organizations_url": "https://api.github.com/users/hub4j-test-org/orgs",
"repos_url": "https://api.github.com/users/hub4j-test-org/repos",
"events_url": "https://api.github.com/users/hub4j-test-org/events{/privacy}",
"received_events_url": "https://api.github.com/users/hub4j-test-org/received_events",
"type": "Organization",
"site_admin": false
},
"parent": {
"id": 617210,
"node_id": "MDEwOlJlcG9zaXRvcnk2MTcyMTA=",
"name": "github-api",
"full_name": "hub4j/github-api",
"private": false,
"owner": {
"login": "hub4j",
"id": 54909825,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjU0OTA5ODI1",
"avatar_url": "https://avatars.githubusercontent.com/u/54909825?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/hub4j",
"html_url": "https://github.com/hub4j",
"followers_url": "https://api.github.com/users/hub4j/followers",
"following_url": "https://api.github.com/users/hub4j/following{/other_user}",
"gists_url": "https://api.github.com/users/hub4j/gists{/gist_id}",
"starred_url": "https://api.github.com/users/hub4j/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/hub4j/subscriptions",
"organizations_url": "https://api.github.com/users/hub4j/orgs",
"repos_url": "https://api.github.com/users/hub4j/repos",
"events_url": "https://api.github.com/users/hub4j/events{/privacy}",
"received_events_url": "https://api.github.com/users/hub4j/received_events",
"type": "Organization",
"site_admin": false
},
"html_url": "https://github.com/hub4j/github-api",
"description": "Java API for GitHub",
"fork": false,
"url": "https://api.github.com/repos/hub4j/github-api",
"forks_url": "https://api.github.com/repos/hub4j/github-api/forks",
"keys_url": "https://api.github.com/repos/hub4j/github-api/keys{/key_id}",
"collaborators_url": "https://api.github.com/repos/hub4j/github-api/collaborators{/collaborator}",
"teams_url": "https://api.github.com/repos/hub4j/github-api/teams",
"hooks_url": "https://api.github.com/repos/hub4j/github-api/hooks",
"issue_events_url": "https://api.github.com/repos/hub4j/github-api/issues/events{/number}",
"events_url": "https://api.github.com/repos/hub4j/github-api/events",
"assignees_url": "https://api.github.com/repos/hub4j/github-api/assignees{/user}",
"branches_url": "https://api.github.com/repos/hub4j/github-api/branches{/branch}",
"tags_url": "https://api.github.com/repos/hub4j/github-api/tags",
"blobs_url": "https://api.github.com/repos/hub4j/github-api/git/blobs{/sha}",
"git_tags_url": "https://api.github.com/repos/hub4j/github-api/git/tags{/sha}",
"git_refs_url": "https://api.github.com/repos/hub4j/github-api/git/refs{/sha}",
"trees_url": "https://api.github.com/repos/hub4j/github-api/git/trees{/sha}",
"statuses_url": "https://api.github.com/repos/hub4j/github-api/statuses/{sha}",
"languages_url": "https://api.github.com/repos/hub4j/github-api/languages",
"stargazers_url": "https://api.github.com/repos/hub4j/github-api/stargazers",
"contributors_url": "https://api.github.com/repos/hub4j/github-api/contributors",
"subscribers_url": "https://api.github.com/repos/hub4j/github-api/subscribers",
"subscription_url": "https://api.github.com/repos/hub4j/github-api/subscription",
"commits_url": "https://api.github.com/repos/hub4j/github-api/commits{/sha}",
"git_commits_url": "https://api.github.com/repos/hub4j/github-api/git/commits{/sha}",
"comments_url": "https://api.github.com/repos/hub4j/github-api/comments{/number}",
"issue_comment_url": "https://api.github.com/repos/hub4j/github-api/issues/comments{/number}",
"contents_url": "https://api.github.com/repos/hub4j/github-api/contents/{+path}",
"compare_url": "https://api.github.com/repos/hub4j/github-api/compare/{base}...{head}",
"merges_url": "https://api.github.com/repos/hub4j/github-api/merges",
"archive_url": "https://api.github.com/repos/hub4j/github-api/{archive_format}{/ref}",
"downloads_url": "https://api.github.com/repos/hub4j/github-api/downloads",
"issues_url": "https://api.github.com/repos/hub4j/github-api/issues{/number}",
"pulls_url": "https://api.github.com/repos/hub4j/github-api/pulls{/number}",
"milestones_url": "https://api.github.com/repos/hub4j/github-api/milestones{/number}",
"notifications_url": "https://api.github.com/repos/hub4j/github-api/notifications{?since,all,participating}",
"labels_url": "https://api.github.com/repos/hub4j/github-api/labels{/name}",
"releases_url": "https://api.github.com/repos/hub4j/github-api/releases{/id}",
"deployments_url": "https://api.github.com/repos/hub4j/github-api/deployments",
"created_at": "2010-04-19T04:13:03Z",
"updated_at": "2021-06-04T07:26:35Z",
"pushed_at": "2021-06-02T21:59:14Z",
"git_url": "git://github.com/hub4j/github-api.git",
"ssh_url": "git@github.com:hub4j/github-api.git",
"clone_url": "https://github.com/hub4j/github-api.git",
"svn_url": "https://github.com/hub4j/github-api",
"homepage": "https://github-api.kohsuke.org/",
"size": 33490,
"stargazers_count": 774,
"watchers_count": 774,
"language": "Java",
"has_issues": true,
"has_projects": true,
"has_downloads": true,
"has_wiki": true,
"has_pages": true,
"forks_count": 546,
"mirror_url": null,
"archived": false,
"disabled": false,
"open_issues_count": 86,
"license": {
"key": "mit",
"name": "MIT License",
"spdx_id": "MIT",
"url": "https://api.github.com/licenses/mit",
"node_id": "MDc6TGljZW5zZTEz"
},
"forks": 546,
"open_issues": 86,
"watchers": 774,
"default_branch": "main"
},
"source": {
"id": 617210,
"node_id": "MDEwOlJlcG9zaXRvcnk2MTcyMTA=",
"name": "github-api",
"full_name": "hub4j/github-api",
"private": false,
"owner": {
"login": "hub4j",
"id": 54909825,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjU0OTA5ODI1",
"avatar_url": "https://avatars.githubusercontent.com/u/54909825?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/hub4j",
"html_url": "https://github.com/hub4j",
"followers_url": "https://api.github.com/users/hub4j/followers",
"following_url": "https://api.github.com/users/hub4j/following{/other_user}",
"gists_url": "https://api.github.com/users/hub4j/gists{/gist_id}",
"starred_url": "https://api.github.com/users/hub4j/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/hub4j/subscriptions",
"organizations_url": "https://api.github.com/users/hub4j/orgs",
"repos_url": "https://api.github.com/users/hub4j/repos",
"events_url": "https://api.github.com/users/hub4j/events{/privacy}",
"received_events_url": "https://api.github.com/users/hub4j/received_events",
"type": "Organization",
"site_admin": false
},
"html_url": "https://github.com/hub4j/github-api",
"description": "Java API for GitHub",
"fork": false,
"url": "https://api.github.com/repos/hub4j/github-api",
"forks_url": "https://api.github.com/repos/hub4j/github-api/forks",
"keys_url": "https://api.github.com/repos/hub4j/github-api/keys{/key_id}",
"collaborators_url": "https://api.github.com/repos/hub4j/github-api/collaborators{/collaborator}",
"teams_url": "https://api.github.com/repos/hub4j/github-api/teams",
"hooks_url": "https://api.github.com/repos/hub4j/github-api/hooks",
"issue_events_url": "https://api.github.com/repos/hub4j/github-api/issues/events{/number}",
"events_url": "https://api.github.com/repos/hub4j/github-api/events",
"assignees_url": "https://api.github.com/repos/hub4j/github-api/assignees{/user}",
"branches_url": "https://api.github.com/repos/hub4j/github-api/branches{/branch}",
"tags_url": "https://api.github.com/repos/hub4j/github-api/tags",
"blobs_url": "https://api.github.com/repos/hub4j/github-api/git/blobs{/sha}",
"git_tags_url": "https://api.github.com/repos/hub4j/github-api/git/tags{/sha}",
"git_refs_url": "https://api.github.com/repos/hub4j/github-api/git/refs{/sha}",
"trees_url": "https://api.github.com/repos/hub4j/github-api/git/trees{/sha}",
"statuses_url": "https://api.github.com/repos/hub4j/github-api/statuses/{sha}",
"languages_url": "https://api.github.com/repos/hub4j/github-api/languages",
"stargazers_url": "https://api.github.com/repos/hub4j/github-api/stargazers",
"contributors_url": "https://api.github.com/repos/hub4j/github-api/contributors",
"subscribers_url": "https://api.github.com/repos/hub4j/github-api/subscribers",
"subscription_url": "https://api.github.com/repos/hub4j/github-api/subscription",
"commits_url": "https://api.github.com/repos/hub4j/github-api/commits{/sha}",
"git_commits_url": "https://api.github.com/repos/hub4j/github-api/git/commits{/sha}",
"comments_url": "https://api.github.com/repos/hub4j/github-api/comments{/number}",
"issue_comment_url": "https://api.github.com/repos/hub4j/github-api/issues/comments{/number}",
"contents_url": "https://api.github.com/repos/hub4j/github-api/contents/{+path}",
"compare_url": "https://api.github.com/repos/hub4j/github-api/compare/{base}...{head}",
"merges_url": "https://api.github.com/repos/hub4j/github-api/merges",
"archive_url": "https://api.github.com/repos/hub4j/github-api/{archive_format}{/ref}",
"downloads_url": "https://api.github.com/repos/hub4j/github-api/downloads",
"issues_url": "https://api.github.com/repos/hub4j/github-api/issues{/number}",
"pulls_url": "https://api.github.com/repos/hub4j/github-api/pulls{/number}",
"milestones_url": "https://api.github.com/repos/hub4j/github-api/milestones{/number}",
"notifications_url": "https://api.github.com/repos/hub4j/github-api/notifications{?since,all,participating}",
"labels_url": "https://api.github.com/repos/hub4j/github-api/labels{/name}",
"releases_url": "https://api.github.com/repos/hub4j/github-api/releases{/id}",
"deployments_url": "https://api.github.com/repos/hub4j/github-api/deployments",
"created_at": "2010-04-19T04:13:03Z",
"updated_at": "2021-06-04T07:26:35Z",
"pushed_at": "2021-06-02T21:59:14Z",
"git_url": "git://github.com/hub4j/github-api.git",
"ssh_url": "git@github.com:hub4j/github-api.git",
"clone_url": "https://github.com/hub4j/github-api.git",
"svn_url": "https://github.com/hub4j/github-api",
"homepage": "https://github-api.kohsuke.org/",
"size": 33490,
"stargazers_count": 774,
"watchers_count": 774,
"language": "Java",
"has_issues": true,
"has_projects": true,
"has_downloads": true,
"has_wiki": true,
"has_pages": true,
"forks_count": 546,
"mirror_url": null,
"archived": false,
"disabled": false,
"open_issues_count": 86,
"license": {
"key": "mit",
"name": "MIT License",
"spdx_id": "MIT",
"url": "https://api.github.com/licenses/mit",
"node_id": "MDc6TGljZW5zZTEz"
},
"forks": 546,
"open_issues": 86,
"watchers": 774,
"default_branch": "main"
},
"network_count": 546,
"subscribers_count": 1
}

View File

@@ -0,0 +1,47 @@
{
"url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/428",
"repository_url": "https://api.github.com/repos/hub4j-test-org/github-api",
"labels_url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/428/labels{/name}",
"comments_url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/428/comments",
"events_url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/428/events",
"html_url": "https://github.com/hub4j-test-org/github-api/issues/428",
"id": 911708519,
"node_id": "MDU6SXNzdWU5MTE3MDg1MTk=",
"number": 428,
"title": "Some invalid issue name",
"user": {
"login": "t0m4uk1991",
"id": 6698785,
"node_id": "MDQ6VXNlcjY2OTg3ODU=",
"avatar_url": "https://avatars.githubusercontent.com/u/6698785?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/t0m4uk1991",
"html_url": "https://github.com/t0m4uk1991",
"followers_url": "https://api.github.com/users/t0m4uk1991/followers",
"following_url": "https://api.github.com/users/t0m4uk1991/following{/other_user}",
"gists_url": "https://api.github.com/users/t0m4uk1991/gists{/gist_id}",
"starred_url": "https://api.github.com/users/t0m4uk1991/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/t0m4uk1991/subscriptions",
"organizations_url": "https://api.github.com/users/t0m4uk1991/orgs",
"repos_url": "https://api.github.com/users/t0m4uk1991/repos",
"events_url": "https://api.github.com/users/t0m4uk1991/events{/privacy}",
"received_events_url": "https://api.github.com/users/t0m4uk1991/received_events",
"type": "User",
"site_admin": false
},
"labels": [],
"state": "open",
"locked": false,
"assignee": null,
"assignees": [],
"milestone": null,
"comments": 0,
"created_at": "2021-06-04T17:30:18Z",
"updated_at": "2021-06-04T17:30:18Z",
"closed_at": null,
"author_association": "NONE",
"active_lock_reason": null,
"body": null,
"closed_by": null,
"performed_via_github_app": null
}

View File

@@ -0,0 +1,47 @@
{
"url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/428",
"repository_url": "https://api.github.com/repos/hub4j-test-org/github-api",
"labels_url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/428/labels{/name}",
"comments_url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/428/comments",
"events_url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/428/events",
"html_url": "https://github.com/hub4j-test-org/github-api/issues/428",
"id": 911708519,
"node_id": "MDU6SXNzdWU5MTE3MDg1MTk=",
"number": 428,
"title": "Fixed issue name",
"user": {
"login": "t0m4uk1991",
"id": 6698785,
"node_id": "MDQ6VXNlcjY2OTg3ODU=",
"avatar_url": "https://avatars.githubusercontent.com/u/6698785?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/t0m4uk1991",
"html_url": "https://github.com/t0m4uk1991",
"followers_url": "https://api.github.com/users/t0m4uk1991/followers",
"following_url": "https://api.github.com/users/t0m4uk1991/following{/other_user}",
"gists_url": "https://api.github.com/users/t0m4uk1991/gists{/gist_id}",
"starred_url": "https://api.github.com/users/t0m4uk1991/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/t0m4uk1991/subscriptions",
"organizations_url": "https://api.github.com/users/t0m4uk1991/orgs",
"repos_url": "https://api.github.com/users/t0m4uk1991/repos",
"events_url": "https://api.github.com/users/t0m4uk1991/events{/privacy}",
"received_events_url": "https://api.github.com/users/t0m4uk1991/received_events",
"type": "User",
"site_admin": false
},
"labels": [],
"state": "open",
"locked": false,
"assignee": null,
"assignees": [],
"milestone": null,
"comments": 0,
"created_at": "2021-06-04T17:30:18Z",
"updated_at": "2021-06-04T17:30:19Z",
"closed_at": null,
"author_association": "NONE",
"active_lock_reason": null,
"body": null,
"closed_by": null,
"performed_via_github_app": null
}

View File

@@ -0,0 +1,66 @@
{
"url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/428",
"repository_url": "https://api.github.com/repos/hub4j-test-org/github-api",
"labels_url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/428/labels{/name}",
"comments_url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/428/comments",
"events_url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/428/events",
"html_url": "https://github.com/hub4j-test-org/github-api/issues/428",
"id": 911708519,
"node_id": "MDU6SXNzdWU5MTE3MDg1MTk=",
"number": 428,
"title": "Fixed issue name",
"user": {
"login": "t0m4uk1991",
"id": 6698785,
"node_id": "MDQ6VXNlcjY2OTg3ODU=",
"avatar_url": "https://avatars.githubusercontent.com/u/6698785?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/t0m4uk1991",
"html_url": "https://github.com/t0m4uk1991",
"followers_url": "https://api.github.com/users/t0m4uk1991/followers",
"following_url": "https://api.github.com/users/t0m4uk1991/following{/other_user}",
"gists_url": "https://api.github.com/users/t0m4uk1991/gists{/gist_id}",
"starred_url": "https://api.github.com/users/t0m4uk1991/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/t0m4uk1991/subscriptions",
"organizations_url": "https://api.github.com/users/t0m4uk1991/orgs",
"repos_url": "https://api.github.com/users/t0m4uk1991/repos",
"events_url": "https://api.github.com/users/t0m4uk1991/events{/privacy}",
"received_events_url": "https://api.github.com/users/t0m4uk1991/received_events",
"type": "User",
"site_admin": false
},
"labels": [],
"state": "closed",
"locked": false,
"assignee": null,
"assignees": [],
"milestone": null,
"comments": 0,
"created_at": "2021-06-04T17:30:18Z",
"updated_at": "2021-06-04T17:30:20Z",
"closed_at": "2021-06-04T17:30:20Z",
"author_association": "NONE",
"active_lock_reason": null,
"body": null,
"closed_by": {
"login": "t0m4uk1991",
"id": 6698785,
"node_id": "MDQ6VXNlcjY2OTg3ODU=",
"avatar_url": "https://avatars.githubusercontent.com/u/6698785?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/t0m4uk1991",
"html_url": "https://github.com/t0m4uk1991",
"followers_url": "https://api.github.com/users/t0m4uk1991/followers",
"following_url": "https://api.github.com/users/t0m4uk1991/following{/other_user}",
"gists_url": "https://api.github.com/users/t0m4uk1991/gists{/gist_id}",
"starred_url": "https://api.github.com/users/t0m4uk1991/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/t0m4uk1991/subscriptions",
"organizations_url": "https://api.github.com/users/t0m4uk1991/orgs",
"repos_url": "https://api.github.com/users/t0m4uk1991/repos",
"events_url": "https://api.github.com/users/t0m4uk1991/events{/privacy}",
"received_events_url": "https://api.github.com/users/t0m4uk1991/received_events",
"type": "User",
"site_admin": false
},
"performed_via_github_app": null
}

View File

@@ -0,0 +1,36 @@
[
{
"id": 4844454197,
"node_id": "MDE3OlJlbmFtZWRUaXRsZUV2ZW50NDg0NDQ1NDE5Nw==",
"url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/events/4844454197",
"actor": {
"login": "t0m4uk1991",
"id": 6698785,
"node_id": "MDQ6VXNlcjY2OTg3ODU=",
"avatar_url": "https://avatars.githubusercontent.com/u/6698785?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/t0m4uk1991",
"html_url": "https://github.com/t0m4uk1991",
"followers_url": "https://api.github.com/users/t0m4uk1991/followers",
"following_url": "https://api.github.com/users/t0m4uk1991/following{/other_user}",
"gists_url": "https://api.github.com/users/t0m4uk1991/gists{/gist_id}",
"starred_url": "https://api.github.com/users/t0m4uk1991/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/t0m4uk1991/subscriptions",
"organizations_url": "https://api.github.com/users/t0m4uk1991/orgs",
"repos_url": "https://api.github.com/users/t0m4uk1991/repos",
"events_url": "https://api.github.com/users/t0m4uk1991/events{/privacy}",
"received_events_url": "https://api.github.com/users/t0m4uk1991/received_events",
"type": "User",
"site_admin": false
},
"event": "renamed",
"commit_id": null,
"commit_url": null,
"created_at": "2021-06-04T17:30:19Z",
"rename": {
"from": "Some invalid issue name",
"to": "Fixed issue name"
},
"performed_via_github_app": null
}
]

View File

@@ -0,0 +1,80 @@
{
"id": 4844454197,
"node_id": "MDE3OlJlbmFtZWRUaXRsZUV2ZW50NDg0NDQ1NDE5Nw==",
"url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/events/4844454197",
"actor": {
"login": "t0m4uk1991",
"id": 6698785,
"node_id": "MDQ6VXNlcjY2OTg3ODU=",
"avatar_url": "https://avatars.githubusercontent.com/u/6698785?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/t0m4uk1991",
"html_url": "https://github.com/t0m4uk1991",
"followers_url": "https://api.github.com/users/t0m4uk1991/followers",
"following_url": "https://api.github.com/users/t0m4uk1991/following{/other_user}",
"gists_url": "https://api.github.com/users/t0m4uk1991/gists{/gist_id}",
"starred_url": "https://api.github.com/users/t0m4uk1991/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/t0m4uk1991/subscriptions",
"organizations_url": "https://api.github.com/users/t0m4uk1991/orgs",
"repos_url": "https://api.github.com/users/t0m4uk1991/repos",
"events_url": "https://api.github.com/users/t0m4uk1991/events{/privacy}",
"received_events_url": "https://api.github.com/users/t0m4uk1991/received_events",
"type": "User",
"site_admin": false
},
"event": "renamed",
"commit_id": null,
"commit_url": null,
"created_at": "2021-06-04T17:30:19Z",
"rename": {
"from": "Some invalid issue name",
"to": "Fixed issue name"
},
"issue": {
"url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/428",
"repository_url": "https://api.github.com/repos/hub4j-test-org/github-api",
"labels_url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/428/labels{/name}",
"comments_url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/428/comments",
"events_url": "https://api.github.com/repos/hub4j-test-org/github-api/issues/428/events",
"html_url": "https://github.com/hub4j-test-org/github-api/issues/428",
"id": 911708519,
"node_id": "MDU6SXNzdWU5MTE3MDg1MTk=",
"number": 428,
"title": "Fixed issue name",
"user": {
"login": "t0m4uk1991",
"id": 6698785,
"node_id": "MDQ6VXNlcjY2OTg3ODU=",
"avatar_url": "https://avatars.githubusercontent.com/u/6698785?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/t0m4uk1991",
"html_url": "https://github.com/t0m4uk1991",
"followers_url": "https://api.github.com/users/t0m4uk1991/followers",
"following_url": "https://api.github.com/users/t0m4uk1991/following{/other_user}",
"gists_url": "https://api.github.com/users/t0m4uk1991/gists{/gist_id}",
"starred_url": "https://api.github.com/users/t0m4uk1991/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/t0m4uk1991/subscriptions",
"organizations_url": "https://api.github.com/users/t0m4uk1991/orgs",
"repos_url": "https://api.github.com/users/t0m4uk1991/repos",
"events_url": "https://api.github.com/users/t0m4uk1991/events{/privacy}",
"received_events_url": "https://api.github.com/users/t0m4uk1991/received_events",
"type": "User",
"site_admin": false
},
"labels": [],
"state": "open",
"locked": false,
"assignee": null,
"assignees": [],
"milestone": null,
"comments": 0,
"created_at": "2021-06-04T17:30:18Z",
"updated_at": "2021-06-04T17:30:19Z",
"closed_at": null,
"author_association": "NONE",
"active_lock_reason": null,
"body": null,
"performed_via_github_app": null
},
"performed_via_github_app": null
}

View File

@@ -0,0 +1,46 @@
{
"login": "t0m4uk1991",
"id": 6698785,
"node_id": "MDQ6VXNlcjY2OTg3ODU=",
"avatar_url": "https://avatars.githubusercontent.com/u/6698785?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/t0m4uk1991",
"html_url": "https://github.com/t0m4uk1991",
"followers_url": "https://api.github.com/users/t0m4uk1991/followers",
"following_url": "https://api.github.com/users/t0m4uk1991/following{/other_user}",
"gists_url": "https://api.github.com/users/t0m4uk1991/gists{/gist_id}",
"starred_url": "https://api.github.com/users/t0m4uk1991/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/t0m4uk1991/subscriptions",
"organizations_url": "https://api.github.com/users/t0m4uk1991/orgs",
"repos_url": "https://api.github.com/users/t0m4uk1991/repos",
"events_url": "https://api.github.com/users/t0m4uk1991/events{/privacy}",
"received_events_url": "https://api.github.com/users/t0m4uk1991/received_events",
"type": "User",
"site_admin": false,
"name": null,
"company": null,
"blog": "https://t0m4uk1991.github.io",
"location": "Ukraine",
"email": "t0m4uk1991@gmail.com",
"hireable": true,
"bio": null,
"twitter_username": null,
"public_repos": 13,
"public_gists": 10,
"followers": 2,
"following": 2,
"created_at": "2014-02-16T20:43:03Z",
"updated_at": "2021-06-04T17:22:50Z",
"private_gists": 2,
"total_private_repos": 16,
"owned_private_repos": 16,
"disk_usage": 23717,
"collaborators": 0,
"two_factor_authentication": false,
"plan": {
"name": "free",
"space": 976562499,
"collaborators": 0,
"private_repos": 10000
}
}

View File

@@ -0,0 +1,47 @@
{
"id": "0c7963ee-9d88-49ed-b6e0-2e9f86f6d172",
"name": "orgs_hub4j-test-org",
"request": {
"url": "/orgs/hub4j-test-org",
"method": "GET",
"headers": {
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}
}
},
"response": {
"status": 200,
"bodyFileName": "orgs_hub4j-test-org-2.json",
"headers": {
"Server": "GitHub.com",
"Date": "Fri, 04 Jun 2021 17:30:17 GMT",
"Content-Type": "application/json; charset=utf-8",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
],
"ETag": "W/\"087e4632cb5ac0fdd2c25fa49de6c38b8e15ae01fcfffe18f1cebbf755461856\"",
"Last-Modified": "Thu, 04 Jun 2020 05:56:10 GMT",
"X-OAuth-Scopes": "admin:org, repo, user",
"X-Accepted-OAuth-Scopes": "admin:org, read:org, repo, user, write:org",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4965",
"X-RateLimit-Reset": "1622831137",
"X-RateLimit-Used": "35",
"X-RateLimit-Resource": "core",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "BEAE:3CFD:23F092E:24A55E9:60BA6329"
}
},
"uuid": "0c7963ee-9d88-49ed-b6e0-2e9f86f6d172",
"persistent": true,
"insertionIndex": 2
}

View File

@@ -0,0 +1,47 @@
{
"id": "6602a1ef-19d1-4443-86d2-4e581dda95d7",
"name": "repos_hub4j-test-org_github-api",
"request": {
"url": "/repos/hub4j-test-org/github-api",
"method": "GET",
"headers": {
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}
}
},
"response": {
"status": 200,
"bodyFileName": "repos_hub4j-test-org_github-api-3.json",
"headers": {
"Server": "GitHub.com",
"Date": "Fri, 04 Jun 2021 17:30:18 GMT",
"Content-Type": "application/json; charset=utf-8",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
],
"ETag": "W/\"ddd2a544ff3dff3aaeadb5d03e15f1ba9b75ce7dce55a39f0be64baea5d710fa\"",
"Last-Modified": "Mon, 19 Apr 2021 20:09:00 GMT",
"X-OAuth-Scopes": "admin:org, repo, user",
"X-Accepted-OAuth-Scopes": "repo",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4964",
"X-RateLimit-Reset": "1622831137",
"X-RateLimit-Used": "36",
"X-RateLimit-Resource": "core",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "ACA8:FD84:83718A:8699D8:60BA6329"
}
},
"uuid": "6602a1ef-19d1-4443-86d2-4e581dda95d7",
"persistent": true,
"insertionIndex": 3
}

View File

@@ -0,0 +1,54 @@
{
"id": "4b5cc620-1ca6-4fcb-9a7c-2a282f8661d3",
"name": "repos_hub4j-test-org_github-api_issues",
"request": {
"url": "/repos/hub4j-test-org/github-api/issues",
"method": "POST",
"headers": {
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}
},
"bodyPatterns": [
{
"equalToJson": "{\"assignees\":[],\"title\":\"Some invalid issue name\",\"labels\":[]}",
"ignoreArrayOrder": true,
"ignoreExtraElements": false
}
]
},
"response": {
"status": 201,
"bodyFileName": "repos_hub4j-test-org_github-api_issues-4.json",
"headers": {
"Server": "GitHub.com",
"Date": "Fri, 04 Jun 2021 17:30:18 GMT",
"Content-Type": "application/json; charset=utf-8",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
],
"ETag": "\"b2bb1abcde9ed0487f4361fbf9643c387693d6d16db8c5cb41ef68e48826ab75\"",
"X-OAuth-Scopes": "admin:org, repo, user",
"X-Accepted-OAuth-Scopes": "",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4963",
"X-RateLimit-Reset": "1622831137",
"X-RateLimit-Used": "37",
"X-RateLimit-Resource": "core",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "7333:09A5:129955:182A8A:60BA632A",
"Location": "https://api.github.com/repos/hub4j-test-org/github-api/issues/428"
}
},
"uuid": "4b5cc620-1ca6-4fcb-9a7c-2a282f8661d3",
"persistent": true,
"insertionIndex": 4
}

View File

@@ -0,0 +1,53 @@
{
"id": "cfb007fa-6230-41a5-88b7-ab3fc5947ee4",
"name": "repos_hub4j-test-org_github-api_issues_428",
"request": {
"url": "/repos/hub4j-test-org/github-api/issues/428",
"method": "PATCH",
"headers": {
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}
},
"bodyPatterns": [
{
"equalToJson": "{\"title\":\"Fixed issue name\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": false
}
]
},
"response": {
"status": 200,
"bodyFileName": "repos_hub4j-test-org_github-api_issues_428-5.json",
"headers": {
"Server": "GitHub.com",
"Date": "Fri, 04 Jun 2021 17:30:19 GMT",
"Content-Type": "application/json; charset=utf-8",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
],
"ETag": "W/\"44b1afd03db61db683675628136dfbc8bdd836b9cf68c4b1e4b8d55b4757b4fa\"",
"X-OAuth-Scopes": "admin:org, repo, user",
"X-Accepted-OAuth-Scopes": "",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4962",
"X-RateLimit-Reset": "1622831137",
"X-RateLimit-Used": "38",
"X-RateLimit-Resource": "core",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "A440:CD37:455A92D:46B09C6:60BA632A"
}
},
"uuid": "cfb007fa-6230-41a5-88b7-ab3fc5947ee4",
"persistent": true,
"insertionIndex": 5
}

View File

@@ -0,0 +1,53 @@
{
"id": "5c954603-0b68-4aa4-ae85-68da32a54633",
"name": "repos_hub4j-test-org_github-api_issues_428",
"request": {
"url": "/repos/hub4j-test-org/github-api/issues/428",
"method": "PATCH",
"headers": {
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}
},
"bodyPatterns": [
{
"equalToJson": "{\"state\":\"closed\"}",
"ignoreArrayOrder": true,
"ignoreExtraElements": false
}
]
},
"response": {
"status": 200,
"bodyFileName": "repos_hub4j-test-org_github-api_issues_428-8.json",
"headers": {
"Server": "GitHub.com",
"Date": "Fri, 04 Jun 2021 17:30:20 GMT",
"Content-Type": "application/json; charset=utf-8",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
],
"ETag": "W/\"0ee6b1428cd142490f980c4d763aae4fe6975eb3c1b55781bfa4de3c0ed041e7\"",
"X-OAuth-Scopes": "admin:org, repo, user",
"X-Accepted-OAuth-Scopes": "",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4959",
"X-RateLimit-Reset": "1622831137",
"X-RateLimit-Used": "41",
"X-RateLimit-Resource": "core",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "356A:135F2:F26AFC:F70BEA:60BA632C"
}
},
"uuid": "5c954603-0b68-4aa4-ae85-68da32a54633",
"persistent": true,
"insertionIndex": 8
}

View File

@@ -0,0 +1,46 @@
{
"id": "10e1739d-41e9-45f6-91f0-f04e7750b9a9",
"name": "repos_hub4j-test-org_github-api_issues_428_events",
"request": {
"url": "/repos/hub4j-test-org/github-api/issues/428/events",
"method": "GET",
"headers": {
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}
}
},
"response": {
"status": 200,
"bodyFileName": "repos_hub4j-test-org_github-api_issues_428_events-6.json",
"headers": {
"Server": "GitHub.com",
"Date": "Fri, 04 Jun 2021 17:30:19 GMT",
"Content-Type": "application/json; charset=utf-8",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
],
"ETag": "W/\"13a8280721b59e982615e90bbf30448896b0f9a4e260d8d8af14d1f5428dd208\"",
"X-OAuth-Scopes": "admin:org, repo, user",
"X-Accepted-OAuth-Scopes": "repo",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4961",
"X-RateLimit-Reset": "1622831137",
"X-RateLimit-Used": "39",
"X-RateLimit-Resource": "core",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "6927:09AD:1B2A938:1BBAC09:60BA632B"
}
},
"uuid": "10e1739d-41e9-45f6-91f0-f04e7750b9a9",
"persistent": true,
"insertionIndex": 6
}

View File

@@ -0,0 +1,47 @@
{
"id": "c9de3154-6e39-46fd-8420-f892845a9c52",
"name": "repos_hub4j-test-org_github-api_issues_events_4844454197",
"request": {
"url": "/repos/hub4j-test-org/github-api/issues/events/4844454197",
"method": "GET",
"headers": {
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}
}
},
"response": {
"status": 200,
"bodyFileName": "repos_hub4j-test-org_github-api_issues_events_4844454197-7.json",
"headers": {
"Server": "GitHub.com",
"Date": "Fri, 04 Jun 2021 17:30:20 GMT",
"Content-Type": "application/json; charset=utf-8",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
],
"ETag": "W/\"26091c6a14880705802e4633ce8c98f9adacc284d96784c6a10684f9424a2d84\"",
"Last-Modified": "Fri, 04 Jun 2021 17:30:19 GMT",
"X-OAuth-Scopes": "admin:org, repo, user",
"X-Accepted-OAuth-Scopes": "repo",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4960",
"X-RateLimit-Reset": "1622831137",
"X-RateLimit-Used": "40",
"X-RateLimit-Resource": "core",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "3728:CD37:455AA6F:46B0B12:60BA632B"
}
},
"uuid": "c9de3154-6e39-46fd-8420-f892845a9c52",
"persistent": true,
"insertionIndex": 7
}

View File

@@ -0,0 +1,47 @@
{
"id": "323f65e4-0020-4198-8085-149d1b6c7771",
"name": "user",
"request": {
"url": "/user",
"method": "GET",
"headers": {
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}
}
},
"response": {
"status": 200,
"bodyFileName": "user-1.json",
"headers": {
"Server": "GitHub.com",
"Date": "Fri, 04 Jun 2021 17:30:16 GMT",
"Content-Type": "application/json; charset=utf-8",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
],
"ETag": "W/\"1892c767d70ff0bf3dcb793be529d5dd52d62f5770ef6118a7804cf9560e1738\"",
"Last-Modified": "Fri, 04 Jun 2021 17:22:50 GMT",
"X-OAuth-Scopes": "admin:org, repo, user",
"X-Accepted-OAuth-Scopes": "",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4967",
"X-RateLimit-Reset": "1622831137",
"X-RateLimit-Used": "33",
"X-RateLimit-Resource": "core",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "E281:13D7A:2F1A4EE:3003FFD:60BA6328"
}
},
"uuid": "323f65e4-0020-4198-8085-149d1b6c7771",
"persistent": true,
"insertionIndex": 1
}

View File

@@ -0,0 +1,46 @@
{
"login": "t0m4uk1991",
"id": 6698785,
"node_id": "MDQ6VXNlcjY2OTg3ODU=",
"avatar_url": "https://avatars.githubusercontent.com/u/6698785?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/t0m4uk1991",
"html_url": "https://github.com/t0m4uk1991",
"followers_url": "https://api.github.com/users/t0m4uk1991/followers",
"following_url": "https://api.github.com/users/t0m4uk1991/following{/other_user}",
"gists_url": "https://api.github.com/users/t0m4uk1991/gists{/gist_id}",
"starred_url": "https://api.github.com/users/t0m4uk1991/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/t0m4uk1991/subscriptions",
"organizations_url": "https://api.github.com/users/t0m4uk1991/orgs",
"repos_url": "https://api.github.com/users/t0m4uk1991/repos",
"events_url": "https://api.github.com/users/t0m4uk1991/events{/privacy}",
"received_events_url": "https://api.github.com/users/t0m4uk1991/received_events",
"type": "User",
"site_admin": false,
"name": null,
"company": null,
"blog": "https://t0m4uk1991.github.io",
"location": "Ukraine",
"email": "t0m4uk1991@gmail.com",
"hireable": true,
"bio": null,
"twitter_username": null,
"public_repos": 13,
"public_gists": 10,
"followers": 2,
"following": 2,
"created_at": "2014-02-16T20:43:03Z",
"updated_at": "2021-06-04T17:22:50Z",
"private_gists": 2,
"total_private_repos": 16,
"owned_private_repos": 16,
"disk_usage": 23717,
"collaborators": 0,
"two_factor_authentication": false,
"plan": {
"name": "free",
"space": 976562499,
"collaborators": 0,
"private_repos": 10000
}
}

View File

@@ -3,6 +3,7 @@
"name": "repos_hub4j-test-org_github-api_issues_313",
"request": {
"url": "/repos/hub4j-test-org/github-api/issues/313",
"method": "PATCH",
"bodyPatterns": [
{
"equalToJson": "{\"labels\":[\"test-label\"]}",
@@ -10,11 +11,7 @@
"ignoreExtraElements": true
}
],
"method": "POST",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -3,6 +3,7 @@
"name": "repos_hub4j-test-org_github-api_issues_313",
"request": {
"url": "/repos/hub4j-test-org/github-api/issues/313",
"method": "PATCH",
"bodyPatterns": [
{
"equalToJson": "{\"state\":\"closed\"}",
@@ -10,11 +11,7 @@
"ignoreExtraElements": true
}
],
"method": "POST",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -0,0 +1,47 @@
{
"id": "ec2e92c0-8c12-471e-a3b2-bd6996928aa3",
"name": "user",
"request": {
"url": "/user",
"method": "GET",
"headers": {
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}
}
},
"response": {
"status": 200,
"bodyFileName": "user-8.json",
"headers": {
"Server": "GitHub.com",
"Date": "Fri, 04 Jun 2021 17:30:22 GMT",
"Content-Type": "application/json; charset=utf-8",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
],
"ETag": "W/\"1892c767d70ff0bf3dcb793be529d5dd52d62f5770ef6118a7804cf9560e1738\"",
"Last-Modified": "Fri, 04 Jun 2021 17:22:50 GMT",
"X-OAuth-Scopes": "admin:org, repo, user",
"X-Accepted-OAuth-Scopes": "",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4956",
"X-RateLimit-Reset": "1622831137",
"X-RateLimit-Used": "44",
"X-RateLimit-Resource": "core",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "4A0F:DFC2:1EAC7A:1FA9EB:60BA632D"
}
},
"uuid": "ec2e92c0-8c12-471e-a3b2-bd6996928aa3",
"persistent": true,
"insertionIndex": 8
}

View File

@@ -0,0 +1,46 @@
{
"login": "t0m4uk1991",
"id": 6698785,
"node_id": "MDQ6VXNlcjY2OTg3ODU=",
"avatar_url": "https://avatars.githubusercontent.com/u/6698785?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/t0m4uk1991",
"html_url": "https://github.com/t0m4uk1991",
"followers_url": "https://api.github.com/users/t0m4uk1991/followers",
"following_url": "https://api.github.com/users/t0m4uk1991/following{/other_user}",
"gists_url": "https://api.github.com/users/t0m4uk1991/gists{/gist_id}",
"starred_url": "https://api.github.com/users/t0m4uk1991/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/t0m4uk1991/subscriptions",
"organizations_url": "https://api.github.com/users/t0m4uk1991/orgs",
"repos_url": "https://api.github.com/users/t0m4uk1991/repos",
"events_url": "https://api.github.com/users/t0m4uk1991/events{/privacy}",
"received_events_url": "https://api.github.com/users/t0m4uk1991/received_events",
"type": "User",
"site_admin": false,
"name": null,
"company": null,
"blog": "https://t0m4uk1991.github.io",
"location": "Ukraine",
"email": "t0m4uk1991@gmail.com",
"hireable": true,
"bio": null,
"twitter_username": null,
"public_repos": 13,
"public_gists": 10,
"followers": 2,
"following": 2,
"created_at": "2014-02-16T20:43:03Z",
"updated_at": "2021-06-04T17:22:50Z",
"private_gists": 2,
"total_private_repos": 16,
"owned_private_repos": 16,
"disk_usage": 23717,
"collaborators": 0,
"two_factor_authentication": false,
"plan": {
"name": "free",
"space": 976562499,
"collaborators": 0,
"private_repos": 10000
}
}

View File

@@ -0,0 +1,47 @@
{
"id": "b608fa58-9c7d-4199-94cf-1123b31e8ce0",
"name": "user",
"request": {
"url": "/user",
"method": "GET",
"headers": {
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}
}
},
"response": {
"status": 200,
"bodyFileName": "user-17.json",
"headers": {
"Server": "GitHub.com",
"Date": "Fri, 04 Jun 2021 17:30:21 GMT",
"Content-Type": "application/json; charset=utf-8",
"Cache-Control": "private, max-age=60, s-maxage=60",
"Vary": [
"Accept, Authorization, Cookie, X-GitHub-OTP",
"Accept-Encoding, Accept, X-Requested-With"
],
"ETag": "W/\"1892c767d70ff0bf3dcb793be529d5dd52d62f5770ef6118a7804cf9560e1738\"",
"Last-Modified": "Fri, 04 Jun 2021 17:22:50 GMT",
"X-OAuth-Scopes": "admin:org, repo, user",
"X-Accepted-OAuth-Scopes": "",
"X-GitHub-Media-Type": "unknown, github.v3",
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4958",
"X-RateLimit-Reset": "1622831137",
"X-RateLimit-Used": "42",
"X-RateLimit-Resource": "core",
"Strict-Transport-Security": "max-age=31536000; includeSubdomains; preload",
"X-Frame-Options": "deny",
"X-Content-Type-Options": "nosniff",
"X-XSS-Protection": "0",
"Referrer-Policy": "origin-when-cross-origin, strict-origin-when-cross-origin",
"Content-Security-Policy": "default-src 'none'",
"X-GitHub-Request-Id": "EDB3:09A5:12999A:182ADE:60BA632D"
}
},
"uuid": "b608fa58-9c7d-4199-94cf-1123b31e8ce0",
"persistent": true,
"insertionIndex": 17
}

View File

@@ -3,11 +3,8 @@
"name": "repos_hub4j-test-org_github-api_issues_368",
"request": {
"url": "/repos/hub4j-test-org/github-api/issues/368",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -3,11 +3,8 @@
"name": "repos_hub4j-test-org_github-api_issues_368",
"request": {
"url": "/repos/hub4j-test-org/github-api/issues/368",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -3,11 +3,8 @@
"name": "repos_hub4j-test-org_github-api_issues_370",
"request": {
"url": "/repos/hub4j-test-org/github-api/issues/370",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

View File

@@ -3,11 +3,8 @@
"name": "repos_hub4j-test-org_github-api_issues_370",
"request": {
"url": "/repos/hub4j-test-org/github-api/issues/370",
"method": "POST",
"method": "PATCH",
"headers": {
"X-HTTP-Method-Override": {
"equalTo": "PATCH"
},
"Accept": {
"equalTo": "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2"
}

Some files were not shown because too many files have changed in this diff Show More