pg_spec_helper 1.9.2 → 1.9.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f961a6b7a9074ea8c300e1a1ebe2214803f471447041831880c288f8f9124ba0
4
- data.tar.gz: ae3dd1a3af18f3d0453ce3340884d1b2194c2903c35c105fa7830fa257215911
3
+ metadata.gz: 367f0f6859cbc842f1409017730179f8421def4685361ce152167e7f0a2a957c
4
+ data.tar.gz: d5db47986d366d99c213a7e73fd04cb3dbb1e99599d9dc415495939be4553291
5
5
  SHA512:
6
- metadata.gz: 77e9df5f514da0c15b122b70df99bf577c764f01ffc5a2a812c9c474a19528d5047a9329c4a8800833637cec7e28924333d1532df1e8547eaa8afefffde8c93e
7
- data.tar.gz: b9fef3126817ff75c269c9f9b9620d60a762875409a6dd898c1750b25c8390a7b66011b7ae40f24e440e22d798005ad3b490fe4e51e1cc88c75d380072c15cac
6
+ metadata.gz: fdad9cd1827b9fe6e5ad09a90f302fabd0e059661c25fb10f80ab22aa91d67d294fb83f8b752192dea100b5c11913233aa190847cbc956606cca95ef26e7fa02
7
+ data.tar.gz: b44a9adba9b17a282e796d4462d82f3353bd94defbcaf291669d67deeb4025072cde08ca1b79470f57c93e9402944708cdec63d7e46f0e3138a0817d710e2a00
data/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.9.3](https://github.com/craigulliott/pg_spec_helper/compare/v1.9.2...v1.9.3) (2023-08-23)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * deleting enums and triggers instead of removing the public schema, because it may have materialized views in it ([34a8afa](https://github.com/craigulliott/pg_spec_helper/commit/34a8afae9cca995ba8950d7d54ad377869901c19))
9
+
3
10
  ## [1.9.2](https://github.com/craigulliott/pg_spec_helper/compare/v1.9.1...v1.9.2) (2023-08-23)
4
11
 
5
12
 
@@ -28,5 +28,14 @@ class PGSpecHelper
28
28
  SQL
29
29
  rows.map { |row| row["enum_name"].to_sym }
30
30
  end
31
+
32
+ # delete all enums in the provided schema
33
+ def delete_enums schema_name
34
+ get_enum_names(schema_name).each do |enum_name|
35
+ connection.exec(<<~SQL)
36
+ DROP TYPE #{schema_name}.#{enum_name};
37
+ SQL
38
+ end
39
+ end
31
40
  end
32
41
  end
@@ -23,5 +23,14 @@ class PGSpecHelper
23
23
  SQL
24
24
  rows.map { |r| r["routine_name"].to_sym }
25
25
  end
26
+
27
+ # delete all functions in the provided schema
28
+ def delete_functions schema_name
29
+ get_function_names(schema_name).each do |function_name|
30
+ connection.exec(<<~SQL)
31
+ DROP FUNCTION #{schema_name}.#{function_name};
32
+ SQL
33
+ end
34
+ end
26
35
  end
27
36
  end
@@ -26,8 +26,8 @@ class PGSpecHelper
26
26
 
27
27
  # delete all schemas in the database
28
28
  def delete_all_schemas
29
- # delete all schemas including public
30
- get_schema_names.each do |schema_name|
29
+ # delete all schemas except public
30
+ get_schema_names.reject { |schema_name| schema_name == :public }.each do |schema_name|
31
31
  connection.exec(<<~SQL)
32
32
  -- temporarily set the client_min_messages to WARNING to
33
33
  -- suppress the NOTICE messages about cascading deletes
@@ -36,8 +36,8 @@ class PGSpecHelper
36
36
  SET client_min_messages TO NOTICE;
37
37
  SQL
38
38
  end
39
- # recreate the public schema
40
- create_schema :public
39
+ # delete all the tables, functions and enums from within the public schema
40
+ delete_tables :public
41
41
  end
42
42
 
43
43
  def schema_exists? schema_name
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class PGSpecHelper
4
- VERSION = "1.9.2"
4
+ VERSION = "1.9.3"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pg_spec_helper
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.9.2
4
+ version: 1.9.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Craig Ulliott