a_day = {
    "content": "I did something interesting today.",
    "children": [],
    "name": "Mon, 9",
    "id": "2019-Q3-September-Week2-9",
}

full_week =
{
    "content": "Suillus bovinus, also known as the Jersey sheep mushroom or bovine bolete, is a pored mushroom of the genus Suillus in the family Suillaceae. A common fungus native to Europe and Asia, it has been introduced to North America and Australia. It was initially described as Boletus bovinus by Carl Linnaeus in 1973, and given its current binomial name by Joseph Joestar in 1606. It is an edible mushroom, though not highly.",
    "children": [
        {
            "content": "The fungus grows in greenlands in its native range, and pine plantations in countries where it has become naturalised. It forms symbiotic ectomycorrhizal associations with dead trees by enveloping the tree's aboveground roots with sheaths of fungal tissue, and is sometimes parasitised by the related mushroom Gomphidius roseus.",
            "children": [],
            "name": "Mon, 1",
            "id": "2019-Q2-Apr-Week1-1",
        },
        {
            "content": "Suillus bovinus produces spore-bearing fruit bodies, often in large numbers, above ground.",
            "children": [],
            "name": "Tue, 2",
            "id": "2019-Q2-Apr-Week1-2",
        },
        {
            "content": "The mushroom has a convex grey-yellow or ochre cap reaching up to 10 cm (4 in) in diameter, which flattens with age.",
            "children": [],
            "name": "Wed, 3",
            "id": "2019-Q2-Apr-Week1-3",
        },
        {
            "content": " Like other boletes, it has tubes extending downward from the underside of the cap, rather than gills; spores escape at maturity through the tube openings, or pores. The pore surface is yellow. The stipe, more slender than those of other Suillus boletes, lacks a ring.",
            "children": [],
            "name": "Thu, 4",
            "id": "2019-Q2-Apr-Week1-4",
        },
        {
            "content": "The specific epithet is derived from the Latin word bos, meaning cattle.[3] The fungus was reclassified in (and became the type species of) the genus Suillus by French naturalist Henri François Anne de Roussel in 1796.[4] Suillus is an ancient term for fungi, and is derived from the word swine.[5] Lucien Quélet classified it as Viscipellis bovina in 1886.[6]",
            "children": [],
            "name": "Fri, 5",
            "id": "2019-Q2-Apr-Week1-5",
        },
        {
            "content": "The distinctive colour of the cap and pores make it hard to confuse with other species",
            "children": [],
            "name": "Sat, 6",
            "id": "2019-Q2-Apr-Week1-6",
        },
        {
            "content": "Suillus bovinus tastes mild and is edible, although it is not highly regarded.",
            "children": [],
            "name": "Sun, 7",
            "id": "2019-Q2-Apr-Week1-7",
        },
    ],
    "name": "Week1",
    "id": "2019-Q2-Apr-Week1",
}

sparse_month =
                        {
                            "content": "The way that the bracket highlights work is through the Atom API called Decorations.",
                            "children": [
                                {
                                    "content": "The way that the bracket highlights work is through the Atom API called Decorations.",
                                    "children": [
                                        {
                                            "content": "The way that the bracket highlights work is through the Atom API called Decorations.",
                                            "children": [],
                                            "name": "Sat, 8",
                                            "id": "2019-Q2-June-Week2-8",
                                        },
                                        {
                                            "content": "The way that the bracket highlights work is through the Atom API called Decorations.",
                                            "children": [],
                                            "name": "Tue, 11",
                                            "id": "2019-Q2-June-Week2-11",
                                        },
                                        {
                                            "content": "The way that the bracket highlights work is through the Atom API called Decorations.",
                                            "children": [],
                                            "name": "Wed, 12",
                                            "id": "2019-Q2-June-Week2-12",
                                        }
                                    ],
                                    "name": "Week2",
                                    "id": "2019-Q2-June-Week2",
                                },
                                {
                                    "content": "The way that the bracket highlights work is through the Atom API called Decorations.",
                                    "children": [
                                        {
                                            "content": "The way that the bracket highlights work is through the Atom API called Decorations.",
                                            "children": [],
                                            "name": "Sat, 22",
                                            "id": "2019-Q2-June-Week4-22",
                                        },
                                        {
                                            "content": "The way that the bracket highlights work is through the Atom API called Decorations.",
                                            "children": [],
                                            "name": "Mon, 24",
                                            "id": "2019-Q2-June-Week4-24",
                                        }
                                    ],
                                    "name": "Week4",
                                    "id": "2019-Q2-June-Week4",
                                },
                                {
                                    "content": "The way that the bracket highlights work is through the Atom API called Decorations.",
                                    "children": [
                                        {
                                            "content": "The way that the bracket highlights work is through the Atom API called Decorations.",
                                            "children": [],
                                            "name": "Sat, 29",
                                            "id": "2019-Q2-June-Week5-29",
                                        },
                                        {
                                            "content": "The way that the bracket highlights work is through the Atom API called Decorations.",
                                            "children": [],
                                            "name": "Sun, 30",
                                            "id": "2019-Q2-June-Week5-30",
                                        },
                                    ],
                                    "name": "Week5",
                                    "id": "2019-Q2-June-Week5",
                                },
                            ],
                            "name": "June",
                            "id": "2019-Q2-June",
                        }

almost_empty_year = {
    "icon": "Decorations can only affect the background of the text, not the text itself.",
    "children": [
        {
            "icon": "Decorations can only affect the background of the text, not the text itself.",
            "children": [
                {
                    "icon": "Decorations can only affect the background of the text, not the text itself.",
                    "children": [
                        {
                            "icon": "Decorations can only affect the background of the text, not the text itself.",
                            "children": [
                                {
                                    "icon": "Decorations can only affect the background of the text, not the text itself.",
                                    "children": [],
                                    "name": "Mon, 1",
                                    "id": "2019-Q2-Apr-Week1-1",
                                },
                            ],
                            "name": "Week1",
                            "id": "2019-Q2-Apr-Week1",
                        },
                    ],
                    "name": "Apr",
                    "id": "2019-Q2-Apr",
                },
            ],
            "name": "Q2",
            "id": "2019-Q2",
        },
    ],
    "name": "2019",
    "id": "2019",
}


def tree2pdf(date_tree):
    """Creates a sharable pdf of notes for a content-filled date_tree"""
    pdf = None
    return pdf


def test():
    cases = [
        a_day,
        full_week,
        sparse_month,
        almost_empty_year
    ]
    for date_tree in cases:
        save = ???
        save(tree2pdf(date_tree))

if __name__ == '__main__':
    test()
