From 619da5a7893ed3c6e475428b27780fc6ba650598 Mon Sep 17 00:00:00 2001 From: gabe Date: Fri, 16 Jul 2021 16:37:09 -0500 Subject: [PATCH 1/3] I need a gitignore now --- .gitignore | 142 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 142 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..eb0a0b1 --- /dev/null +++ b/.gitignore @@ -0,0 +1,142 @@ +#vim session files +*.vims + +### Python ### +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ +cover/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 +db.sqlite3-journal + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +.pybuilder/ +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +# For a library or package, you might want to ignore these files since the code is +# intended to run in multiple environments; otherwise, check them in: +# .python-version + +# pipenv +# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. +# However, in case of collaboration, if having platform-specific dependencies or dependencies +# having no cross-platform support, pipenv may install dependencies that don't work, or not +# install all needed dependencies. +#Pipfile.lock + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# pytype static type analyzer +.pytype/ + +# Cython debug symbols +cython_debug/ From cefbd70ab7fa99b00fceb89077a6efd73f64d862 Mon Sep 17 00:00:00 2001 From: gabe Date: Mon, 26 Jul 2021 16:57:55 -0500 Subject: [PATCH 2/3] started on test suite. only contains one .adoc file and one image. --- tests/tests/images/test_pattern.svg | 2495 +++++++++++++++++++++++++++ tests/tests/landing_page.adoc | 113 ++ 2 files changed, 2608 insertions(+) create mode 100644 tests/tests/images/test_pattern.svg create mode 100644 tests/tests/landing_page.adoc diff --git a/tests/tests/images/test_pattern.svg b/tests/tests/images/test_pattern.svg new file mode 100644 index 0000000..7e86992 --- /dev/null +++ b/tests/tests/images/test_pattern.svg @@ -0,0 +1,2495 @@ + + + + + + + + image/svg+xml + + Carta de Ajuste + 11/JUN/08 + + + EBNZ + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/tests/landing_page.adoc b/tests/tests/landing_page.adoc new file mode 100644 index 0000000..2b8b956 --- /dev/null +++ b/tests/tests/landing_page.adoc @@ -0,0 +1,113 @@ += test page for an adoc static site generator. +Gabe Venberg +:imagesdir: ./images +:giturl: git.venberg.xyz/Gabe/adocStaticSiteGen +:toc: + + +IMPORTANT: Test the links in this page! + +== inline formatting tests + +*bold test* + +_italics test_ + +'monospace test' + +'*monospace bold test*' + +'_monospace italic test_' + +_*italic bold test*_ + +'*_all three test_*' + +\*escaped bold test* + ++++underline test using html passthrough test+++ + ++*escaped bold test with plus*+ + +-> => <- <= + +== list tests + +.unordered list test +* Lorum +* ipsum +** dolor +** sit +*** amet +** consectetur + +.ordered list test. +. Lorum +. ipsum +.. dolor +.. sit +... amet +.. consectetur + +.reversed ordered list test. +[%reversed] +. Lorum +. ipsum +.. dolor +.. sit +... amet +.. consectetur + +.mixed list +. Lorum +. ipsum +** dolor +** sit +*** amet +. consectetur +** adipiscing +** elit + +.description list test +[horizontal] +test:: to make sure software works correctly +git:: a gift from the machine spirits +printers:: the greatest evil to ever befall IT. + +==link tests + +link:{giturl}[gittea absolute link] + +TODO: relative links +TODO: xrefs +TODO: includes + +Lorem ipsum dolor sit amet, consectetur adipiscing elit. +Phasellus mi tellus, suscipit in dolor nec, faucibus aliquam nulla. +Mauris gravida, felis commodo molestie tincidunt, sem erat varius lorem, nec lobortis eros sem ut augue. +Donec suscipit tristique imperdiet. +Sed maximus est ultrices urna imperdiet, vitae facilisis eros posuere. +Quisque a mollis mauris. +Pellentesque fermentum, libero sed sollicitudin interdum, dolor nunc euismod purus, et laoreet tellus augue vitae turpis. +Pellentesque condimentum elit quis semper tincidunt. +Nullam consectetur euismod accumsan. +In dictum nibh ut iaculis euismod. +Phasellus ut nibh non ipsum volutpat cursus. +Sed eleifend, enim vitae ultrices auctor, dolor ipsum molestie dui, id dignissim massa neque a mauris. + +[#test-pattern] +.Technical Difficulties +[link={giturl}] +image::test_patern.jpg[Stand By] + +Fusce maximus nec magna eu ultricies. +Fusce quis tellus vitae arcu facilisis lobortis. +Donec id erat at enim porta placerat in vitae sapien. +Duis justo arcu, hendrerit nec nulla eu, dictum dapibus ipsum. +Sed fermentum id elit eget fringilla. +Suspendisse volutpat imperdiet justo, ut efficitur odio maximus et. +Nunc interdum sollicitudin eros sit amet convallis. +Praesent volutpat tempus metus id tincidunt. +Proin aliquet justo a fermentum consectetur. +Nunc scelerisque, nisi id scelerisque dictum, nibh lectus ultrices nunc, quis ultricies erat velit sit amet urna. +Maecenas orci felis, volutpat at bibendum ut, mattis eu justo. From 3c130352a000dbbe62d391ab8a4e5c0f003dd009 Mon Sep 17 00:00:00 2001 From: gabe Date: Fri, 6 Aug 2021 16:25:03 -0500 Subject: [PATCH 3/3] Adds basic test suite. Fixes #3, spent @1h --- tests/result/dir/collatz.py | 16 + tests/result/dir/subdir/linked.html | 466 +++ .../{tests => result}/images/test_pattern.svg | 0 tests/result/landing_page.html | 890 ++++++ tests/test/dir/collatz.py | 16 + tests/test/dir/subdir/linked.adoc | 17 + tests/test/images/test_pattern.svg | 2495 +++++++++++++++++ tests/test/include/include.adoc | 65 + tests/{tests => test}/landing_page.adoc | 87 +- 9 files changed, 4019 insertions(+), 33 deletions(-) create mode 100755 tests/result/dir/collatz.py create mode 100644 tests/result/dir/subdir/linked.html rename tests/{tests => result}/images/test_pattern.svg (100%) create mode 100644 tests/result/landing_page.html create mode 100755 tests/test/dir/collatz.py create mode 100644 tests/test/dir/subdir/linked.adoc create mode 100644 tests/test/images/test_pattern.svg create mode 100644 tests/test/include/include.adoc rename tests/{tests => test}/landing_page.adoc (68%) diff --git a/tests/result/dir/collatz.py b/tests/result/dir/collatz.py new file mode 100755 index 0000000..073528a --- /dev/null +++ b/tests/result/dir/collatz.py @@ -0,0 +1,16 @@ + +def nextInSequence(number): + if isinstance(number, int): + if number % 2 == 0: + return number // 2 + else: + return 3*number+1 + else: + raise TypeError('input must be int!') + +def seqenceLength(number): + length = 0 + while number != 1: + number = nextInSequence(number) + length += 1 + return length diff --git a/tests/result/dir/subdir/linked.html b/tests/result/dir/subdir/linked.html new file mode 100644 index 0000000..510eba5 --- /dev/null +++ b/tests/result/dir/subdir/linked.html @@ -0,0 +1,466 @@ + + + + + + + + +relatively linked doc + + + + + +
+
+
+Stand By +
+
Figure 1. Technical Difficulties
+
+ +
+
A mechanical marvel
+
+ +
+
+ +
+ + + \ No newline at end of file diff --git a/tests/tests/images/test_pattern.svg b/tests/result/images/test_pattern.svg similarity index 100% rename from tests/tests/images/test_pattern.svg rename to tests/result/images/test_pattern.svg diff --git a/tests/result/landing_page.html b/tests/result/landing_page.html new file mode 100644 index 0000000..10c5fe9 --- /dev/null +++ b/tests/result/landing_page.html @@ -0,0 +1,890 @@ + + + + + + + + +test page for an adoc static site generator. + + + + + + +
+
+
+
+ + + + + +
+ + +Test the links in this page! +
+
+
+

Lorem ipsum dolor sit amet, consectetur adipiscing elit. +Phasellus mi tellus, suscipit in dolor nec, faucibus aliquam nulla. +Mauris gravida, felis commodo molestie tincidunt, sem erat varius lorem, nec lobortis eros sem ut augue. +Donec suscipit tristique imperdiet. +Sed maximus est ultrices urna imperdiet, vitae facilisis eros posuere. +Quisque a mollis mauris. +Pellentesque fermentum, libero sed sollicitudin interdum, dolor nunc euismod purus, et laoreet tellus augue vitae turpis. +Pellentesque condimentum elit quis semper tincidunt. +Nullam consectetur euismod accumsan. +In dictum nibh ut iaculis euismod. +Phasellus ut nibh non ipsum volutpat cursus. +Sed eleifend, enim vitae ultrices auctor, dolor ipsum molestie dui, id dignissim massa neque a mauris.

+
+
+
+
+

inline formatting tests

+
+
+

bold test

+
+
+

italics test

+
+
+

'monospace test'

+
+
+

'monospace bold test'

+
+
+

'monospace italic test'

+
+
+

*italic bold test*

+
+
+

'all three test'

+
+
+

*escaped bold test*

+
+
+

underline test using html passthrough test

+
+
+

*escaped bold test with plus*

+
+
+

→ ⇒ ← ⇐

+
+
+
+
+

list tests

+
+
+
unordered list test
+
    +
  • +

    Lorum

    +
  • +
  • +

    ipsum

    +
    +
      +
    • +

      dolor

      +
    • +
    • +

      sit

      +
      +
        +
      • +

        amet

        +
      • +
      +
      +
    • +
    • +

      consectetur

      +
    • +
    +
    +
  • +
+
+
+
ordered list test.
+
    +
  1. +

    Lorum

    +
  2. +
  3. +

    ipsum

    +
    +
      +
    1. +

      dolor

      +
    2. +
    3. +

      sit

      +
      +
        +
      1. +

        amet

        +
      2. +
      +
      +
    4. +
    5. +

      consectetur

      +
    6. +
    +
    +
  4. +
+
+
+
reversed ordered list test.
+
    +
  1. +

    Lorum

    +
  2. +
  3. +

    ipsum

    +
    +
      +
    1. +

      dolor

      +
    2. +
    3. +

      sit

      +
      +
        +
      1. +

        amet

        +
      2. +
      +
      +
    4. +
    5. +

      consectetur

      +
    6. +
    +
    +
  4. +
+
+
+
mixed list
+
    +
  1. +

    Lorum

    +
  2. +
  3. +

    ipsum

    +
    +
      +
    • +

      dolor

      +
    • +
    • +

      sit

      +
      +
        +
      • +

        amet

        +
      • +
      +
      +
    • +
    +
    +
  4. +
  5. +

    consectetur

    +
    +
      +
    • +

      adipiscing

      +
    • +
    • +

      elit

      +
    • +
    +
    +
  6. +
+
+
+
description list test
+ + + + + + + + + + + + + +
+test + +

to make sure software works correctly

+
+git + +

a gift from the machine spirits

+
+printers + +

the greatest evil to ever befall IT.

+
+
+
+
+
+ +
+
+

Lets go back to the list tests or to the tables

+
+ +
+
+Stand By +
+
Figure 1. Technical Difficulties
+
+
+

link!

+
+
+

xref!

+
+
+
Source code test
+
+
def nextInSequence(number):
+    if isinstance(number, int):
+        if number % 2 == 0:
+            return number // 2
+        else:
+            return 3*number+1
+    else:
+        raise TypeError('input must be int!')
+
+def seqenceLength(number):
+    length = 0
+    while number != 1:
+        number = nextInSequence(number)
+        length += 1
+    return length
+
+
+
+
+
+

tables test

+
+ +++++ + + + + + + + + + + + + + + + + + + + +
NameGroupDescription

Firefox

Web Browser

+

Mozilla Firefox is an open-source web browser. +It’s designed for:

+
+
+
    +
  • +

    standards compliance,

    +
  • +
  • +

    performance and

    +
  • +
  • +

    portability.

    +
  • +
+

Ruby

Programming Language

A programmer’s best friend.

+
+
+
+

included section

+
+
+

Fusce maximus nec magna eu ultricies. +Fusce quis tellus vitae arcu facilisis lobortis. +Donec id erat at enim porta placerat in vitae sapien. +Duis justo arcu, hendrerit nec nulla eu, dictum dapibus ipsum. +Sed fermentum id elit eget fringilla. +Suspendisse volutpat imperdiet justo, ut efficitur odio maximus et. +Nunc interdum sollicitudin eros sit amet convallis. +Praesent volutpat tempus metus id tincidunt. +Proin aliquet justo a fermentum consectetur. +Nunc scelerisque, nisi id scelerisque dictum, nibh lectus ultrices nunc, quis ultricies erat velit sit amet urna. +Maecenas orci felis, volutpat at bibendum ut, mattis eu justo.

+
+
+

blocks

+
+
listing block
+
+
example of _listing block_
+with verbatim line break
+
+
+
+
Example 1. example block
+
+
+

example block +with line break

+
+
+
+
+
literal block
+
+
_literal_ block
+with line break
+
+
+pass block +with underlined text +
+
quote block
+
+
+

quote block +with line break

+
+
+
+
+
+
sidebar block
+
+

sidebar block +with line break

+
+
+
+
+ + + + + +
+ + +
+

This is an example of an admonition block.

+
+
+

Unlike an admonition paragraph, it may contain any AsciiDoc content. +The style can be any one of the admonition labels:

+
+
+
    +
  • +

    NOTE

    +
  • +
  • +

    TIP

    +
  • +
  • +

    WARNING

    +
  • +
  • +

    CAUTION

    +
  • +
  • +

    IMPORTANT

    +
  • +
+
+
+
+
+
+
+
+ + + \ No newline at end of file diff --git a/tests/test/dir/collatz.py b/tests/test/dir/collatz.py new file mode 100755 index 0000000..073528a --- /dev/null +++ b/tests/test/dir/collatz.py @@ -0,0 +1,16 @@ + +def nextInSequence(number): + if isinstance(number, int): + if number % 2 == 0: + return number // 2 + else: + return 3*number+1 + else: + raise TypeError('input must be int!') + +def seqenceLength(number): + length = 0 + while number != 1: + number = nextInSequence(number) + length += 1 + return length diff --git a/tests/test/dir/subdir/linked.adoc b/tests/test/dir/subdir/linked.adoc new file mode 100644 index 0000000..4225eb8 --- /dev/null +++ b/tests/test/dir/subdir/linked.adoc @@ -0,0 +1,17 @@ += relatively linked doc +Gabe Venberg +:imagesdir: ../../images/ +:reproducible: +:giturl: git.venberg.xyz/Gabe/adocStaticSiteGen + +[#test-pattern] +.Technical Difficulties +[link={giturl}] +image::test_patern.jpg[Stand By] + +https://git.venberg.xyz/Gabe/adocStaticSiteGen + +.A mechanical marvel +video::IvUU8joBb1Q[youtube] + +<<../../landing_page.adoc#_link_tests,back to where you came!>> diff --git a/tests/test/images/test_pattern.svg b/tests/test/images/test_pattern.svg new file mode 100644 index 0000000..7e86992 --- /dev/null +++ b/tests/test/images/test_pattern.svg @@ -0,0 +1,2495 @@ + + + + + + + + image/svg+xml + + Carta de Ajuste + 11/JUN/08 + + + EBNZ + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/test/include/include.adoc b/tests/test/include/include.adoc new file mode 100644 index 0000000..a7151a2 --- /dev/null +++ b/tests/test/include/include.adoc @@ -0,0 +1,65 @@ +== included section + +Fusce maximus nec magna eu ultricies. +Fusce quis tellus vitae arcu facilisis lobortis. +Donec id erat at enim porta placerat in vitae sapien. +Duis justo arcu, hendrerit nec nulla eu, dictum dapibus ipsum. +Sed fermentum id elit eget fringilla. +Suspendisse volutpat imperdiet justo, ut efficitur odio maximus et. +Nunc interdum sollicitudin eros sit amet convallis. +Praesent volutpat tempus metus id tincidunt. +Proin aliquet justo a fermentum consectetur. +Nunc scelerisque, nisi id scelerisque dictum, nibh lectus ultrices nunc, quis ultricies erat velit sit amet urna. +Maecenas orci felis, volutpat at bibendum ut, mattis eu justo. + +=== blocks + +.listing block +---- +example of _listing block_ +with verbatim line break +---- + +.example block +==== +example block +with line break +==== + +.literal block +.... +_literal_ block +with line break +.... + +.pass block +++++ +pass block +with underlined text +++++ + +.quote block +____ +quote block +with line break +____ + +.sidebar block +**** +sidebar block +with line break +**** + +[NOTE] +==== +This is an example of an admonition block. + +Unlike an admonition paragraph, it may contain any AsciiDoc content. +The style can be any one of the admonition labels: + +* NOTE +* TIP +* WARNING +* CAUTION +* IMPORTANT +==== diff --git a/tests/tests/landing_page.adoc b/tests/test/landing_page.adoc similarity index 68% rename from tests/tests/landing_page.adoc rename to tests/test/landing_page.adoc index 2b8b956..0a4b2f5 100644 --- a/tests/tests/landing_page.adoc +++ b/tests/test/landing_page.adoc @@ -1,12 +1,29 @@ = test page for an adoc static site generator. Gabe Venberg -:imagesdir: ./images -:giturl: git.venberg.xyz/Gabe/adocStaticSiteGen +:imagesdir: images +:docdate: 2021-08-06 +:reproducible: +:giturl: https://git.venberg.xyz/Gabe/adocStaticSiteGen :toc: +:icons: font +:includedir: include/ IMPORTANT: Test the links in this page! +Lorem ipsum dolor sit amet, consectetur adipiscing elit. +Phasellus mi tellus, suscipit in dolor nec, faucibus aliquam nulla. +Mauris gravida, felis commodo molestie tincidunt, sem erat varius lorem, nec lobortis eros sem ut augue. +Donec suscipit tristique imperdiet. +Sed maximus est ultrices urna imperdiet, vitae facilisis eros posuere. +Quisque a mollis mauris. +Pellentesque fermentum, libero sed sollicitudin interdum, dolor nunc euismod purus, et laoreet tellus augue vitae turpis. +Pellentesque condimentum elit quis semper tincidunt. +Nullam consectetur euismod accumsan. +In dictum nibh ut iaculis euismod. +Phasellus ut nibh non ipsum volutpat cursus. +Sed eleifend, enim vitae ultrices auctor, dolor ipsum molestie dui, id dignissim massa neque a mauris. + == inline formatting tests *bold test* @@ -74,40 +91,44 @@ test:: to make sure software works correctly git:: a gift from the machine spirits printers:: the greatest evil to ever befall IT. -==link tests +== link tests + +Lets go back to the <> or to the <> link:{giturl}[gittea absolute link] -TODO: relative links -TODO: xrefs -TODO: includes - -Lorem ipsum dolor sit amet, consectetur adipiscing elit. -Phasellus mi tellus, suscipit in dolor nec, faucibus aliquam nulla. -Mauris gravida, felis commodo molestie tincidunt, sem erat varius lorem, nec lobortis eros sem ut augue. -Donec suscipit tristique imperdiet. -Sed maximus est ultrices urna imperdiet, vitae facilisis eros posuere. -Quisque a mollis mauris. -Pellentesque fermentum, libero sed sollicitudin interdum, dolor nunc euismod purus, et laoreet tellus augue vitae turpis. -Pellentesque condimentum elit quis semper tincidunt. -Nullam consectetur euismod accumsan. -In dictum nibh ut iaculis euismod. -Phasellus ut nibh non ipsum volutpat cursus. -Sed eleifend, enim vitae ultrices auctor, dolor ipsum molestie dui, id dignissim massa neque a mauris. - -[#test-pattern] .Technical Difficulties [link={giturl}] -image::test_patern.jpg[Stand By] +image::test_pattern.svg[Stand By] -Fusce maximus nec magna eu ultricies. -Fusce quis tellus vitae arcu facilisis lobortis. -Donec id erat at enim porta placerat in vitae sapien. -Duis justo arcu, hendrerit nec nulla eu, dictum dapibus ipsum. -Sed fermentum id elit eget fringilla. -Suspendisse volutpat imperdiet justo, ut efficitur odio maximus et. -Nunc interdum sollicitudin eros sit amet convallis. -Praesent volutpat tempus metus id tincidunt. -Proin aliquet justo a fermentum consectetur. -Nunc scelerisque, nisi id scelerisque dictum, nibh lectus ultrices nunc, quis ultricies erat velit sit amet urna. -Maecenas orci felis, volutpat at bibendum ut, mattis eu justo. +link:dir/subdir/linked.html[link!] + +<> + +.Source code test +[source, python] +---- +include::dir/collatz.py[] +---- + +== tables test + +|=== +|Name |Group |Description + +|Firefox +|Web Browser +a|Mozilla Firefox is an open-source web browser. +It's designed for: + +* standards compliance, +* performance and +* portability. + +|Ruby +|Programming Language +|A programmer's best friend. + +|=== + +include::{includedir}/include.adoc[]