diff options
| author | CoprDistGit <infra@openeuler.org> | 2023-04-10 15:18:52 +0000 |
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2023-04-10 15:18:52 +0000 |
| commit | 5a25cc289db37ffd1b7cf97f8050ee22b9dbab2c (patch) | |
| tree | 0f4c456c8eeb73fff3700d2a5f4b60c58e0c9f3b | |
| parent | 88982d0d44f28f9e916320aedbd1012ab8b6ae88 (diff) | |
automatic import of python-expecttest
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | python-expecttest.spec | 192 | ||||
| -rw-r--r-- | sources | 1 |
3 files changed, 194 insertions, 0 deletions
@@ -0,0 +1 @@ +/expecttest-0.1.4.tar.gz diff --git a/python-expecttest.spec b/python-expecttest.spec new file mode 100644 index 0000000..cfc8d4d --- /dev/null +++ b/python-expecttest.spec @@ -0,0 +1,192 @@ +%global _empty_manifest_terminate_build 0 +Name: python-expecttest +Version: 0.1.4 +Release: 1 +Summary: please add a summary manually as the author left a blank one +License: MIT +URL: https://github.com/ezyang/expecttest +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/10/71/4ee70a15dc3235ec01e0083f95a9989b4b6d5dd2083282cc8748a8a07b78/expecttest-0.1.4.tar.gz +BuildArch: noarch + + +%description +# expecttest [](https://badge.fury.io/py/expecttest) + +This library implements expect tests (also known as "golden" tests). Expect +tests are a method of writing tests where instead of hard-coding the expected +output of a test, you run the test to get the output, and the test framework +automatically populates the expected output. If the output of the test changes, +you can rerun the test with the environment variable `EXPECTTEST_ACCEPT=1` to +automatically update the expected output. + +Somewhat unusually, this library implements *inline* expect tests: that is to +say, the expected output isn't saved to an external file, it is saved directly +in the Python file (and we modify your Python file when updating the expect +test.) + +The general recipe for how to use this is as follows: + + 1. Write your test and use `assertExpectedInline()` instead of a normal + `assertEqual`. Leave the expected argument blank with an empty string: + ```py + self.assertExpectedInline(some_func(), "") + ``` + + 2. Run your test. It should fail, and you get an error message about + accepting the output with `EXPECTTEST_ACCEPT=1` + + 3. Rerun the test with `EXPECTTEST_ACCEPT=1`. Now the previously blank string + literal will contain the expected value of the test. + ```py + self.assertExpectedInline(some_func(), "my_value") + ``` + +Some tips and tricks: + + - Often, you will want to expect test on a multiline string. This framework + understands triple-quoted strings, so you can just write `"""my_value"""` + and it will turn into triple-quoted strings. + + - Take some time thinking about how exactly you want to design the output + format of the expect test. It is often profitable to design an output + representation specifically for expect tests. + + +%package -n python3-expecttest +Summary: please add a summary manually as the author left a blank one +Provides: python-expecttest +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-expecttest +# expecttest [](https://badge.fury.io/py/expecttest) + +This library implements expect tests (also known as "golden" tests). Expect +tests are a method of writing tests where instead of hard-coding the expected +output of a test, you run the test to get the output, and the test framework +automatically populates the expected output. If the output of the test changes, +you can rerun the test with the environment variable `EXPECTTEST_ACCEPT=1` to +automatically update the expected output. + +Somewhat unusually, this library implements *inline* expect tests: that is to +say, the expected output isn't saved to an external file, it is saved directly +in the Python file (and we modify your Python file when updating the expect +test.) + +The general recipe for how to use this is as follows: + + 1. Write your test and use `assertExpectedInline()` instead of a normal + `assertEqual`. Leave the expected argument blank with an empty string: + ```py + self.assertExpectedInline(some_func(), "") + ``` + + 2. Run your test. It should fail, and you get an error message about + accepting the output with `EXPECTTEST_ACCEPT=1` + + 3. Rerun the test with `EXPECTTEST_ACCEPT=1`. Now the previously blank string + literal will contain the expected value of the test. + ```py + self.assertExpectedInline(some_func(), "my_value") + ``` + +Some tips and tricks: + + - Often, you will want to expect test on a multiline string. This framework + understands triple-quoted strings, so you can just write `"""my_value"""` + and it will turn into triple-quoted strings. + + - Take some time thinking about how exactly you want to design the output + format of the expect test. It is often profitable to design an output + representation specifically for expect tests. + + +%package help +Summary: Development documents and examples for expecttest +Provides: python3-expecttest-doc +%description help +# expecttest [](https://badge.fury.io/py/expecttest) + +This library implements expect tests (also known as "golden" tests). Expect +tests are a method of writing tests where instead of hard-coding the expected +output of a test, you run the test to get the output, and the test framework +automatically populates the expected output. If the output of the test changes, +you can rerun the test with the environment variable `EXPECTTEST_ACCEPT=1` to +automatically update the expected output. + +Somewhat unusually, this library implements *inline* expect tests: that is to +say, the expected output isn't saved to an external file, it is saved directly +in the Python file (and we modify your Python file when updating the expect +test.) + +The general recipe for how to use this is as follows: + + 1. Write your test and use `assertExpectedInline()` instead of a normal + `assertEqual`. Leave the expected argument blank with an empty string: + ```py + self.assertExpectedInline(some_func(), "") + ``` + + 2. Run your test. It should fail, and you get an error message about + accepting the output with `EXPECTTEST_ACCEPT=1` + + 3. Rerun the test with `EXPECTTEST_ACCEPT=1`. Now the previously blank string + literal will contain the expected value of the test. + ```py + self.assertExpectedInline(some_func(), "my_value") + ``` + +Some tips and tricks: + + - Often, you will want to expect test on a multiline string. This framework + understands triple-quoted strings, so you can just write `"""my_value"""` + and it will turn into triple-quoted strings. + + - Take some time thinking about how exactly you want to design the output + format of the expect test. It is often profitable to design an output + representation specifically for expect tests. + + +%prep +%autosetup -n expecttest-0.1.4 + +%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-expecttest -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon Apr 10 2023 Python_Bot <Python_Bot@openeuler.org> - 0.1.4-1 +- Package Spec generated @@ -0,0 +1 @@ +bb7cdd96762ece29bb20c011837415ba expecttest-0.1.4.tar.gz |
