emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/buttercup bcd2d96ee2 1/6: docs(exec): Document use with Ea


From: ELPA Syncer
Subject: [nongnu] elpa/buttercup bcd2d96ee2 1/6: docs(exec): Document use with Eask
Date: Thu, 9 Mar 2023 18:00:42 -0500 (EST)

branch: elpa/buttercup
commit bcd2d96ee27cc2ba4a10946f43b8bd998f392ca3
Author: jcs090218 <jcs090218@gmail.com>
Commit: jcs090218 <jcs090218@gmail.com>

    docs(exec): Document use with Eask
---
 docs/running-tests.md | 111 +++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 110 insertions(+), 1 deletion(-)

diff --git a/docs/running-tests.md b/docs/running-tests.md
index 4ce580d606..452e0b1d76 100644
--- a/docs/running-tests.md
+++ b/docs/running-tests.md
@@ -165,9 +165,110 @@ $ eldev test -f main.el
 For more information, please see tool’s own documentation, especially
 [the section about testing](https://github.com/doublep/eldev#testing).
 
+## Eask
+> 📢 Eask is very similar to Cask; anything that applies to Cask will apply to 
Eask
+
+[Eask](https://github.com/emacs-eask/cli) is a replacement for Cask which is
+actively maintained.
+
+### Project Directory Layout
+
+> 📢 The project directory layout is similar to the Cask's one. But instead of
+> `Cask`-file, you should have `Eask`-file as a replacement.
+
+A basic project layout requires a project file, called `feature.el`
+here, an `Eask`-file to define dependencies, and a `tests/` directory
+for tests. It should look roughly like this:
+
+```
+feature/feature.el
+        Eask
+        tests/test-feature.el
+```
+
+**feature.el**
+
+```Emacs-Lisp
+(defun featurize (bug feature)
+  (format "It's not a %s, it's a %s" bug feature))
+
+(provide 'feature)
+```
+
+**Eask-file**
+
+```elisp
+(source 'gnu)
+(source 'melpa-stable)
+
+(development
+ (depends-on "buttercup"))
+```
+
+**tests/test-feature.el**
+
+```elisp
+(require 'feature)
+
+(describe "The feature"
+  (it "can use bug and feature"
+    (expect (featurize "bug" "feature")
+            :to-equal
+            "It's not a bug, it's a feature")))
+```
+
+### Running Tests
+
+You can now use Eask to run your tests.
+
+First, you have to install the dependencies. You only have to do this once, or 
+when the dependencies change:
+
+```
+$ eask install-deps --dev
+...
+
+Installing 1 development dependency...
+Loading package information... done
+  - Installing buttercup (20230119.2337)... done
+(Total of 1 dependency installed, 0 skipped)
+```
+
+Now, you can run your tests:
+
+```
+$ eask exec buttercup -L .
+...
+
+Running 1 specs.
+
+The feature
+  can use bug and feature
+
+Ran 1 specs, 0 failed, in 0.0 seconds.
+```
+
+That’s it. Buttercup’s built-in discover test runner looks for files
+named `test-*.el`, `*-test.el` or `*-tests.el`.
+
+Use the `--pattern PATTERN` option to only Only run tests with names
+matching PATTERN. The `--pattern` option can be used multiple times,
+in which case tests will be run if they match any of the given
+patterns. Combine with the `--no-skip` option to filter out the
+skipped tests.
+
+You can run this command whichever way you like. Common choices
+include a makefile or shell scripts.
+
+See [relevant documentation](https://emacs-eask.github.io/) on Eask's own page
+for more information.
+
 ## Projectile
 
-If you use [Projectile](https://github.com/bbatsov/projectile) for interacting 
with your projects you can set the "default" project test command to be 
available when you invoke `projectile-test-project`.  Create a `.dir-locals.el` 
file in the the root of your project tree (next to your Cask file).  An example:
+If you use [Projectile](https://github.com/bbatsov/projectile) for interacting
+with your projects you can set the "default" project test command to be
+available when you invoke `projectile-test-project`.  Create a `.dir-locals.el`
+file in the the root of your project tree (next to your Cask file).  An 
example:
 
 **.dir-locals.el**
 
@@ -184,6 +285,8 @@ testing command on its own, so you don’t need any special 
steps.
 
 ## Travis
 
+### Cask
+
 If your project is hosted on github, you can use
 [Travis CI](https://travis-ci.org/) as your continuous integration
 environment. Buttercup can easily be used in such a setup. Simply add
@@ -211,6 +314,8 @@ Most of the complexity here is from installing
 [EVM](https://github.com/rejeep/evm) and Cask to be able to test your
 project using different Emacs versions.
 
+### Eldev
+
 For Eldev, use the following `.travis.yml` file:
 
 ````
@@ -230,3 +335,7 @@ script:
 ````
 
 For details, see [tool’s own 
documentation](https://github.com/doublep/eldev#continuous-integration).
+
+### Eask
+
+For Eask, please see [tool's 
documentation](https://emacs-eask.github.io/Continuous-Integration/Travis-CI/).



reply via email to

[Prev in Thread] Current Thread [Next in Thread]