@@ -101,49 +101,51 @@ cfg_if::cfg_if! {
101
101
async fn establish_connection( ) -> AsyncMysqlConnection {
102
102
let mut connection = connection_no_data( ) . await ;
103
103
104
- diesel:: sql_query( "CREATE TABLE users (
104
+ diesel:: sql_query( "CREATE TABLE IF NOT EXISTS users (
105
105
id INTEGER PRIMARY KEY AUTO_INCREMENT,
106
106
name TEXT NOT NULL
107
107
) CHARACTER SET utf8mb4" ) . execute( & mut connection) . await . unwrap( ) ;
108
- diesel:: sql_query( "INSERT INTO users (name) VALUES ('Sean'), ('Tess')" ) . execute( & mut connection) . await . unwrap( ) ;
109
108
110
- diesel:: sql_query( "CREATE TABLE animals (
109
+
110
+ diesel:: sql_query( "CREATE TABLE IF NOT EXISTS animals (
111
111
id INTEGER PRIMARY KEY AUTO_INCREMENT,
112
112
species TEXT NOT NULL,
113
113
legs INTEGER NOT NULL,
114
114
name TEXT
115
115
) CHARACTER SET utf8mb4" ) . execute( & mut connection) . await . unwrap( ) ;
116
- diesel:: sql_query( "INSERT INTO animals (species, legs, name) VALUES
117
- ('dog', 4, 'Jack'),
118
- ('spider', 8, null)" ) . execute( & mut connection) . await . unwrap( ) ;
119
116
120
- diesel:: sql_query( "CREATE TABLE posts (
117
+ diesel:: sql_query( "CREATE TABLE IF NOT EXISTS posts (
121
118
id INTEGER PRIMARY KEY AUTO_INCREMENT,
122
119
user_id INTEGER NOT NULL,
123
120
title TEXT NOT NULL
124
121
) CHARACTER SET utf8mb4" ) . execute( & mut connection) . await . unwrap( ) ;
125
- diesel:: sql_query( "INSERT INTO posts (user_id, title) VALUES
126
- (1, 'My first post'),
127
- (1, 'About Rust'),
128
- (2, 'My first post too')" ) . execute( & mut connection) . await . unwrap( ) ;
129
122
130
- diesel:: sql_query( "CREATE TABLE comments (
123
+ diesel:: sql_query( "CREATE TABLE IF NOT EXISTS comments (
131
124
id INTEGER PRIMARY KEY AUTO_INCREMENT,
132
125
post_id INTEGER NOT NULL,
133
126
body TEXT NOT NULL
134
127
) CHARACTER SET utf8mb4" ) . execute( & mut connection) . await . unwrap( ) ;
135
- diesel:: sql_query( "INSERT INTO comments (post_id, body) VALUES
136
- (1, 'Great post'),
137
- (2, 'Yay! I am learning Rust'),
138
- (3, 'I enjoyed your post')" ) . execute( & mut connection) . await . unwrap( ) ;
139
-
140
- diesel:: sql_query( "CREATE TABLE brands (
128
+ diesel:: sql_query( "CREATE TABLE IF NOT EXISTS brands (
141
129
id INTEGER PRIMARY KEY AUTO_INCREMENT,
142
130
color VARCHAR(255) NOT NULL DEFAULT 'Green',
143
131
accent VARCHAR(255) DEFAULT 'Blue'
144
132
)" ) . execute( & mut connection) . await . unwrap( ) ;
145
133
146
134
connection. begin_test_transaction( ) . await . unwrap( ) ;
135
+ diesel:: sql_query( "INSERT INTO users (name) VALUES ('Sean'), ('Tess')" ) . execute( & mut connection) . await . unwrap( ) ;
136
+ diesel:: sql_query( "INSERT INTO posts (user_id, title) VALUES
137
+ (1, 'My first post'),
138
+ (1, 'About Rust'),
139
+ (2, 'My first post too')" ) . execute( & mut connection) . await . unwrap( ) ;
140
+ diesel:: sql_query( "INSERT INTO comments (post_id, body) VALUES
141
+ (1, 'Great post'),
142
+ (2, 'Yay! I am learning Rust'),
143
+ (3, 'I enjoyed your post')" ) . execute( & mut connection) . await . unwrap( ) ;
144
+ diesel:: sql_query( "INSERT INTO animals (species, legs, name) VALUES
145
+ ('dog', 4, 'Jack'),
146
+ ('spider', 8, null)" ) . execute( & mut connection) . await . unwrap( ) ;
147
+
148
+
147
149
connection
148
150
}
149
151
} else {
0 commit comments