Signed-off-by: YAMAMOTO Takashi <[email protected]> --- ryu/tests/unit/lib/test_import_module.py | 75 ++++++++++++++++++++++++++++ ryu/tests/unit/lib/test_mod/__init__.py | 15 ++++++ ryu/tests/unit/lib/test_mod/fuga/__init__.py | 15 ++++++ ryu/tests/unit/lib/test_mod/fuga/mod.py | 17 +++++++ ryu/tests/unit/lib/test_mod/hoge/__init__.py | 15 ++++++ ryu/tests/unit/lib/test_mod/hoge/mod.py | 17 +++++++ 6 files changed, 154 insertions(+) create mode 100644 ryu/tests/unit/lib/test_import_module.py create mode 100644 ryu/tests/unit/lib/test_mod/__init__.py create mode 100644 ryu/tests/unit/lib/test_mod/fuga/__init__.py create mode 100644 ryu/tests/unit/lib/test_mod/fuga/mod.py create mode 100644 ryu/tests/unit/lib/test_mod/hoge/__init__.py create mode 100644 ryu/tests/unit/lib/test_mod/hoge/mod.py
diff --git a/ryu/tests/unit/lib/test_import_module.py b/ryu/tests/unit/lib/test_import_module.py new file mode 100644 index 0000000..dbec4c1 --- /dev/null +++ b/ryu/tests/unit/lib/test_import_module.py @@ -0,0 +1,75 @@ +# Copyright (C) 2013 Nippon Telegraph and Telephone Corporation. +# Copyright (C) 2013 YAMAMOTO Takashi <yamamoto at valinux co jp> +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import unittest +from nose.tools import eq_ + +from ryu.utils import import_module +import ryu.tests.unit.lib.test_mod.fuga.mod + + +class Test_import_module(unittest.TestCase): + """ Test case for ryu.utils.import_module + """ + + def setUp(self): + pass + + def tearDown(self): + pass + + @staticmethod + def _my_import(name): + mod = __import__(name) + components = name.split('.') + for c in components[1:]: + mod = getattr(mod, c) + return mod + + def test_import_module_with_same_basename(self): + fuga = import_module('ryu.tests.unit.lib.test_mod.fuga.mod') + eq_("this is fuga", fuga.name) + hoge = import_module('ryu.tests.unit.lib.test_mod.hoge.mod') + eq_("this is hoge", hoge.name) + fuga2 = import_module('ryu.tests.unit.lib.test_mod.fuga.mod') + eq_("this is fuga", fuga2.name) + + def test_import_module_by_filename(self): + fuga = import_module('./lib/test_mod/fuga/mod.py') + eq_("this is fuga", fuga.name) + hoge = import_module('./lib/test_mod/hoge/mod.py') + eq_("this is hoge", hoge.name) + fuga2 = import_module('./lib/test_mod/fuga/mod.py') + eq_("this is fuga", fuga2.name) + + def test_import_same_module1(self): + fuga1 = import_module('./lib/test_mod/fuga/mod.py') + eq_("this is fuga", fuga1.name) + eq_(ryu.tests.unit.lib.test_mod.fuga.mod, fuga1) + + def test_import_same_module2(self): + fuga1 = import_module('./lib/test_mod/fuga/mod.py') + eq_("this is fuga", fuga1.name) + fuga2 = import_module('ryu.tests.unit.lib.test_mod.fuga.mod') + eq_("this is fuga", fuga2.name) + eq_(fuga1, fuga2) + + def test_import_same_module3(self): + fuga1 = import_module('./lib/test_mod/fuga/mod.py') + eq_("this is fuga", fuga1.name) + fuga3 = self._my_import('ryu.tests.unit.lib.test_mod.fuga.mod') + eq_("this is fuga", fuga3.name) + eq_(fuga1, fuga3) diff --git a/ryu/tests/unit/lib/test_mod/__init__.py b/ryu/tests/unit/lib/test_mod/__init__.py new file mode 100644 index 0000000..ca8ef53 --- /dev/null +++ b/ryu/tests/unit/lib/test_mod/__init__.py @@ -0,0 +1,15 @@ +# Copyright (C) 2013 Nippon Telegraph and Telephone Corporation. +# Copyright (C) 2013 YAMAMOTO Takashi <yamamoto at valinux co jp> +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/ryu/tests/unit/lib/test_mod/fuga/__init__.py b/ryu/tests/unit/lib/test_mod/fuga/__init__.py new file mode 100644 index 0000000..ca8ef53 --- /dev/null +++ b/ryu/tests/unit/lib/test_mod/fuga/__init__.py @@ -0,0 +1,15 @@ +# Copyright (C) 2013 Nippon Telegraph and Telephone Corporation. +# Copyright (C) 2013 YAMAMOTO Takashi <yamamoto at valinux co jp> +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/ryu/tests/unit/lib/test_mod/fuga/mod.py b/ryu/tests/unit/lib/test_mod/fuga/mod.py new file mode 100644 index 0000000..551cb6c --- /dev/null +++ b/ryu/tests/unit/lib/test_mod/fuga/mod.py @@ -0,0 +1,17 @@ +# Copyright (C) 2013 Nippon Telegraph and Telephone Corporation. +# Copyright (C) 2013 YAMAMOTO Takashi <yamamoto at valinux co jp> +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +name = "this is fuga" diff --git a/ryu/tests/unit/lib/test_mod/hoge/__init__.py b/ryu/tests/unit/lib/test_mod/hoge/__init__.py new file mode 100644 index 0000000..ca8ef53 --- /dev/null +++ b/ryu/tests/unit/lib/test_mod/hoge/__init__.py @@ -0,0 +1,15 @@ +# Copyright (C) 2013 Nippon Telegraph and Telephone Corporation. +# Copyright (C) 2013 YAMAMOTO Takashi <yamamoto at valinux co jp> +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. diff --git a/ryu/tests/unit/lib/test_mod/hoge/mod.py b/ryu/tests/unit/lib/test_mod/hoge/mod.py new file mode 100644 index 0000000..2f363d0 --- /dev/null +++ b/ryu/tests/unit/lib/test_mod/hoge/mod.py @@ -0,0 +1,17 @@ +# Copyright (C) 2013 Nippon Telegraph and Telephone Corporation. +# Copyright (C) 2013 YAMAMOTO Takashi <yamamoto at valinux co jp> +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +name = "this is hoge" -- 1.8.3.1 ------------------------------------------------------------------------------ LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99! 1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint 2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack includes Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13. http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.clktrk _______________________________________________ Ryu-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ryu-devel
