summary refs log blame commit diff stats
path: root/tests/osproc/tclose.nim
blob: 1c99237c71ef1e771a1c42a17b1fafb9309bfd26 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15














                                                          
                                      
         
                                  


                                                           
                                      
         
                                  
discard """
  exitcode: 0
"""

when defined(linux):
  import osproc, os

  proc countFds(): int =
    result = 0
    for i in walkDir("/proc/self/fd"):
      result += 1

  let initCount = countFds()

  let p = osproc.startProcess("echo", options={poUsePath})
  doAssert countFds() == initCount + 3
  p.close
  doAssert countFds() == initCount

  let p1 = osproc.startProcess("echo", options={poUsePath})
  discard p1.inputStream
  doAssert countFds() == initCount + 3
  p.close
  doAssert countFds() == initCount