File tree Expand file tree Collapse file tree 1 file changed +17
-2
lines changed
Expand file tree Collapse file tree 1 file changed +17
-2
lines changed Original file line number Diff line number Diff line change @@ -64,7 +64,7 @@ pub struct SpooledTempFile {
6464/// # Ok::<(), std::io::Error>(())
6565/// ```
6666#[ inline]
67- pub fn spooled_tempfile ( max_size : usize ) -> SpooledTempFile {
67+ pub const fn spooled_tempfile ( max_size : usize ) -> SpooledTempFile {
6868 SpooledTempFile :: new ( max_size)
6969}
7070
@@ -94,7 +94,7 @@ fn cursor_to_tempfile(cursor: &Cursor<Vec<u8>>, p: &Option<PathBuf>) -> io::Resu
9494impl SpooledTempFile {
9595 /// Construct a new [`SpooledTempFile`].
9696 #[ must_use]
97- pub fn new ( max_size : usize ) -> SpooledTempFile {
97+ pub const fn new ( max_size : usize ) -> SpooledTempFile {
9898 SpooledTempFile {
9999 max_size,
100100 dir : None ,
@@ -247,3 +247,18 @@ impl Seek for SpooledTempFile {
247247 }
248248 }
249249}
250+
251+ #[ cfg( test) ]
252+ mod test {
253+ use super :: SpooledTempFile ;
254+ use std:: io:: Write ;
255+ use std:: sync:: Mutex ;
256+
257+ // This is fine because `tempfile` doesn't rely on drop.
258+ static TEMPFILE : Mutex < SpooledTempFile > = Mutex :: new ( SpooledTempFile :: new ( 1024 ) ) ;
259+
260+ #[ test]
261+ fn test_tempfile ( ) {
262+ TEMPFILE . lock ( ) . unwrap ( ) . write ( b"foo" ) . unwrap ( ) ;
263+ }
264+ }
You can’t perform that action at this time.
0 commit comments