summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-05 05:32:37 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-05 05:32:37 +0000
commitca8a6cd86cea6d45b7edad2314ae11514e4770f8 (patch)
treea8bba8f7ef8ea1a32399dfbb7927c8c80d80f16b
parentd1d22ddc8005999bcfc2b7ceccb92929a8f1dd78 (diff)
automatic import of python-iceteaopeneuler20.03
-rw-r--r--.gitignore1
-rw-r--r--python-icetea.spec711
-rw-r--r--sources1
3 files changed, 713 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..ca602a7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/icetea-2.0.1.tar.gz
diff --git a/python-icetea.spec b/python-icetea.spec
new file mode 100644
index 0000000..878e758
--- /dev/null
+++ b/python-icetea.spec
@@ -0,0 +1,711 @@
+%global _empty_manifest_terminate_build 0
+Name: python-icetea
+Version: 2.0.1
+Release: 1
+Summary: Icetea - test framework
+License: (R) ARM
+URL: https://github.com/ARMmbed/icetea.git
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/05/e5/f9ab4666fb517f0701f8852470c6160a149aaf3a50fe034c63c1a0927754/icetea-2.0.1.tar.gz
+BuildArch: noarch
+
+Requires: python3-prettytable
+Requires: python3-requests
+Requires: python3-yattag
+Requires: python3-pyserial
+Requires: python3-jsonmerge
+Requires: python3-jsonschema
+Requires: python3-mbed-ls
+Requires: python3-semver
+Requires: python3-mbed-flasher
+Requires: python3-six
+Requires: python3-pydash
+Requires: python3-transitions
+
+%description
+## Icetea test framework
+
+Icetea is an automated testing framework for Mbed development.
+It automates the process of flashing Mbed boards, running tests
+and accumulating test results into reports.
+Developers use it for local development as well as for
+automation in a Continuous Integration Environment.
+
+When testing [`Mbed OS`](https://www.mbed.com/en/platform/mbed-os/)
+Icetea allows you to execute commands remotely via
+the command line interface (`CLI`) in a device under test (`DUT`).
+The interface between the test framework and `DUT` can be
+for example UART or stdio.
+
+More detailed documentation on the tool is available
+[here in rst format](https://github.com/ARMmbed/icetea/tree/master/doc-source)
+and [here in markdown format](https://github.com/ARMmbed/icetea/tree/master/doc).
+
+### Prerequisites
+Icetea supports Linux (Ubuntu preferred), Windows and OS X. Our main target is Linux.
+We support both Python 2.7 and 3.5 or later. Some OS specific prerequisites below:
+
+* Linux
+ * python-dev and python-lxml
+ `sudo apt-get install python-dev python-lxml`
+ * In order to run test cases with hardware in Linux without sudo rights:
+ ```
+ sudo usermod -a -G dialout username
+ Log out & log in back to Linux
+ ```
+ This command will add the user 'username' to the 'dialout' group and
+ grant the required permissions to the USB ports.
+* OS X
+ * [XCode developer tools](http://osxdaily.com/2014/02/12/install-command-line-tools-mac-os-x/)
+ * [MacPorts](https://www.macports.org/install.php)
+ * [lxml](http://lxml.de/installation.html#installation):
+ `STATIC_DEPS=true sudo pip install lxml`
+
+* Windows
+ * python-lxml installation is problematic on Windows since
+ it usually requires build tools. It can however be installed
+ from pre-built binaries.
+ * Search for a binary for you system from the internet.
+ * Navigate to the directory where you downloaded the
+ binary and install it with `pip install <insert_file_name>`
+ * You can follow instructions [here](http://lxml.de/installation.html#installation)
+ instead.
+
+#### Optional
+
+There are some optional dependencies that brings some optional features,
+like `coloredlogs` which decorate your console outputs with all kind of colors.
+
+All optional dependencies are declared [`extra_requirements.txt`](extra_requirements.txt) and they can be installed using pip.
+Note that you need `extra_requirements.txt` file locally.
+
+```
+> pip install -r extra_requirements.txt
+```
+
+#### Pyshark
+Sniffer integration component requires pyshark,
+which is not covered in requirements.txt due to installation issues with trollius (requirement for python 2
+version of pyshark called pyshark-legacy). To use this integration, you need to manually install pyshark for your setup.
+For python 3:
+
+```
+> pip install pyshark
+```
+For python 2:
+
+```
+> pip install pyshark-legacy
+```
+
+### Installation
+
+`> pip install icetea`
+
+### Usage
+
+To print the help page:
+
+`icetea --help`
+
+To list all local testcases from the examples subfolder:
+
+`icetea --list --tcdir examples`
+
+To print Icetea version:
+
+`icetea --version`
+
+#### Typical use
+
+All of the commands described below might also need other options,
+depending on the test case.
+
+**Running test cases using the tc argument**
+
+`> icetea --tc <test case name> --tcdir <test case search path>`
+
+To run all existing test cases from the `examples` folder:
+
+`> icetea --tc all --tcdir examples`
+
+**Running an example test case with hardware**
+
+In this example, we assume that a compatible board has been connected
+to the computer and an application binary for the board is available.
+The referred test case is available in [the icetea github repository](https://github.com/ARMmbed/icetea/blob/master/examples/test_cmdline.py).
+
+`> icetea --tc test_cmdline --tcdir examples --type hardware --bin <path to a binary>`
+
+**Using metadata filters**
+
+To run all test cases with testtype regression in the metadata:
+
+`> icetea --testtype regression --tcdir <test case search path>`
+
+The following metadata filters are available:
+* test type (--testtype)
+* test subtype (--subtype)
+* feature (--feature)
+* test case name (--tc)
+* tested component (--component)
+* test case folder (--group)
+
+**Running a premade suite**
+
+Icetea supports a suite file that describes a suite of test cases
+in `json` format.
+
+`> icetea --suite <suite file name> --tcdir <test case search path> --suitedir <path to suite directory>`
+
+**Enabling debug level logging**
+
+Use -v or -vv arguments to control logging levels. -v increases the frameworks logging level
+to debug (default is info) and the level of logging in
+certain plugins and external components to info (default is warning).
+--vv increases the level of logging on all Icetea loggers to debug.
+
+**Further details**
+
+For further details on any of the features see our documentation.
+
+#### Creating a test case
+Icetea test cases are implemented as Python classes that inherit the Bench object available in `icetea_lib.bench` module.
+The test case needs to have an initialization function that defines the metadata and a case function that implements the test sequence.
+There are two optional functions, setup and teardown. More information is available in our documentation.
+
+An example test case is shown below:
+
+```
+"""
+Copyright 2017 ARM Limited
+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.
+"""
+
+from icetea_lib.bench import Bench
+
+
+class Testcase(Bench):
+ def __init__(self):
+ Bench.__init__(self,
+ name="example_test",
+ title="Example test",
+ status="development",
+ purpose="Show example of a test",
+ component=["examples"],
+ type="smoke",
+ requirements={
+ "duts": {
+ '*': {
+ "count": 1,
+ "type": "hardware"
+ }
+ }
+ }
+ )
+
+ def setup(self):
+ # nothing for now
+ pass
+
+
+ def case(self):
+ self.command(1, "echo hello world", timeout=5)
+ self.command("help")
+
+ def teardown(self):
+ # nothing for now
+ pass
+```
+
+### License
+See the [license](https://github.com/ARMmbed/icetea/blob/master/LICENSE) agreement.
+
+
+
+
+%package -n python3-icetea
+Summary: Icetea - test framework
+Provides: python-icetea
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-icetea
+## Icetea test framework
+
+Icetea is an automated testing framework for Mbed development.
+It automates the process of flashing Mbed boards, running tests
+and accumulating test results into reports.
+Developers use it for local development as well as for
+automation in a Continuous Integration Environment.
+
+When testing [`Mbed OS`](https://www.mbed.com/en/platform/mbed-os/)
+Icetea allows you to execute commands remotely via
+the command line interface (`CLI`) in a device under test (`DUT`).
+The interface between the test framework and `DUT` can be
+for example UART or stdio.
+
+More detailed documentation on the tool is available
+[here in rst format](https://github.com/ARMmbed/icetea/tree/master/doc-source)
+and [here in markdown format](https://github.com/ARMmbed/icetea/tree/master/doc).
+
+### Prerequisites
+Icetea supports Linux (Ubuntu preferred), Windows and OS X. Our main target is Linux.
+We support both Python 2.7 and 3.5 or later. Some OS specific prerequisites below:
+
+* Linux
+ * python-dev and python-lxml
+ `sudo apt-get install python-dev python-lxml`
+ * In order to run test cases with hardware in Linux without sudo rights:
+ ```
+ sudo usermod -a -G dialout username
+ Log out & log in back to Linux
+ ```
+ This command will add the user 'username' to the 'dialout' group and
+ grant the required permissions to the USB ports.
+* OS X
+ * [XCode developer tools](http://osxdaily.com/2014/02/12/install-command-line-tools-mac-os-x/)
+ * [MacPorts](https://www.macports.org/install.php)
+ * [lxml](http://lxml.de/installation.html#installation):
+ `STATIC_DEPS=true sudo pip install lxml`
+
+* Windows
+ * python-lxml installation is problematic on Windows since
+ it usually requires build tools. It can however be installed
+ from pre-built binaries.
+ * Search for a binary for you system from the internet.
+ * Navigate to the directory where you downloaded the
+ binary and install it with `pip install <insert_file_name>`
+ * You can follow instructions [here](http://lxml.de/installation.html#installation)
+ instead.
+
+#### Optional
+
+There are some optional dependencies that brings some optional features,
+like `coloredlogs` which decorate your console outputs with all kind of colors.
+
+All optional dependencies are declared [`extra_requirements.txt`](extra_requirements.txt) and they can be installed using pip.
+Note that you need `extra_requirements.txt` file locally.
+
+```
+> pip install -r extra_requirements.txt
+```
+
+#### Pyshark
+Sniffer integration component requires pyshark,
+which is not covered in requirements.txt due to installation issues with trollius (requirement for python 2
+version of pyshark called pyshark-legacy). To use this integration, you need to manually install pyshark for your setup.
+For python 3:
+
+```
+> pip install pyshark
+```
+For python 2:
+
+```
+> pip install pyshark-legacy
+```
+
+### Installation
+
+`> pip install icetea`
+
+### Usage
+
+To print the help page:
+
+`icetea --help`
+
+To list all local testcases from the examples subfolder:
+
+`icetea --list --tcdir examples`
+
+To print Icetea version:
+
+`icetea --version`
+
+#### Typical use
+
+All of the commands described below might also need other options,
+depending on the test case.
+
+**Running test cases using the tc argument**
+
+`> icetea --tc <test case name> --tcdir <test case search path>`
+
+To run all existing test cases from the `examples` folder:
+
+`> icetea --tc all --tcdir examples`
+
+**Running an example test case with hardware**
+
+In this example, we assume that a compatible board has been connected
+to the computer and an application binary for the board is available.
+The referred test case is available in [the icetea github repository](https://github.com/ARMmbed/icetea/blob/master/examples/test_cmdline.py).
+
+`> icetea --tc test_cmdline --tcdir examples --type hardware --bin <path to a binary>`
+
+**Using metadata filters**
+
+To run all test cases with testtype regression in the metadata:
+
+`> icetea --testtype regression --tcdir <test case search path>`
+
+The following metadata filters are available:
+* test type (--testtype)
+* test subtype (--subtype)
+* feature (--feature)
+* test case name (--tc)
+* tested component (--component)
+* test case folder (--group)
+
+**Running a premade suite**
+
+Icetea supports a suite file that describes a suite of test cases
+in `json` format.
+
+`> icetea --suite <suite file name> --tcdir <test case search path> --suitedir <path to suite directory>`
+
+**Enabling debug level logging**
+
+Use -v or -vv arguments to control logging levels. -v increases the frameworks logging level
+to debug (default is info) and the level of logging in
+certain plugins and external components to info (default is warning).
+--vv increases the level of logging on all Icetea loggers to debug.
+
+**Further details**
+
+For further details on any of the features see our documentation.
+
+#### Creating a test case
+Icetea test cases are implemented as Python classes that inherit the Bench object available in `icetea_lib.bench` module.
+The test case needs to have an initialization function that defines the metadata and a case function that implements the test sequence.
+There are two optional functions, setup and teardown. More information is available in our documentation.
+
+An example test case is shown below:
+
+```
+"""
+Copyright 2017 ARM Limited
+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.
+"""
+
+from icetea_lib.bench import Bench
+
+
+class Testcase(Bench):
+ def __init__(self):
+ Bench.__init__(self,
+ name="example_test",
+ title="Example test",
+ status="development",
+ purpose="Show example of a test",
+ component=["examples"],
+ type="smoke",
+ requirements={
+ "duts": {
+ '*': {
+ "count": 1,
+ "type": "hardware"
+ }
+ }
+ }
+ )
+
+ def setup(self):
+ # nothing for now
+ pass
+
+
+ def case(self):
+ self.command(1, "echo hello world", timeout=5)
+ self.command("help")
+
+ def teardown(self):
+ # nothing for now
+ pass
+```
+
+### License
+See the [license](https://github.com/ARMmbed/icetea/blob/master/LICENSE) agreement.
+
+
+
+
+%package help
+Summary: Development documents and examples for icetea
+Provides: python3-icetea-doc
+%description help
+## Icetea test framework
+
+Icetea is an automated testing framework for Mbed development.
+It automates the process of flashing Mbed boards, running tests
+and accumulating test results into reports.
+Developers use it for local development as well as for
+automation in a Continuous Integration Environment.
+
+When testing [`Mbed OS`](https://www.mbed.com/en/platform/mbed-os/)
+Icetea allows you to execute commands remotely via
+the command line interface (`CLI`) in a device under test (`DUT`).
+The interface between the test framework and `DUT` can be
+for example UART or stdio.
+
+More detailed documentation on the tool is available
+[here in rst format](https://github.com/ARMmbed/icetea/tree/master/doc-source)
+and [here in markdown format](https://github.com/ARMmbed/icetea/tree/master/doc).
+
+### Prerequisites
+Icetea supports Linux (Ubuntu preferred), Windows and OS X. Our main target is Linux.
+We support both Python 2.7 and 3.5 or later. Some OS specific prerequisites below:
+
+* Linux
+ * python-dev and python-lxml
+ `sudo apt-get install python-dev python-lxml`
+ * In order to run test cases with hardware in Linux without sudo rights:
+ ```
+ sudo usermod -a -G dialout username
+ Log out & log in back to Linux
+ ```
+ This command will add the user 'username' to the 'dialout' group and
+ grant the required permissions to the USB ports.
+* OS X
+ * [XCode developer tools](http://osxdaily.com/2014/02/12/install-command-line-tools-mac-os-x/)
+ * [MacPorts](https://www.macports.org/install.php)
+ * [lxml](http://lxml.de/installation.html#installation):
+ `STATIC_DEPS=true sudo pip install lxml`
+
+* Windows
+ * python-lxml installation is problematic on Windows since
+ it usually requires build tools. It can however be installed
+ from pre-built binaries.
+ * Search for a binary for you system from the internet.
+ * Navigate to the directory where you downloaded the
+ binary and install it with `pip install <insert_file_name>`
+ * You can follow instructions [here](http://lxml.de/installation.html#installation)
+ instead.
+
+#### Optional
+
+There are some optional dependencies that brings some optional features,
+like `coloredlogs` which decorate your console outputs with all kind of colors.
+
+All optional dependencies are declared [`extra_requirements.txt`](extra_requirements.txt) and they can be installed using pip.
+Note that you need `extra_requirements.txt` file locally.
+
+```
+> pip install -r extra_requirements.txt
+```
+
+#### Pyshark
+Sniffer integration component requires pyshark,
+which is not covered in requirements.txt due to installation issues with trollius (requirement for python 2
+version of pyshark called pyshark-legacy). To use this integration, you need to manually install pyshark for your setup.
+For python 3:
+
+```
+> pip install pyshark
+```
+For python 2:
+
+```
+> pip install pyshark-legacy
+```
+
+### Installation
+
+`> pip install icetea`
+
+### Usage
+
+To print the help page:
+
+`icetea --help`
+
+To list all local testcases from the examples subfolder:
+
+`icetea --list --tcdir examples`
+
+To print Icetea version:
+
+`icetea --version`
+
+#### Typical use
+
+All of the commands described below might also need other options,
+depending on the test case.
+
+**Running test cases using the tc argument**
+
+`> icetea --tc <test case name> --tcdir <test case search path>`
+
+To run all existing test cases from the `examples` folder:
+
+`> icetea --tc all --tcdir examples`
+
+**Running an example test case with hardware**
+
+In this example, we assume that a compatible board has been connected
+to the computer and an application binary for the board is available.
+The referred test case is available in [the icetea github repository](https://github.com/ARMmbed/icetea/blob/master/examples/test_cmdline.py).
+
+`> icetea --tc test_cmdline --tcdir examples --type hardware --bin <path to a binary>`
+
+**Using metadata filters**
+
+To run all test cases with testtype regression in the metadata:
+
+`> icetea --testtype regression --tcdir <test case search path>`
+
+The following metadata filters are available:
+* test type (--testtype)
+* test subtype (--subtype)
+* feature (--feature)
+* test case name (--tc)
+* tested component (--component)
+* test case folder (--group)
+
+**Running a premade suite**
+
+Icetea supports a suite file that describes a suite of test cases
+in `json` format.
+
+`> icetea --suite <suite file name> --tcdir <test case search path> --suitedir <path to suite directory>`
+
+**Enabling debug level logging**
+
+Use -v or -vv arguments to control logging levels. -v increases the frameworks logging level
+to debug (default is info) and the level of logging in
+certain plugins and external components to info (default is warning).
+--vv increases the level of logging on all Icetea loggers to debug.
+
+**Further details**
+
+For further details on any of the features see our documentation.
+
+#### Creating a test case
+Icetea test cases are implemented as Python classes that inherit the Bench object available in `icetea_lib.bench` module.
+The test case needs to have an initialization function that defines the metadata and a case function that implements the test sequence.
+There are two optional functions, setup and teardown. More information is available in our documentation.
+
+An example test case is shown below:
+
+```
+"""
+Copyright 2017 ARM Limited
+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.
+"""
+
+from icetea_lib.bench import Bench
+
+
+class Testcase(Bench):
+ def __init__(self):
+ Bench.__init__(self,
+ name="example_test",
+ title="Example test",
+ status="development",
+ purpose="Show example of a test",
+ component=["examples"],
+ type="smoke",
+ requirements={
+ "duts": {
+ '*': {
+ "count": 1,
+ "type": "hardware"
+ }
+ }
+ }
+ )
+
+ def setup(self):
+ # nothing for now
+ pass
+
+
+ def case(self):
+ self.command(1, "echo hello world", timeout=5)
+ self.command("help")
+
+ def teardown(self):
+ # nothing for now
+ pass
+```
+
+### License
+See the [license](https://github.com/ARMmbed/icetea/blob/master/LICENSE) agreement.
+
+
+
+
+%prep
+%autosetup -n icetea-2.0.1
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-icetea -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 2.0.1-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..29aa856
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+557711f7e9f07b7fc7523fb673c55060 icetea-2.0.1.tar.gz