@@ -44,14 +44,16 @@ public class TestRepositoryFileApi {
44
44
private static final String TEST_NAMESPACE ;
45
45
private static final String TEST_HOST_URL ;
46
46
private static final String TEST_PRIVATE_TOKEN ;
47
-
48
47
static {
49
48
TEST_NAMESPACE = TestUtils .getProperty ("TEST_NAMESPACE" );
50
49
TEST_PROJECT_NAME = TestUtils .getProperty ("TEST_PROJECT_NAME" );
51
50
TEST_HOST_URL = TestUtils .getProperty ("TEST_HOST_URL" );
52
51
TEST_PRIVATE_TOKEN = TestUtils .getProperty ("TEST_PRIVATE_TOKEN" );
53
52
}
54
53
54
+ private static final String TEST_CONTENT = "This is some content to test file content 1234567890 !@#$%^&()." ;
55
+ private static final String TEST_ADDITIONAL_CONTENT = "\n \n This is an additional line" ;
56
+
55
57
private static final String TEST_BRANCH_NAME = "feature/test_branch_for_files" ;
56
58
private static final String TEST_FILEPATH = "test-file.txt" ;
57
59
private static GitLabApi gitLabApi ;
@@ -183,7 +185,7 @@ public void testCreateFileAndDeleteFile() throws GitLabApiException {
183
185
184
186
RepositoryFile file = new RepositoryFile ();
185
187
file .setFilePath (TEST_FILEPATH );
186
- file .setContent ("This is a test file." );
188
+ file .setContent (TEST_CONTENT );
187
189
RepositoryFile createdFile = gitLabApi .getRepositoryFileApi ().createFile (file , project .getId (), TEST_BRANCH_NAME , "Testing createFile()." );
188
190
assertNotNull (createdFile );
189
191
@@ -209,4 +211,39 @@ public void testCreateFileWithEmptyContent() throws GitLabApiException {
209
211
gitLabApi .getRepositoryFileApi ().deleteFile (TEST_FILEPATH , project .getId (), TEST_BRANCH_NAME , "Testing deleteFile()." );
210
212
gitLabApi .getRepositoryApi ().deleteBranch (project .getId (), TEST_BRANCH_NAME );
211
213
}
214
+
215
+ @ Test
216
+ public void testUpdateFile () throws GitLabApiException {
217
+
218
+ Project project = gitLabApi .getProjectApi ().getProject (TEST_NAMESPACE , TEST_PROJECT_NAME );
219
+ assertNotNull (project );
220
+
221
+ Branch branch = gitLabApi .getRepositoryApi ().createBranch (project .getId (), TEST_BRANCH_NAME , "master" );
222
+ assertNotNull (branch );
223
+
224
+ RepositoryFile file = new RepositoryFile ();
225
+ file .setFilePath (TEST_FILEPATH );
226
+ file .setContent (TEST_CONTENT );
227
+ RepositoryFile createdFile = gitLabApi .getRepositoryFileApi ().createFile (file , project .getId (), TEST_BRANCH_NAME , "Testing createFile()." );
228
+ assertNotNull (createdFile );
229
+
230
+ Optional <RepositoryFile > optionalFile = gitLabApi .getRepositoryFileApi ().getOptionalFile (project , TEST_FILEPATH , TEST_BRANCH_NAME );
231
+ assertTrue (optionalFile .isPresent ());
232
+ RepositoryFile newFile = optionalFile .get ();
233
+ assertEquals (TEST_CONTENT , newFile .getDecodedContentAsString ());
234
+
235
+ String newContent = TEST_CONTENT + TEST_ADDITIONAL_CONTENT ;
236
+ file = new RepositoryFile ();
237
+ file .setFilePath (TEST_FILEPATH );
238
+ file .encodeAndSetContent (newContent );
239
+ gitLabApi .getRepositoryFileApi ().updateFile (file , project .getId (), TEST_BRANCH_NAME , "Testing updateFile()." );
240
+
241
+ optionalFile = gitLabApi .getRepositoryFileApi ().getOptionalFile (project , TEST_FILEPATH , TEST_BRANCH_NAME );
242
+ assertTrue (optionalFile .isPresent ());
243
+ RepositoryFile updatedFile = optionalFile .get ();
244
+ assertEquals (newContent , updatedFile .getDecodedContentAsString ());
245
+
246
+ gitLabApi .getRepositoryFileApi ().deleteFile (TEST_FILEPATH , project .getId (), TEST_BRANCH_NAME , "Testing deleteFile()." );
247
+ gitLabApi .getRepositoryApi ().deleteBranch (project .getId (), TEST_BRANCH_NAME );
248
+ }
212
249
}
0 commit comments