File: test_dirs.py

package info (click to toggle)
staticsite 2.5-1
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 14,648 kB
  • sloc: javascript: 33,722; python: 9,851; makefile: 46; sh: 4
file content (61 lines) | stat: -rw-r--r-- 2,368 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
from unittest import TestCase

from . import utils as test_utils


class TestDirs(test_utils.MockSiteTestMixin, TestCase):
    """
    Test dirs feature
    """

    def test_dirs(self):
        files = {
            "page_root.md": {},
            "dir1/page_sub.md": {},
            "dir1/dir2/dir3/page_sub3.md": {},
            "dir1/dir2/dir3/page_sub3/slides.pdf": "",
            "dir1/dir2/dir3/page_sub4.md": {},
        }
        with self.site(files) as mocksite:
            # We have a root dir index and dir indices for all subdirs
            dir_root, dir_dir1, dir_dir2, dir_dir3 = mocksite.page(
                "", "dir1", "dir1/dir2", "dir1/dir2/dir3"
            )

            self.assertEqual(dir_root.TYPE, "dir")
            self.assertEqual(dir_dir1.TYPE, "dir")
            self.assertEqual(dir_dir3.TYPE, "dir")
            self.assertEqual(dir_dir3.TYPE, "dir")

            # Check the contents of all dirs
            self.assertCountEqual(dir_root.meta["pages"], [mocksite.page("page_root")])
            self.assertCountEqual(dir_root.subdirs, [dir_dir1])
            self.assertIsNone(dir_root.parent)
            self.assertEqual(dir_root.meta["title"], "Test site")
            self.assertEqual(dir_root.meta["template"], "dir.html")

            self.assertCountEqual(
                dir_dir1.meta["pages"], [mocksite.page("dir1/page_sub")]
            )
            self.assertCountEqual(dir_dir1.subdirs, [dir_dir2])
            self.assertEqual(dir_dir1.parent, dir_root)
            self.assertEqual(dir_dir1.meta["title"], "dir1")

            self.assertCountEqual(dir_dir2.meta["pages"], [])
            self.assertCountEqual(dir_dir2.subdirs, [dir_dir3])
            self.assertEqual(dir_dir2.parent, dir_dir1)
            self.assertEqual(dir_dir2.meta["title"], "dir2")

            self.assertCountEqual(
                dir_dir3.meta["pages"],
                [
                    mocksite.page("dir1/dir2/dir3/page_sub3"),
                    mocksite.page("dir1/dir2/dir3/page_sub4"),
                ],
            )
            self.assertCountEqual(dir_dir3.subdirs, [])
            self.assertEqual(dir_dir3.parent, dir_dir2)
            self.assertEqual(dir_dir3.meta["title"], "dir3")

            asset = mocksite.page("dir1/dir2/dir3/page_sub3/slides.pdf")
            self.assertEqual(asset.TYPE, "asset")