1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 package com.jcabi.github;
31
32 import com.jcabi.github.OAuthScope.Scope;
33 import org.hamcrest.MatcherAssert;
34 import org.hamcrest.Matchers;
35 import org.junit.Assume;
36 import org.junit.Test;
37
38
39
40
41
42
43
44 @OAuthScope(Scope.REPO)
45 public final class RtGithubITCase {
46
47
48
49
50 @Test
51 public void authenticatesItself() {
52 final Github github = new GithubIT().connect();
53 MatcherAssert.assertThat(
54 github.users().self(),
55 Matchers.notNullValue()
56 );
57 }
58
59
60
61
62
63 @Test
64 public void connectsAnonymously() throws Exception {
65 final Github github = new RtGithub();
66 MatcherAssert.assertThat(
67 new Issue.Smart(
68 github.repos().get(
69 new Coordinates.Simple("jcabi/jcabi-github")
70 ).issues().get(1)
71 ).title(),
72 Matchers.notNullValue()
73 );
74 }
75
76
77
78
79
80 @Test
81 public void fetchesMeta() throws Exception {
82 final Github github = new RtGithub();
83 MatcherAssert.assertThat(
84 github.meta().getJsonArray("hooks"),
85 Matchers.not(Matchers.empty())
86 );
87 }
88
89
90
91
92
93 @Test
94 public void fetchesEmojis() throws Exception {
95 final Github github = new RtGithub();
96 MatcherAssert.assertThat(
97 github.emojis().getString("+1"),
98 Matchers.startsWith("https://")
99 );
100 }
101
102
103
104
105
106 @Test
107 public void authenticatesWithUsernameAndPassword() throws Exception {
108 final String user = System.getProperty("failsafe.github.user");
109 final String password = System.getProperty("failsafe.github.password");
110 Assume.assumeThat(
111 user,
112 Matchers.not(Matchers.is(Matchers.emptyOrNullString()))
113 );
114 Assume.assumeThat(
115 password,
116 Matchers.not(Matchers.is(Matchers.emptyOrNullString()))
117 );
118 final Github github = new RtGithub(user, password);
119 MatcherAssert.assertThat(
120 new User.Smart(github.users().self()).login(),
121 Matchers.is(user)
122 );
123 }
124
125
126
127
128 @Test
129 public void fetchesUsers() {
130 final Github github = new GithubIT().connect();
131 MatcherAssert.assertThat(
132 "Iterating over github.users() should return something",
133 github.users().iterate("").iterator().next(),
134 Matchers.anything()
135 );
136 }
137
138 }