} else {
$store = \ObjectCache::getInstance( $this->config->get( 'SessionCacheType' ) );
}
+ $this->logger->debug( 'SessionManager using store ' . get_class( $store ) );
$this->store = $store instanceof CachedBagOStuff ? $store : new CachedBagOStuff( $store );
register_shutdown_function( [ $this, 'shutdown' ] );
ini_set( 'session.use_trans_sid', 1 );
$store = new TestBagOStuff();
- $logger = new \TestLogger();
+ // Tolerate debug message, anything else is unexpected
+ $logger = new \TestLogger( false, function ( $m ) {
+ return preg_match( '/^SessionManager using store/', $m ) ? null : $m;
+ } );
$manager = new SessionManager( [
'store' => $store,
'logger' => $logger,
$expect = [ 'AuthenticationSessionTest' => $rand ];
session_write_close();
$this->assertSame( [
+ [ LogLevel::DEBUG, 'SessionManager using store MediaWiki\Session\TestBagOStuff' ],
[ LogLevel::WARNING, 'Something wrote to $_SESSION!' ],
], $logger->getBuffer() );
]
] );
$this->logger = new \TestLogger( false, function ( $m ) {
- return substr( $m, 0, 15 ) === 'SessionBackend ' ? null : $m;
+ return ( strpos( $m, 'SessionBackend ' ) === 0
+ || strpos( $m, 'SessionManager using store ' ) === 0
+ ) ? null : $m;
} );
$this->store = new TestBagOStuff();