Dotclear

Changeset 2984:b81d45a0e150


Ignore:
Timestamp:
03/31/15 15:53:36 (9 years ago)
Author:
Nicolas <nikrou77@…>
Branch:
default
Message:

Behat - add a new configuration key in behat.yml file : user_id_to_not_delete
So you can use an existing dotclear installation and not delete superadmin user

Use cookie session name provide in dotclear configuration file

Files:
5 edited

Legend:

Unmodified
Added
Removed
  • behat.yml.dist

    r2931 r2984  
    44      base_url: http://localhost:1080 
    55 
     6      # relative or absolute path to dotclear config file 
    67      config_file: inc/config.php 
     8 
     9      # if you want to not delete a user, uncomment following line and change user_id to appropriate one. 
     10      # user_id_to_not_delete: admin 
     11 
    712      sql_init_file: features/sql/db_init.sql 
    813      sql_cleanup_file: features/sql/db_cleanup.sql 
  • features/bootstrap/DbContext.php

    r2931 r2984  
    2222    private static $conf_loaded = false; 
    2323    private static $con = null; 
     24    private static $session_name = null; 
    2425    public static $prefix = 'dc_'; 
    2526 
    2627    public function __construct($parameters) { 
    2728        $this->parameters = $parameters; 
     29    } 
     30 
     31    public function getSessionName($parameters) { 
     32        if (!self::$conf_loaded) { 
     33            self::getConnection($parameters); 
     34        } 
     35 
     36        return self::$session_name; 
    2837    } 
    2938 
     
    7079            throw new Exception(sprintf('sql cleanup file %s does not exist or not readable', $parameters['sql_cleanup_file'])); 
    7180        } 
    72         self::executeSqlFile($parameters['sql_cleanup_file']); 
     81        if (!empty($parameters['user_id_to_not_delete'])) { 
     82            $replace_user_id  = $parameters['user_id_to_not_delete']; 
     83        } else { 
     84            $replace_user_id = null; 
     85        } 
     86        self::executeSqlFile($parameters['sql_cleanup_file'], $replace_user_id); 
    7387   } 
    7488 
     
    100114            self::$conf_loaded = true; 
    101115            self::$prefix = DC_DBPREFIX; 
     116            self::$session_name = DC_SESSION_NAME; 
    102117 
    103118            self::$con = \dbLayer::init(DC_DBDRIVER,DC_DBHOST,DC_DBNAME,DC_DBUSER,DC_DBPASSWORD,DC_DBPERSIST); 
     
    105120    } 
    106121 
    107     private static function executeSqlFile($file) { 
     122    private static function executeSqlFile($file, $replace_user_id=null) { 
    108123        $queries = file($file); 
     124        if ($replace_user_id) { 
     125            $queries = str_replace('__USER_ID__', $replace_user_id, $queries); 
     126        } 
    109127        if (!empty($queries)) { 
    110128            try { 
  • features/bootstrap/FeatureContext.php

    r2931 r2984  
    4848     */ 
    4949    public function iAmLoggedInAsWithPasswordWithRememberMe($username, $password) { 
     50        $session_name = $this->getSubcontext('db')->getSessionName($this->parameters); 
     51 
    5052        $this->iAmLoggedInAsWithPassword($username, $password, true); 
    51         $this->getMink()->assertSession()->cookieExists('dcxd'); // @TODO : retrieve cookie name from config 
     53        $this->getMink()->assertSession()->cookieExists($session_name); 
    5254        $this->getMink()->assertSession()->cookieExists('dc_admin'); 
    5355    } 
  • features/bootstrap/autoload.php

    r2931 r2984  
    1414 
    1515require_once __DIR__.'/../../vendor/autoload.php'; 
    16  
    17 include_once '/var/projets/common/Log.php'; 
    1816 
    1917$__autoload = array(); 
  • features/sql/db_cleanup.sql

    r2931 r2984  
    1 DELETE FROM dc_user; 
     1DELETE FROM dc_user WHERE user_id != '__USER_ID__'; 
Note: See TracChangeset for help on using the changeset viewer.

Sites map