aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/Actions/ActionImplementationTest.php5
-rw-r--r--tests/Actions/ListActionTest.php5
-rw-r--r--tests/BridgeFactoryTest.php30
-rw-r--r--tests/ConfigurationTest.php19
4 files changed, 52 insertions, 7 deletions
diff --git a/tests/Actions/ActionImplementationTest.php b/tests/Actions/ActionImplementationTest.php
index bf5dc4f9..e70dd7e2 100644
--- a/tests/Actions/ActionImplementationTest.php
+++ b/tests/Actions/ActionImplementationTest.php
@@ -10,6 +10,11 @@ class ActionImplementationTest extends TestCase
private $class;
private $obj;
+ public function setUp(): void
+ {
+ \Configuration::loadConfiguration();
+ }
+
/**
* @dataProvider dataActionsProvider
*/
diff --git a/tests/Actions/ListActionTest.php b/tests/Actions/ListActionTest.php
index 4373be76..e0625fb3 100644
--- a/tests/Actions/ListActionTest.php
+++ b/tests/Actions/ListActionTest.php
@@ -7,6 +7,11 @@ use PHPUnit\Framework\TestCase;
class ListActionTest extends TestCase
{
+ public function setUp(): void
+ {
+ \Configuration::loadConfiguration();
+ }
+
public function testHeaders()
{
$action = new \ListAction();
diff --git a/tests/BridgeFactoryTest.php b/tests/BridgeFactoryTest.php
new file mode 100644
index 00000000..a97711ef
--- /dev/null
+++ b/tests/BridgeFactoryTest.php
@@ -0,0 +1,30 @@
+<?php
+
+namespace RssBridge\Tests;
+
+use PHPUnit\Framework\TestCase;
+
+class BridgeFactoryTest extends TestCase
+{
+ public function setUp(): void
+ {
+ \Configuration::loadConfiguration();
+ }
+
+ public function testNormalizeBridgeName()
+ {
+ $this->assertSame('TwitterBridge', \BridgeFactory::normalizeBridgeName('TwitterBridge'));
+ $this->assertSame('TwitterBridge', \BridgeFactory::normalizeBridgeName('TwitterBridge.php'));
+ $this->assertSame('TwitterBridge', \BridgeFactory::normalizeBridgeName('Twitter'));
+ }
+
+ public function testSanitizeBridgeName()
+ {
+ $sut = new \BridgeFactory();
+
+ $this->assertSame('TwitterBridge', $sut->createBridgeClassName('twitterbridge'));
+ $this->assertSame('TwitterBridge', $sut->createBridgeClassName('twitter'));
+ $this->assertSame('TwitterBridge', $sut->createBridgeClassName('tWitTer'));
+ $this->assertSame('TwitterBridge', $sut->createBridgeClassName('TWITTERBRIDGE'));
+ }
+}
diff --git a/tests/ConfigurationTest.php b/tests/ConfigurationTest.php
index e913e463..4dcbfb8b 100644
--- a/tests/ConfigurationTest.php
+++ b/tests/ConfigurationTest.php
@@ -26,13 +26,18 @@ final class ConfigurationTest extends TestCase
public function testValueFromEnv()
{
- putenv('RSSBRIDGE_system_timezone=Europe/Berlin');
- putenv('RSSBRIDGE_TwitterV2Bridge_twitterv2apitoken=aaa');
- putenv('RSSBRIDGE_SQLiteCache_file=bbb');
- Configuration::loadConfiguration([], getenv());
+ $env = [
+ 'RSSBRIDGE_system_timezone' => 'Europe/Berlin',
+ 'RSSBRIDGE_SYSTEM_MESSAGE' => 'hello',
+ 'RSSBRIDGE_system_enabled_bridges' => 'TwitterBridge,GettrBridge',
+ 'RSSBRIDGE_system_enable_debug_mode' => 'true',
+ 'RSSBRIDGE_fileCache_path' => '/tmp/kek',
+ ];
+ Configuration::loadConfiguration([], $env);
$this->assertSame('Europe/Berlin', Configuration::getConfig('system', 'timezone'));
- $this->assertSame('aaa', Configuration::getConfig('TwitterV2Bridge', 'twitterv2apitoken'));
- $this->assertSame('bbb', Configuration::getConfig('SQLiteCache', 'file'));
- $this->assertSame('bbb', Configuration::getConfig('sqlitecache', 'file'));
+ $this->assertSame('hello', Configuration::getConfig('system', 'message'));
+ $this->assertSame(true, Configuration::getConfig('system', 'enable_debug_mode'));
+ $this->assertSame('/tmp/kek', Configuration::getConfig('FileCache', 'path'));
+ $this->assertSame(['TwitterBridge', 'GettrBridge'], Configuration::getConfig('system', 'enabled_bridges'));
}
}