From 7542d04dd9c292e703de6fc52ca07a1d44e920fe Mon Sep 17 00:00:00 2001 From: Monty Taylor Date: Sat, 17 Oct 2015 16:03:19 -0400 Subject: [PATCH] Retire stackforge/i18n-test --- .gitignore | 12 --- .gitreview | 4 - .testr.conf | 4 - README.rst | 22 +--- doc/source/conf.py | 246 ------------------------------------------ doc/source/index.rst | 22 ---- requirements-py3.txt | 12 --- requirements.txt | 12 --- setup.cfg | 24 ----- setup.py | 21 ---- test-requirements.txt | 15 --- tests/__init__.py | 0 tests/test_dummy.py | 8 -- tools/pseudo.py | 80 -------------- tox.ini | 43 -------- 15 files changed, 5 insertions(+), 520 deletions(-) delete mode 100644 .gitignore delete mode 100644 .gitreview delete mode 100644 .testr.conf delete mode 100644 doc/source/conf.py delete mode 100644 doc/source/index.rst delete mode 100644 requirements-py3.txt delete mode 100644 requirements.txt delete mode 100644 setup.cfg delete mode 100644 setup.py delete mode 100644 test-requirements.txt delete mode 100644 tests/__init__.py delete mode 100644 tests/test_dummy.py delete mode 100755 tools/pseudo.py delete mode 100644 tox.ini diff --git a/.gitignore b/.gitignore deleted file mode 100644 index c3df618..0000000 --- a/.gitignore +++ /dev/null @@ -1,12 +0,0 @@ -*.py[co] -*.egg -*.egg-info -dist -build -sdist -.coverage -.tox -AUTHORS -ChangeLog -/.testrepository/ - diff --git a/.gitreview b/.gitreview deleted file mode 100644 index 08cd9e4..0000000 --- a/.gitreview +++ /dev/null @@ -1,4 +0,0 @@ -[gerrit] -host=review.openstack.org -port=29418 -project=stackforge/i18n-test.git diff --git a/.testr.conf b/.testr.conf deleted file mode 100644 index 2109af6..0000000 --- a/.testr.conf +++ /dev/null @@ -1,4 +0,0 @@ -[DEFAULT] -test_command=OS_STDOUT_CAPTURE=1 OS_STDERR_CAPTURE=1 ${PYTHON:-python} -m subunit.run discover -t ./ ./tests $LISTOPT $IDOPTION -test_id_option=--load-list $IDFILE -test_list_option=--list diff --git a/README.rst b/README.rst index 6f83b82..9006052 100644 --- a/README.rst +++ b/README.rst @@ -1,19 +1,7 @@ -Test cases for Openstack-i18n +This project is no longer maintained. -1. Command line I18n test - Install a project with DevStack in an English environment, import mock translations, invoke command lines, verify: - if the response messages are translated. - if the command lines are successfully executed. - if the log messages are translated. +The contents of this repository are still available in the Git source code +management system. To see the contents of this repository before it reached +its end of life, please check out the previous commit with +"git checkout HEAD^1". -2. API I18n test - Install a project with DevStack in an English environment, import mock translations, invoke APIs with non-English inputs, verify: - if the APIs are successfully executed. - -3. Horizon test - Use mock translations and manully check if there is no strings marked with translation tags. - https://review.openstack.org/#/c/142239/ - -4. oslo.i18n test - 4.1 Lazy translation feature - https://review.openstack.org/#/c/147262/ diff --git a/doc/source/conf.py b/doc/source/conf.py deleted file mode 100644 index 15fb6b9..0000000 --- a/doc/source/conf.py +++ /dev/null @@ -1,246 +0,0 @@ -# -*- coding: utf-8 -*- -# -# System tests for i18n & l10n documentation build configuration file, created by -# sphinx-quickstart on Thu Feb 26 08:50:10 2015. -# -# This file is execfile()d with the current directory set to its containing dir. -# -# Note that not all possible configuration values are present in this -# autogenerated file. -# -# All configuration values have a default; values that are commented out -# serve to show the default. - -import sys, os - -# If extensions (or modules to document with autodoc) are in another directory, -# add these directories to sys.path here. If the directory is relative to the -# documentation root, use os.path.abspath to make it absolute, like shown here. -#sys.path.insert(0, os.path.abspath('.')) - -# -- General configuration ----------------------------------------------------- - -# If your documentation needs a minimal Sphinx version, state it here. -#needs_sphinx = '1.0' - -# Add any Sphinx extension module names here, as strings. They can be extensions -# coming with Sphinx (named 'sphinx.ext.*') or your custom ones. -extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx'] - -# Add any paths that contain templates here, relative to this directory. -templates_path = ['_templates'] - -# The suffix of source filenames. -source_suffix = '.rst' - -# The encoding of source files. -#source_encoding = 'utf-8-sig' - -# The master toctree document. -master_doc = 'index' - -# General information about the project. -project = u'System tests for i18n & l10n' -copyright = u'2015, OpenStack Foundation' - -# The version info for the project you're documenting, acts as replacement for -# |version| and |release|, also used in various other places throughout the -# built documents. -# -# The short X.Y version. -version = '0.0.1' -# The full version, including alpha/beta/rc tags. -release = '0.0.1' - -# The language for content autogenerated by Sphinx. Refer to documentation -# for a list of supported languages. -#language = None - -# There are two options for replacing |today|: either, you set today to some -# non-false value, then it is used: -#today = '' -# Else, today_fmt is used as the format for a strftime call. -#today_fmt = '%B %d, %Y' - -# List of patterns, relative to source directory, that match files and -# directories to ignore when looking for source files. -exclude_patterns = [] - -# The reST default role (used for this markup: `text`) to use for all documents. -#default_role = None - -# If true, '()' will be appended to :func: etc. cross-reference text. -#add_function_parentheses = True - -# If true, the current module name will be prepended to all description -# unit titles (such as .. function::). -#add_module_names = True - -# If true, sectionauthor and moduleauthor directives will be shown in the -# output. They are ignored by default. -#show_authors = False - -# The name of the Pygments (syntax highlighting) style to use. -pygments_style = 'sphinx' - -# A list of ignored prefixes for module index sorting. -#modindex_common_prefix = [] - - -# -- Options for HTML output --------------------------------------------------- - -# The theme to use for HTML and HTML Help pages. See the documentation for -# a list of builtin themes. -html_theme = 'default' - -# Theme options are theme-specific and customize the look and feel of a theme -# further. For a list of options available for each theme, see the -# documentation. -#html_theme_options = {} - -# Add any paths that contain custom themes here, relative to this directory. -#html_theme_path = [] - -# The name for this set of Sphinx documents. If None, it defaults to -# " v documentation". -#html_title = None - -# A shorter title for the navigation bar. Default is the same as html_title. -#html_short_title = None - -# The name of an image file (relative to this directory) to place at the top -# of the sidebar. -#html_logo = None - -# The name of an image file (within the static path) to use as favicon of the -# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 -# pixels large. -#html_favicon = None - -# Add any paths that contain custom static files (such as style sheets) here, -# relative to this directory. They are copied after the builtin static files, -# so a file named "default.css" will overwrite the builtin "default.css". -html_static_path = ['_static'] - -# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, -# using the given strftime format. -#html_last_updated_fmt = '%b %d, %Y' - -# If true, SmartyPants will be used to convert quotes and dashes to -# typographically correct entities. -#html_use_smartypants = True - -# Custom sidebar templates, maps document names to template names. -#html_sidebars = {} - -# Additional templates that should be rendered to pages, maps page names to -# template names. -#html_additional_pages = {} - -# If false, no module index is generated. -#html_domain_indices = True - -# If false, no index is generated. -#html_use_index = True - -# If true, the index is split into individual pages for each letter. -#html_split_index = False - -# If true, links to the reST sources are added to the pages. -#html_show_sourcelink = True - -# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. -#html_show_sphinx = True - -# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. -#html_show_copyright = True - -# If true, an OpenSearch description file will be output, and all pages will -# contain a tag referring to it. The value of this option must be the -# base URL from which the finished HTML is served. -#html_use_opensearch = '' - -# This is the file name suffix for HTML files (e.g. ".xhtml"). -#html_file_suffix = None - -# Output file base name for HTML help builder. -htmlhelp_basename = 'Systemtestsfori18nl10ndoc' - - -# -- Options for LaTeX output -------------------------------------------------- - -latex_elements = { -# The paper size ('letterpaper' or 'a4paper'). -#'papersize': 'letterpaper', - -# The font size ('10pt', '11pt' or '12pt'). -#'pointsize': '10pt', - -# Additional stuff for the LaTeX preamble. -#'preamble': '', -} - -# Grouping the document tree into LaTeX files. List of tuples -# (source start file, target name, title, author, documentclass [howto/manual]). -latex_documents = [ - ('index', 'Systemtestsfori18nl10n.tex', u'System tests for i18n \\& l10n Documentation', - u'OpenStack Foundation', 'manual'), -] - -# The name of an image file (relative to this directory) to place at the top of -# the title page. -#latex_logo = None - -# For "manual" documents, if this is true, then toplevel headings are parts, -# not chapters. -#latex_use_parts = False - -# If true, show page references after internal links. -#latex_show_pagerefs = False - -# If true, show URL addresses after external links. -#latex_show_urls = False - -# Documents to append as an appendix to all manuals. -#latex_appendices = [] - -# If false, no module index is generated. -#latex_domain_indices = True - - -# -- Options for manual page output -------------------------------------------- - -# One entry per manual page. List of tuples -# (source start file, name, description, authors, manual section). -man_pages = [ - ('index', 'systemtestsfori18nl10n', u'System tests for i18n & l10n Documentation', - [u'OpenStack Foundation'], 1) -] - -# If true, show URL addresses after external links. -#man_show_urls = False - - -# -- Options for Texinfo output ------------------------------------------------ - -# Grouping the document tree into Texinfo files. List of tuples -# (source start file, target name, title, author, -# dir menu entry, description, category) -texinfo_documents = [ - ('index', 'Systemtestsfori18nl10n', u'System tests for i18n & l10n Documentation', - u'OpenStack Foundation', 'Systemtestsfori18nl10n', 'One line description of project.', - 'Miscellaneous'), -] - -# Documents to append as an appendix to all manuals. -#texinfo_appendices = [] - -# If false, no module index is generated. -#texinfo_domain_indices = True - -# How to display URL addresses: 'footnote', 'no', or 'inline'. -#texinfo_show_urls = 'footnote' - - -# Example configuration for intersphinx: refer to the Python standard library. -intersphinx_mapping = {'http://docs.python.org/': None} diff --git a/doc/source/index.rst b/doc/source/index.rst deleted file mode 100644 index f3d317e..0000000 --- a/doc/source/index.rst +++ /dev/null @@ -1,22 +0,0 @@ -.. System tests for i18n & l10n documentation master file, created by - sphinx-quickstart on Thu Feb 26 08:50:10 2015. - You can adapt this file completely to your liking, but it should at least - contain the root `toctree` directive. - -Welcome to System tests for i18n & l10n's documentation! -======================================================== - -Contents: - -.. toctree:: - :maxdepth: 2 - - - -Indices and tables -================== - -* :ref:`genindex` -* :ref:`modindex` -* :ref:`search` - diff --git a/requirements-py3.txt b/requirements-py3.txt deleted file mode 100644 index 31314d0..0000000 --- a/requirements-py3.txt +++ /dev/null @@ -1,12 +0,0 @@ -# The order of packages is significant, because pip processes them in the order -# of appearance. Changing the order has an impact on the overall integration -# process, which may cause wedges in the gate later. - -pbr>=0.6,!=0.7,<1.0 -Babel>=1.3 -oslo.config>=1.4.0 # Apache-2.0 -oslo.i18n>=1.0.0 # Apache-2.0 -oslo.serialization>=1.0.0 # Apache-2.0 -oslo.utils>=1.1.0 # Apache-2.0 -psutil>=1.1.1,<2.0.0 -six>=1.7.0 diff --git a/requirements.txt b/requirements.txt deleted file mode 100644 index 31314d0..0000000 --- a/requirements.txt +++ /dev/null @@ -1,12 +0,0 @@ -# The order of packages is significant, because pip processes them in the order -# of appearance. Changing the order has an impact on the overall integration -# process, which may cause wedges in the gate later. - -pbr>=0.6,!=0.7,<1.0 -Babel>=1.3 -oslo.config>=1.4.0 # Apache-2.0 -oslo.i18n>=1.0.0 # Apache-2.0 -oslo.serialization>=1.0.0 # Apache-2.0 -oslo.utils>=1.1.0 # Apache-2.0 -psutil>=1.1.1,<2.0.0 -six>=1.7.0 diff --git a/setup.cfg b/setup.cfg deleted file mode 100644 index 3b412ff..0000000 --- a/setup.cfg +++ /dev/null @@ -1,24 +0,0 @@ -[metadata] -name = i18n-tests -summary = OpenStack i18n tests -description-file = - README.rst -author = OpenStack -author-email = openstack-dev@lists.openstack.org -home-page = http://www.openstack.org/ -classifier = - Environment :: OpenStack - Intended Audience :: Developers - Intended Audience :: Information Technology - License :: OSI Approved :: Apache Software License - Operating System :: POSIX :: Linux - Programming Language :: Python - Programming Language :: Python :: 2 - Programming Language :: Python :: 2.7 - -[build_sphinx] -all_files = 1 -build-dir = doc/build -source-dir = doc/source - - diff --git a/setup.py b/setup.py deleted file mode 100644 index c0a24ea..0000000 --- a/setup.py +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/env python -# Copyright (c) 2013 Hewlett-Packard Development Company, L.P. -# -# 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 setuptools - -setuptools.setup( - setup_requires=['pbr'], - pbr=True) diff --git a/test-requirements.txt b/test-requirements.txt deleted file mode 100644 index f99a7c2..0000000 --- a/test-requirements.txt +++ /dev/null @@ -1,15 +0,0 @@ -# The order of packages is significant, because pip processes them in the order -# of appearance. Changing the order has an impact on the overall integration -# process, which may cause wedges in the gate later. - -# Hacking already pins down pep8, pyflakes and flake8 -hacking>=0.9.4,<0.10 -coverage>=3.6 -discover -mock>=1.0 -python-subunit -testrepository>=0.0.17 -testtools>=0.9.32,<0.9.35 -sphinx>=1.1.2,!=1.2.0,!=1.3b1,<1.3 -oslotest>=1.2.0 # Apache-2.0 -oslosphinx>=2.2.0 # Apache-2.0 diff --git a/tests/__init__.py b/tests/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/tests/test_dummy.py b/tests/test_dummy.py deleted file mode 100644 index 17591ca..0000000 --- a/tests/test_dummy.py +++ /dev/null @@ -1,8 +0,0 @@ -from oslotest import base as test_base - - -class DummyTest(test_base.BaseTestCase): - - def test_dummy(self): - """Tests if Python works, to make Jenkins happy with and empty repo.""" - self.assertTrue(True) \ No newline at end of file diff --git a/tools/pseudo.py b/tools/pseudo.py deleted file mode 100755 index 01351cd..0000000 --- a/tools/pseudo.py +++ /dev/null @@ -1,80 +0,0 @@ -#!/usr/bin/env python -# coding: utf-8 - -# Copyright 2015 IBM Corp. -# 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 argparse - -import babel.messages.catalog as catalog -import babel.messages.pofile as pofile - - -def translate(segment,translation): - prefix = u"" - # When the id starts with a newline the mo compiler enforces that - # the translated message must also start with a newline. Make - # sure that doesn't get broken when prepending the bracket. - if segment.startswith('\n'): - prefix = u"\n" - orig_size = len(segment) - # Add extra expansion space based on recommenation from - # http://www-01.ibm.com/software/globalization/guidelines/a3.html - if orig_size < 20: - multiplier = 1 - elif orig_size < 30: - multiplier = 0.8 - elif orig_size < 50: - multiplier = 0.6 - elif orig_size < 70: - multiplier = 0.4 - else: - multiplier = 0.3 - extra_length = int(max(0, (orig_size * multiplier) - 10)) - extra_chars = "~" * extra_length - return u"{0}[~{1}~{2}{3}]".format(prefix, segment, translation.decode('utf-8'), extra_chars) - - -def main(): - # Check arguments - parser = argparse.ArgumentParser() - parser.add_argument('pot_filename', type=argparse.FileType('r')) - parser.add_argument('po_filename', type=argparse.FileType('w')) - parser.add_argument('locale') - parser.add_argument('--string', default='您好яшçあ', help='pseudo string') - args = parser.parse_args() - - # read POT file - pot_cat = pofile.read_po(args.pot_filename, ignore_obsolete=True) - - # Create the new Catalog - new_cat = catalog.Catalog(locale=args.locale, - last_translator="pseudo.py", - charset="utf-8") - num_plurals = new_cat.num_plurals - - # Process messages from template - for msg in pot_cat: - if msg.pluralizable: - msg.string = [translate(u"{}:{}".format(i, msg.id[0]), args.string) - for i in range(num_plurals)] - else: - msg.string = translate(msg.id, args.string) - new_cat[msg.id] = msg - - # Write "translated" PO file - pofile.write_po(args.po_filename, new_cat, ignore_obsolete=True) - - -if __name__ == '__main__': - main() diff --git a/tox.ini b/tox.ini deleted file mode 100644 index 85974dc..0000000 --- a/tox.ini +++ /dev/null @@ -1,43 +0,0 @@ -[tox] -envlist = py34,py27,pep8 -minversion = 1.6 -skipsdist = True - -[testenv] -usedevelop = True -install_command = pip install -U {opts} {packages} -setenv = VIRTUAL_ENV={envdir} - LANG=en_US.UTF-8 - LANGUAGE=en_US:en - LC_ALL=C -deps = -r{toxinidir}/requirements.txt - -r{toxinidir}/test-requirements.txt -commands = python setup.py testr --testr-args='{posargs}' -distribute = false - -[testenv:py34] -deps = -r{toxinidir}/requirements-py3.txt - -r{toxinidir}/test-requirements.txt - -[testenv:pep8] -commands = flake8 -distribute = false - -[testenv:venv] -commands = {posargs} - -[testenv:cover] -commands = python setup.py testr --coverage --testr-args='{posargs}' - -[tox:jenkins] -downloadcache = ~/cache/pip - -[testenv:docs] -commands = python setup.py build_sphinx - -[flake8] -# H904 Wrap long lines in parentheses instead of a backslash -ignore = H904 -show-source = true -builtins = _ -exclude=.venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,tools,build