testLockDir(lockDirFile); lockFile = new File(lockDirFile, file.getName() + LCK); createLock(); out = initWriter(file, encoding, append);
@Test public void testFileNotLocked() throws IOException { // open a valid lockable writer try (LockableFileWriter lfw1 = new LockableFileWriter(file)) { assertTrue(file.exists()); assertTrue(lockFile.exists()); } assertTrue(file.exists()); assertFalse(lockFile.exists()); // open a second valid writer on the same file try (LockableFileWriter lfw2 = new LockableFileWriter(file)) { assertTrue(file.exists()); assertTrue(lockFile.exists()); } assertTrue(file.exists()); assertFalse(lockFile.exists()); }
testLockDir(lockDirFile); lockFile = new File(lockDirFile, file.getName() + LCK); createLock(); out = initWriter(file, encoding, append);
@Test public void testConstructor_File_encoding_badEncoding() throws IOException { try (Writer writer = new LockableFileWriter(file, "BAD-ENCODE")) { fail(); } catch (final UnsupportedCharsetException ex) { // expected assertFalse(file.exists()); assertFalse(lockFile.exists()); } assertFalse(file.exists()); assertFalse(lockFile.exists()); }
testLockDir(lockDirFile); lockFile = new File(lockDirFile, file.getName() + LCK); createLock(); out = initWriter(file, encoding, append);
@Test public void testConstructor_fileName_nullFile() throws IOException { try (Writer writer = new LockableFileWriter((String) null)) { fail(); } catch (final NullPointerException ex) { // expected assertFalse(file.exists()); assertFalse(lockFile.exists()); } assertFalse(file.exists()); assertFalse(lockFile.exists()); }
testLockDir(lockDirFile); lockFile = new File(lockDirFile, file.getName() + LCK); createLock(); out = initWriter(file, encoding, append);
@Test public void testAlternateLockDir() throws IOException { // open a valid locakable writer try (LockableFileWriter lfw1 = new LockableFileWriter(file, "UTF-8" ,true, altLockDir.getAbsolutePath())){ assertTrue(file.exists()); assertTrue(altLockFile.exists()); // try to open a second writer try (LockableFileWriter lfw2 = new LockableFileWriter(file, StandardCharsets.UTF_8, true, altLockDir.getAbsolutePath())){ fail("Somehow able to open a locked file. "); } catch(final IOException ioe) { final String msg = ioe.getMessage(); assertTrue( "Exception message does not start correctly. ", msg.startsWith("Can't write file, lock ") ); assertTrue(file.exists()); assertTrue(altLockFile.exists()); } } assertTrue(file.exists()); assertFalse(altLockFile.exists()); }
testLockDir(lockDirFile); lockFile = new File(lockDirFile, file.getName() + LCK); createLock(); out = initWriter(file, encoding, append);
@Test public void testConstructor_File_nullFile() throws IOException { try (Writer writer = new LockableFileWriter((File) null)) { fail(); } catch (final NullPointerException ex) { // expected assertFalse(file.exists()); assertFalse(lockFile.exists()); } assertFalse(file.exists()); assertFalse(lockFile.exists()); }
testLockDir(lockDirFile); lockFile = new File(lockDirFile, file.getName() + LCK); createLock(); out = initWriter(file, encoding, append);
@Test public void testConstructor_File_directory() { try (Writer writer = new LockableFileWriter(getTestDirectory())) { fail(); } catch (final IOException ex) { // expected assertFalse(file.exists()); assertFalse(lockFile.exists()); } assertFalse(file.exists()); assertFalse(lockFile.exists()); }
testLockDir(lockDirFile); lockFile = new File(lockDirFile, file.getName() + LCK); createLock(); out = initWriter(file, encoding, append);
@Test public void testFileLocked() throws IOException { // open a valid locakable writer try (LockableFileWriter lfw1 = new LockableFileWriter(file)) { assertTrue(file.exists()); assertTrue(lockFile.exists()); // try to open a second writer try (LockableFileWriter lfw2 = new LockableFileWriter(file)) { fail("Somehow able to open a locked file. "); } catch(final IOException ioe) { final String msg = ioe.getMessage(); assertTrue( "Exception message does not start correctly. ", msg.startsWith("Can't write file, lock ") ); assertTrue(file.exists()); assertTrue(lockFile.exists()); } // try to open a third writer try (LockableFileWriter lfw3 = new LockableFileWriter(file)) { fail("Somehow able to open a locked file. "); } catch(final IOException ioe) { final String msg = ioe.getMessage(); assertTrue( "Exception message does not start correctly. ", msg.startsWith("Can't write file, lock ") ); assertTrue(file.exists()); assertTrue(lockFile.exists()); } } assertTrue(file.exists()); assertFalse(lockFile.exists()); }
testLockDir(lockDirFile); lockFile = new File(lockDirFile, file.getName() + LCK); createLock(); out = initWriter(file, encoding, append);