postspec 0.5.0 → 0.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 851d0b52a25e0968254628ce9785b391dd6f0b5cf5546c4b24b09734f789fd54
4
- data.tar.gz: 5f019586c60733abde0a671d20a866542ce883f8e9f31ccc453326811eeeef21
3
+ metadata.gz: 1a391625a2f772e728fcc9c7eb0626e47a5cdacb43e770afe239da3cac393606
4
+ data.tar.gz: efc3dd134049aff64eb4f459e22a74ecdae6e8333123baa5433444275e1cdde7
5
5
  SHA512:
6
- metadata.gz: 4972c39311dac7dbbf04251ff9a74748575aa1b3c5ac8b60bd5191fa0bb94bdadf9df3bf7cee7cea39defdb708a39c28021a65c17098fdea8ad5ed25212e9aec
7
- data.tar.gz: b7165889d439611d2427f63cb4b2f36266188f7f0a7f676b045eb43276c7159d06171323548aa67dbd4c5787f345b8e24e6368690c5ce563b7c551de87375cbe
6
+ metadata.gz: ac0f2dc6771a9f3949ae02448d6c399f8387647f35fce871543eba99c803a71a6edfdc2ba4fc4c473f3f8837b120f64e152a989fc0e436de6b9995d7409c00d2
7
+ data.tar.gz: d78238c6edff5869caf9cbba9d4ce34329f1e3fe49dfba31431951092af8df06bc26e164e7372c72c5cd00a14d0dbb612abd980109e288f6b23e47ecdd3cfb63
@@ -84,7 +84,8 @@ module Postspec
84
84
  attr_reader :data
85
85
  alias_method :sql, :push_sql
86
86
 
87
- # Note FoxFrame::new computes the fox object
87
+ # Note FoxFrame::new computes the fox object. It has four arguments instead
88
+ # of the five below
88
89
  def initialize(parent, search_path, fox, data, push_sql)
89
90
  @fox = fox
90
91
  @data = data
@@ -52,12 +52,9 @@ module Postspec
52
52
  end
53
53
 
54
54
  def drop_seed_triggers
55
- p "DROP"
56
55
  postspec.tables.map { |uid|
57
- p "BING"
58
56
  [SEED_BUD_TRIGGER_NAME, SEED_BT_TRIGGER_NAME].map { |trigger|
59
57
  trigger_uid = "#{uid}.#{trigger}()"
60
- p trigger_uid
61
58
  postspec.meta.exist?(trigger_uid) ? "drop trigger #{trigger} on #{uid}" : nil
62
59
  }.compact
63
60
  }.flatten
@@ -76,13 +73,13 @@ module Postspec
76
73
  create trigger #{SEED_BUD_TRIGGER_NAME}
77
74
  before update or delete on #{uid}
78
75
  for each row
79
- when (old.id <= #{id})
76
+ when (OLD.id <= #{id})
80
77
  execute function postspec.readonly_failure('#{uid}')
81
78
  EOS1
82
79
  bt_sql = <<~EOS2
83
80
  create trigger postspec_readonly_bt_trg
84
81
  before truncate on #{uid}
85
- execute function postspec.readonly_failure('#{uid}')
82
+ execute function postspec.truncate_failure('#{uid}')
86
83
  EOS2
87
84
  [
88
85
  bud_sql.chomp,
@@ -1,3 +1,3 @@
1
1
  module Postspec
2
- VERSION = "0.5.0"
2
+ VERSION = "0.5.1"
3
3
  end
@@ -55,6 +55,13 @@ create or replace function readonly_failure() returns trigger as $$
55
55
  end;
56
56
  $$ language plpgsql immutable leakproof;
57
57
 
58
+ create or replace function truncate_failure() returns trigger as $$
59
+ begin
60
+ raise 'Postspec: Can''t modify truncate %.%', TG_TABLE_SCHEMA, TG_TABLE_NAME;
61
+ return null;
62
+ end;
63
+ $$ language plpgsql immutable leakproof;
64
+
58
65
  -- :call-seq:
59
66
  -- register_insert(record_id)
60
67
  --
@@ -11,8 +11,8 @@ describe "'use' performance" do
11
11
  describe "timing..." do
12
12
  t0 = nil
13
13
 
14
- before(:all) {
15
- t0 = Time.now
14
+ before(:all) {
15
+ t0 = Time.now
16
16
  }
17
17
 
18
18
  after(:all) {
@@ -47,8 +47,8 @@ describe "'statement with #db' performance" do
47
47
 
48
48
  describe "timing..." do
49
49
 
50
- before(:all) {
51
- t0 = Time.now
50
+ before(:all) {
51
+ t0 = Time.now
52
52
  }
53
53
 
54
54
  after(:all) {
@@ -84,8 +84,8 @@ describe "'statement with #data' performance" do
84
84
 
85
85
  describe "timing..." do
86
86
 
87
- before(:all) {
88
- t0 = Time.now
87
+ before(:all) {
88
+ t0 = Time.now
89
89
  }
90
90
 
91
91
  after(:all) {
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: postspec
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Claus Rasmussen
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-11-20 00:00:00.000000000 Z
11
+ date: 2025-01-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: dry-inflector