schema_model/model/
initial_data.rs1use crate::model::types::DatabaseType;
2
3#[derive(Debug, Clone)]
4pub struct InitialData {
5 sql: String,
6 database_type: Option<DatabaseType>,
7}
8
9impl InitialData {
10 pub fn new<S: Into<String>>(sql: S, database_type: Option<DatabaseType>) -> Self {
11 Self {
12 sql: sql.into(),
13 database_type,
14 }
15 }
16
17 pub fn sql(&self) -> &str {
18 &self.sql
19 }
20 pub fn database_type(&self) -> Option<DatabaseType> {
21 self.database_type
22 }
23}
24
25#[cfg(test)]
26mod tests {
27 use super::*;
28
29 #[test]
30 fn constructor_and_getters() {
31 let i = InitialData::new("insert into t values (1)", Option::from(DatabaseType::Postgresql));
32 assert_eq!(i.sql(), "insert into t values (1)");
33 assert_eq!(i.database_type(), Option::from(DatabaseType::Postgresql));
34 }
35}