aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArtyom V. Poptsov <poptsov.artyom@gmail.com>2024-08-03 22:11:04 +0300
committerAndreas Enge <andreas@enge.fr>2024-08-22 12:09:22 +0200
commit4c194859f7c5956b03a4ccaa1c9ad22576c80c59 (patch)
tree17a2b6f2b9684fe00f17a4a13aaf03076d2b721b
parent9964fafffd440bd78152375b93661cc39152c1a2 (diff)
downloadguix-4c194859f7c5956b03a4ccaa1c9ad22576c80c59.tar.gz
guix-4c194859f7c5956b03a4ccaa1c9ad22576c80c59.zip
gnu: Add guile-web-driver-ng.
* gnu/packages/guile-xyz.scm (guile-web-driver-ng): New variable. Change-Id: I97f979ccbfe1d9f4e43b7f9a5730e092e36129a0 Signed-off-by: Andreas Enge <andreas@enge.fr>
-rw-r--r--gnu/packages/guile-xyz.scm44
1 files changed, 44 insertions, 0 deletions
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index b2ef31ebf7..aa76899c7d 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -4893,6 +4893,50 @@ as signed sessions, multipart message support, etc.")
(propagated-inputs
(list guile2.2-irregex guile2.2-gcrypt))))
+(define-public guile-web-driver-ng
+ (package
+ (name "guile-web-driver-ng")
+ (version "1.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/artyom-poptsov/guile-web-driver-ng")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0saljgf3kj3p9b1mk5211s8np2vwkzf072xp6j2xnc10vdn891ja"))))
+ (build-system gnu-build-system)
+ (native-inputs (list autoconf
+ automake
+ pkg-config
+ texinfo
+ ;; needed when cross-compiling.
+ guile-lib
+ guile-json-4
+ guile-gnutls
+ guile-3.0))
+ (propagated-inputs (list guile-json-4 guile-gnutls guile-lib guile-3.0
+ inetutils))
+ (arguments
+ (list
+ #:phases #~(modify-phases %standard-phases
+ (delete 'strip))))
+ (home-page "https://github.com/artyom-poptsov/guile-web-driver-ng")
+ (synopsis "Web driver (Selenium) client for Guile")
+ (description
+ "This is a web-driver, or Selenium 2, client. It's purpose is to automate
+browsers, specifically for automatic web server testing. Chrome or Firefox can be
+used as the automated browsers, or it can connect to arbitrary server providing
+webdriver interface. The client implements most of the WebDriver
+@url{https://www.w3.org/TR/webdriver2/, specification}.
+
+@code{guile-web-driver-ng} also provides a proxy implemented as a Guile module. If
+configured, the proxy can intercept and modify HTTP/HTTPS traffic (for example, add,
+delete and replace HTTP headers) which is useful for Selenium WebDriver as it does
+not provide a way to change the headers on its own.")
+ (license license:gpl3+)))
+
(define-public guile-lens
(let ((commit "14b15d07255f9d3f55d40a3b750d13c9ee3a154f")
(revision "0"))