Tests: static tests with file system objects.

This commit is contained in:
Andrey Zelenkov
2019-09-24 16:13:20 +03:00
parent 93ead87810
commit 702ca2b853

View File

@@ -1,4 +1,5 @@
import os import os
import socket
import unittest import unittest
from unit.applications.proto import TestApplicationProto from unit.applications.proto import TestApplicationProto
@@ -169,6 +170,29 @@ class TestStatic(TestApplicationProto):
self.get(url='/ди ректория/фа йл')['body'], 'blah', 'dir name 2' self.get(url='/ди ректория/фа йл')['body'], 'blah', 'dir name 2'
) )
def test_static_unix_socket(self):
sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
sock.bind(self.testdir + '/assets/unix_socket')
self.assertEqual(self.get(url='/unix_socket')['status'], 404, 'socket')
sock.close()
def test_static_unix_fifo(self):
os.mkfifo(self.testdir + '/assets/fifo')
self.assertEqual(self.get(url='/fifo')['status'], 404, 'fifo')
def test_static_symlink(self):
os.symlink(self.testdir + '/assets/dir', self.testdir + '/assets/link')
self.assertEqual(self.get(url='/dir')['status'], 301, 'dir')
self.assertEqual(self.get(url='/dir/file')['status'], 200, 'file')
self.assertEqual(self.get(url='/link')['status'], 301, 'symlink dir')
self.assertEqual(
self.get(url='/link/file')['status'], 200, 'symlink file'
)
def test_static_head(self): def test_static_head(self):
resp = self.head(url='/') resp = self.head(url='/')
self.assertEqual(resp['status'], 200, 'status') self.assertEqual(resp['status'], 200, 'status')