rustyroad 1.8.7

Rusty Road is a framework written in Rust that is based on Ruby on Rails. It is designed to provide the familiar conventions and ease of use of Ruby on Rails, while also taking advantage of the performance and efficiency of Rust.
use super::super::*;

#[test]
fn reconversion_preserves_existing_cleanup() {
    let existing = "DROP TRIGGER IF EXISTS t ON s;\nDROP FUNCTION IF EXISTS keep_me();\nALTER TABLE leads DROP COLUMN IF EXISTS IF;";
    let sql = "CREATE TRIGGER t AFTER UPDATE ON s FOR EACH ROW EXECUTE FUNCTION f();";
    let generated = generate_down_sql(&parse_sql_operations(sql));
    let merged = preserve::merge_existing_down(generated, existing);
    assert!(
        merged.contains("DROP FUNCTION IF EXISTS keep_me();"),
        "{merged}"
    );
    assert_eq!(
        merged.matches("DROP TRIGGER IF EXISTS t ON s;").count(),
        1,
        "{merged}"
    );
    assert!(!merged.contains("EXISTS IF;"), "{merged}");
}