Skip to content

Commit

Permalink
Fixing issue #1774 (providing klayout.__version__ also for built-in m…
Browse files Browse the repository at this point in the history
…odule)
  • Loading branch information
Matthias Koefferlein committed Jul 5, 2024
1 parent 708e046 commit 769327c
Show file tree
Hide file tree
Showing 8 changed files with 51 additions and 3 deletions.
1 change: 1 addition & 0 deletions src/pya/unit_tests/pyaTests.cc
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,7 @@ void run_pythontest (tl::TestBase *_this, const std::string &fn)
TEST(n) { run_pythontest(_this, file); }

PYTHONTEST (kwargs, "kwargs.py")
PYTHONTEST (modTests, "modTests.py")
PYTHONTEST (dbLayoutTest, "dbLayoutTest.py")
PYTHONTEST (dbRegionTest, "dbRegionTest.py")
PYTHONTEST (dbShapesTest, "dbShapesTest.py")
Expand Down
2 changes: 1 addition & 1 deletion src/pymod/__init__.py.noqt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@

# klayout library definition file

from .tl import __version__
__all__ = [ "tl", "db", "lib", "lay", "rdb" ]

2 changes: 1 addition & 1 deletion src/pymod/__init__.py.qt4
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@

# klayout library definition file

from .tl import __version__
__all__ = [ "tl", "db", "lib", "rdb", "QtCore", "QtGui", "QtXml", "QtSql", "QtNetwork", "QtDesigner", "QtUiTools", "lay" ]

2 changes: 1 addition & 1 deletion src/pymod/__init__.py.qt5
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@

# klayout library definition file

from .tl import __version__
__all__ = [ "tl", "db", "lib", "rdb",
"QtCore", "QtGui", "QtNetwork", "QtSql", "QtWidgets", "QtDesigner", "QtUiTools",
"QtMultimedia", "QtPrintSupport", "QtSvg", "QtXmlPatterns", "QtXml",
Expand Down
1 change: 1 addition & 0 deletions src/pymod/__init__.py.qtless
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# klayout library definition file

from .tl import __version__
__all__ = [ "tl", "db", "lib", "rdb", "lay" ]

1 change: 1 addition & 0 deletions src/pymod/tl/tlMain.cc
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,4 @@
#include "../pymodHelper.h"

DEFINE_PYMOD(tlcore, "tl", "KLayout core module 'tl'")

2 changes: 2 additions & 0 deletions testdata/python/basic.py
Original file line number Diff line number Diff line change
Expand Up @@ -2241,6 +2241,8 @@ def test_37(self):

def test_38(self):

pya.E.reset_inst()

# mixed const / non-const reference and events
ec = pya.E.ic()
self.assertEqual(ec.is_const_object(), True)
Expand Down
43 changes: 43 additions & 0 deletions testdata/python/modTests.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# KLayout Layout Viewer
# Copyright (C) 2006-2024 Matthias Koefferlein
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA


import unittest

class ModuleTest(unittest.TestCase):

def test_1(self):

import klayout as kl
self.assertEqual(kl.__version__ != "", True)

import klayout.db as kldb
self.assertEqual(kldb.__version__, kl.__version__)

import klayout.tl as kltl
self.assertEqual(kltl.__version__, kl.__version__)

# run unit tests
if __name__ == '__main__':
suite = unittest.TestSuite()
# NOTE: Use this instead of loadTestsfromTestCase to select a specific test:
# suite.addTest(BasicTest("test_26"))
suite = unittest.TestLoader().loadTestsFromTestCase(BasicTest)

if not unittest.TextTestRunner(verbosity = 1).run(suite).wasSuccessful():
sys.exit(1)

0 comments on commit 769327c

Please sign in to comment.