Merge pull request #29295 from Gnaily
* gh-29295: Polish "Override available() in RandomAccessDataFile's InputStream" Override available() in RandomAccessDataFile's InputStream Closes gh-29295
This commit is contained in:
		
						commit
						e582a13221
					
				| 
						 | 
					@ -1,5 +1,5 @@
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * Copyright 2012-2019 the original author or authors.
 | 
					 * Copyright 2012-2022 the original author or authors.
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * Licensed under the Apache License, Version 2.0 (the "License");
 | 
					 * Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 * you may not use this file except in compliance with the License.
 | 
					 * you may not use this file except in compliance with the License.
 | 
				
			||||||
| 
						 | 
					@ -180,6 +180,11 @@ public class RandomAccessDataFile implements RandomAccessData {
 | 
				
			||||||
			return (n <= 0) ? 0 : moveOn(cap(n));
 | 
								return (n <= 0) ? 0 : moveOn(cap(n));
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							@Override
 | 
				
			||||||
 | 
							public int available() throws IOException {
 | 
				
			||||||
 | 
								return (int) RandomAccessDataFile.this.length - this.position;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		/**
 | 
							/**
 | 
				
			||||||
		 * Cap the specified value such that it cannot exceed the number of bytes
 | 
							 * Cap the specified value such that it cannot exceed the number of bytes
 | 
				
			||||||
		 * remaining.
 | 
							 * remaining.
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,5 @@
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * Copyright 2012-2021 the original author or authors.
 | 
					 * Copyright 2012-2022 the original author or authors.
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 * Licensed under the Apache License, Version 2.0 (the "License");
 | 
					 * Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 * you may not use this file except in compliance with the License.
 | 
					 * you may not use this file except in compliance with the License.
 | 
				
			||||||
| 
						 | 
					@ -199,6 +199,15 @@ class RandomAccessDataFileTests {
 | 
				
			||||||
		assertThat(amountSkipped).isEqualTo(0L);
 | 
							assertThat(amountSkipped).isEqualTo(0L);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Test
 | 
				
			||||||
 | 
						void inputStreamAvailable() throws Exception {
 | 
				
			||||||
 | 
							assertThat(this.inputStream.available()).isEqualTo(256);
 | 
				
			||||||
 | 
							this.inputStream.skip(56);
 | 
				
			||||||
 | 
							assertThat(this.inputStream.available()).isEqualTo(200);
 | 
				
			||||||
 | 
							this.inputStream.skip(200);
 | 
				
			||||||
 | 
							assertThat(this.inputStream.available()).isEqualTo(0);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	@Test
 | 
						@Test
 | 
				
			||||||
	void subsectionNegativeOffset() {
 | 
						void subsectionNegativeOffset() {
 | 
				
			||||||
		assertThatExceptionOfType(IndexOutOfBoundsException.class).isThrownBy(() -> this.file.getSubsection(-1, 1));
 | 
							assertThatExceptionOfType(IndexOutOfBoundsException.class).isThrownBy(() -> this.file.getSubsection(-1, 1));
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue