File ghc-tasty-rerun.spec of Package ghc-tasty-rerun
#
# spec file for package ghc-tasty-rerun
#
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%global pkg_name tasty-rerun
Name: ghc-%{pkg_name}
Version: 1.1.6
Release: 0
Summary: Run tests by filtering the test tree depending on the result of previous test runs
License: BSD-3-Clause
Group: System/Libraries
Url: https://hackage.haskell.org/package/%{pkg_name}
Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-containers-devel
BuildRequires: ghc-mtl-devel
BuildRequires: ghc-optparse-applicative-devel
BuildRequires: ghc-reducers-devel
BuildRequires: ghc-rpm-macros
BuildRequires: ghc-split-devel
BuildRequires: ghc-stm-devel
BuildRequires: ghc-tagged-devel
BuildRequires: ghc-tasty-devel
BuildRequires: ghc-transformers-devel
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
This ingredient adds the ability to run tests by first filtering the test tree
based on the result of a previous test run. For example, you can use this to
run only those tests that failed in the last run, or to run only tests that
have been added since tests were last ran.
This ingredient is specifically an ingredient *transformer* - given a list of
'Tasty.Ingredient's, 'rerunningTests' adds the ability for all of these
ingredients to run against a filtered test tree. This transformer can be
applied as follows:
> import Test.Tasty > import Test.Tasty.Runners > > main :: IO () > main = >
defaultMainWithIngredients > [ rerunningTests [ listingTests,
consoleTestReporter ] ] > tests > > tests :: TestTree > tests = undefined
This ingredient adds three command line parameters:
['--rerun-update'] If specified the results of this test run will be saved to
the log file at '--rerun-log-file'. If the ingredient does not execute tests
(for example, '--list-tests' is used) then the log file will not be updated.
This option is not enabled by default. This option does not require a value.
['--rerun-log-file'] The path to the log file to read previous test information
from, and where to write new information to (if '--rerun-update' is specified).
This option defaults to '.tasty-rerun-log'.
['--rerun-filter'] Which filters to apply to the 'Tasty.TestTree' based on
previous test runs. The value of this option is a comma separated list of the
following options:
* 'failures': Only run tests that failed on the previous run.
* 'exceptions': Only run tests that threw an exception on the previous run.
* 'new': Only run tests that are new since the previous test run.
* 'successful': Only run tests that were successful in the previous run.
Multiple options can be combined and will be taken under disjunction - so
'--rerun-filter=failures,exceptions' will run only tests that failed *or* threw
an exception on the last run.
Defaults to all filters, which means all tests will be ran.
%package devel
Summary: Haskell %{pkg_name} library development files
Group: Development/Libraries/Other
Requires: %{name} = %{version}-%{release}
Requires: ghc-compiler = %{ghc_version}
Requires(post): ghc-compiler = %{ghc_version}
Requires(postun): ghc-compiler = %{ghc_version}
%description devel
This package provides the Haskell %{pkg_name} library development files.
%prep
%setup -q -n %{pkg_name}-%{version}
%build
%ghc_lib_build
%install
%ghc_lib_install
%post devel
%ghc_pkg_recache
%postun devel
%ghc_pkg_recache
%files -f %{name}.files
%defattr(-,root,root,-)
%doc LICENSE
%files devel -f %{name}-devel.files
%defattr(-,root,root,-)
%doc Changelog.md
%changelog