[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-wallet-core] branch master updated: asset loading for integration
From: |
gnunet |
Subject: |
[taler-wallet-core] branch master updated: asset loading for integration tests |
Date: |
Mon, 10 May 2021 15:32:22 +0200 |
This is an automated email from the git hooks/post-receive script.
dold pushed a commit to branch master
in repository wallet-core.
The following commit(s) were added to refs/heads/master by this push:
new 8dc5384b asset loading for integration tests
8dc5384b is described below
commit 8dc5384bdcb42069e6d2f35fd3f1878afd728766
Author: Florian Dold <florian@dold.me>
AuthorDate: Mon May 10 15:32:11 2021 +0200
asset loading for integration tests
---
packages/taler-wallet-cli/assets/.gitkeep | 0
packages/taler-wallet-cli/src/assets.ts | 50 +++++++++++++++++++++++++++++++
2 files changed, 50 insertions(+)
diff --git a/packages/taler-wallet-cli/assets/.gitkeep
b/packages/taler-wallet-cli/assets/.gitkeep
new file mode 100644
index 00000000..e69de29b
diff --git a/packages/taler-wallet-cli/src/assets.ts
b/packages/taler-wallet-cli/src/assets.ts
new file mode 100644
index 00000000..465ee7e8
--- /dev/null
+++ b/packages/taler-wallet-cli/src/assets.ts
@@ -0,0 +1,50 @@
+/*
+ This file is part of GNU Taler
+ (C) 2021 Taler Systems S.A.
+
+ GNU Taler is free software; you can redistribute it and/or modify it under the
+ terms of the GNU General Public License as published by the Free Software
+ Foundation; either version 3, or (at your option) any later version.
+
+ GNU Taler is distributed in the hope that it will be useful, but WITHOUT ANY
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ A PARTICULAR PURPOSE. See the GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along with
+ GNU Taler; see the file COPYING. If not, see <http://www.gnu.org/licenses/>
+ */
+
+/**
+ * Imports.
+ */
+import path from "path";
+import fs from "fs";
+
+/**
+ * Resolve an asset name into an absolute filename.
+ *
+ * The asset file should be placed in the "assets" directory
+ * at the top level of the package (i.e. next to package.json).
+ */
+export function resolveAsset(name: string): string | null {
+ const n = __filename;
+ const d = __dirname;
+ let assetPath: string;
+ // Currently both asset paths are the same.
+ // This might change if the file that contains "resolveAsset"
+ // ever moves. Thus, we're keeping the case distinction.
+ if (n.endsWith("assets.js")) {
+ // We're not bundled. Path is relative to the current file.
+ assetPath = path.resolve(path.join(d, "..", "assets", name));
+ } else if (n.endsWith("taler-wallet-cli.js")) {
+ // We're bundled. Currently, this path is the same
+ // FIXME: Take into account some ASSETS environment variable?
+ assetPath = path.resolve(path.join(d, "..", "assets", name));
+ } else {
+ throw Error("Can't resolve asset (unknown )");
+ }
+ if (!fs.existsSync(assetPath)) {
+ throw Error(`Asset '${name} not found'`);
+ }
+ return assetPath;
+}
\ No newline at end of file
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [taler-wallet-core] branch master updated: asset loading for integration tests,
gnunet <=