Dashboard > GreenPepperOpen > ... > Developer Examples > Database
  GreenPepperOpen Log In View a printable version of the current page.  
  Database
Added by Francois Denommee, last edited by Francois Denommee on Jan 28, 2010  (view change)
Labels: 
(None)

This list of specifications are taken from the dbfit project. It demonstrate the GreenPepper Extensions Db (based on early work of dbfit for GreenPepper) using a MySql database.

Here is the System Under Test information use for those examples :

Using a Java Runner
Fixture factory: org.dbfit.greenpepper.DatabaseSystemUnderDevelopment
Fixture factory args: None
Project dependency descriptor: None
System under test Classpaths greenpepper-extensions-db-2.7m3-SNAPSHOT-complete.jar
  mysql-connector-java-5.1.6.jar
Using the Maven Runner

You will need to configure a Maven Runner with Confluence or XWiki

Fixture factory: org.dbfit.greenpepper.DatabaseSystemUnderDevelopment
Fixture factory args: None
Project dependency descriptor: /path/to/the/pom.xml
System under test Classpaths None

The pom.xml use for those examples :

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <name>GreenPepper Extensions Db for Maven Runner</name>
    <groupId>greenpepper-open</groupId>
    <artifactId>greenpepper-extensions-db</artifactId>
    <version>2.7m3-SNAPSHOT</version>

    <dependencies>
        <!-- GreenPepper Extensions Db -->
        <dependency>
            <groupId>greenpepper-open</groupId>
            <artifactId>greenpepper-extensions-db</artifactId>
            <version>${project.version}</version>
            <classifier>complete</classifier>
        </dependency>

        <!-- JDBC Driver (MySql) -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.6</version>
            <scope>runtime</scope>
        </dependency>

        <!-- Other project dependencies (commons-logging just as example!) -->
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.1.1</version>
        </dependency>
    </dependencies>
</project>

And the SQL to prepare the database :

create table users(name varchar(50) unique, username varchar(50), userid int auto_increment primary key) type=InnoDB;

CREATE PROCEDURE ConcatenateStrings (IN firststring varchar(100), IN secondstring varchar(100), OUT concatenated varchar(200)) set concatenated = concat(firststring , concat( ' ' , secondstring ));

create procedure CalcLength(IN name varchar(100), OUT strlength int) set strlength =length(name);

CREATE FUNCTION ConcatenateF (firststring VARCHAR(100), secondstring varchar(100)) RETURNS VARCHAR(200) RETURN CONCAT(firststring,' ',secondstring);

create procedure makeuser() insert into users (name,username) values ('user1','fromproc');

create procedure createuser(IN newname varchar(100), IN newusername varchar(100)) insert into users (name,username) values (newname, newusername);

create procedure Multiply(IN factor int, INOUT val int) set val =val*factor;

grant select on mysql.* to dbgreenpepper;

Begin Info
GreenPepper Execution Macros  
For First level Children of  [ Database ] on  GPO Space  
( Member of Group: PAGE )
1. Basic Query on  GPO Space For   [ Extensions - Db ]
2. Basic Query on  GPO Space For   [ Extensions - Db - Maven ]
3. Executing statements on  GPO Space For   [ Extensions - Db ]
4. Executing statements on  GPO Space For   [ Extensions - Db - Maven ]
5. Inserting records on  GPO Space For   [ Extensions - Db ]
6. Inserting records on  GPO Space For   [ Extensions - Db - Maven ]
7. Insert with returning on  GPO Space For   [ Extensions - Db ]
8. Insert with returning on  GPO Space For   [ Extensions - Db - Maven ]
9. Null values on  GPO Space For   [ Extensions - Db ]
10. Null values on  GPO Space For   [ Extensions - Db - Maven ]
11. Parameters as bind variables on  GPO Space For   [ Extensions - Db ]
12. Parameters as bind variables on  GPO Space For   [ Extensions - Db - Maven ]
13. Query order is irrelevant on  GPO Space For   [ Extensions - Db ]
14. Query order is irrelevant on  GPO Space For   [ Extensions - Db - Maven ]
15. Literal processing of arguments on  GPO Space For   [ Extensions - Db ]
16. Literal processing of arguments on  GPO Space For   [ Extensions - Db - Maven ]
17. Stored procedures and functions on  GPO Space For   [ Extensions - Db ]
18. Stored procedures and functions on  GPO Space For   [ Extensions - Db - Maven ]
End Info
Basic Query (GreenPepperOpen)
database-connection (GreenPepperOpen)
Executing statements (GreenPepperOpen)
Insert with returning (GreenPepperOpen)
Inserting records (GreenPepperOpen)
Literal processing of arguments (GreenPepperOpen)
Null values (GreenPepperOpen)
Parameters as bind variables (GreenPepperOpen)
Query order is irrelevant (GreenPepperOpen)
Stored procedures and functions (GreenPepperOpen)

DEMONSTRATION LICENSE - This Confluence site is for demonstration purposes only. Evaluate Confluence today.
Powered by Atlassian Confluence, the Enterprise Wiki. (Version: 2.4.3 Build:#705 Mar 21, 2007) - Bug/feature request - Contact Administrators