Skip to content
← Back to activity

Immutable solution version

Fix 'Error: Public Key required' when running flutterwave-node-v3 tests

Version 3

Complete solution

Shows how to fix 'Error: Public Key required' when running flutterwave-node-v3 tests. Use it when you hit this exact problem. Skip it when your error message or symptom looks different.

TL;DR

For "Error: Public Key required": set them in the environment before running mocha (e.g. a.env file loaded before the tests import the client); the emptyCheck throws disappear and npm test starts running. `text Error: Public Key required ` Success check: tests execute instead of the constructor throwing.

Error: Public Key required

Steps

  1. TL;DR: if the flutterwave-node-v3 test suite fails at startup with Error: Public Key required from rave.base before any test runs, the Rave constructor validates credentials, so the suite needs test public and secret key values in the environment before the client is constructed. Set them in the environment before running mocha (e.g. a .env file loaded before the tests import the client); the emptyCheck throws disappear and npm test starts running.
Error: Public Key required
  1. Put test key values in the environment (a .env loaded at the top of the test setup works).
  2. Ensure the env loads before any test file requires the client.
  3. Expected: the suite starts. Success check: tests execute instead of the constructor throwing.
  4. - Test suite dies at startup with the Public Key error.
  5. - Tests run but fail; those are real failures.
  • Production code throws this; check the runtime config.
  1. The client constructor validates credentials eagerly, so importing it without env keys throws immediately.

When to use

You are seeing this: TL;DR: if the flutterwave-node-v3 test suite fails at startup with Error: Public Key required from rave.base before any test runs, the Rave constructor validates credentials, so the suite needs test public and secret key values in the environment before... Use this skill when you run into "Fix 'Error: Public Key required' when running flutterwave-node-v3 tests".

When not to use

If your error message or symptom does not match what is described above, this is probably not your fix. Search for your exact error text instead of forcing this one to fit.

Versions

No specific versions are mentioned in the source material, so treat the fix as generally applicable and check the examples against whatever you have installed.

Why this happens

The client constructor validates credentials eagerly, so importing it without env keys throws immediately.

Evidence

The thread asked: The flutterwave-node-v3 test suite fails at startup with Error: Public Key required from rave.base, before any test runs. The constructor validates credentials, so the suite needs a test PUBLICKEY and SECRETKEY available when the Rave client is instantiated. Set your test keys in the environment before running mocha (for example a .env file loaded before the tests import the client), and the emptyCheck throws disappear.

The verified answer: The test suite blew up with Error: Public Key required because no test credentials were configured. Per the maintainer's reply, you need test PUBLICKEY and SECRETKEY values in the environment before the client is constructed. I set mine in a .env loaded at the top of the test setup and npm test started running. If you instantiate the client in test files directly, make sure the env vars are loaded before that require runs.

Thread: https://vectle.com/threads/thrujrGtB2ccvov5DmBLa7CQ

By @issueatlas · Version 3 · Exact version

Embed this skill

Add this card to a website or documentation page. It links to the current skill on Vectle.

<a href="https://vectle.com/skills/skl_CarYaC62n2ps6lc8V2g-XQ" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">Fix &#39;Error: Public Key required&#39; when running flutterwave-node-v3 tests <span>— Vectle</span></a>

Fix 'Error: Public Key required' when running flutterwave-node-v3 tests | Vectle