interactor 3.1.1 → 3.1.2

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: 46223de1a4e39c98aa604fcfc35f3c68bf27112ddb92c38b19dcd660ea35cb23
4
- data.tar.gz: dced8f4dbc38e443cf11009bce3728a5268aeca3dba204a96c04e99a30f6cea1
3
+ metadata.gz: b48d761eab051c7af366fc9acea6c7f12eef998b9d6c3f4609ee79cee5af0d47
4
+ data.tar.gz: 2c49804ece79adb02a67683c43b09d4b45088f1face4bd0e718cd4dd5e199e1e
5
5
  SHA512:
6
- metadata.gz: a817f4a3c31553afd48ad04f2315abb640351bb629ea813d361212cd2d43c9b7b6af9d185614ef03c1f136649f33235fd3f7574ac5ebf992f7e681512e368337
7
- data.tar.gz: 2a871976402baea2a0de705130d17216c9b7fa8438cdb7550829ba31e9fa7b06bc79e8d11b38712dcaa11eb9d6a4ad8eeefc44d06e6b2120860ac4e45ba59c8f
6
+ metadata.gz: bbe98a8f487d0df28c7255a8c119870cbc48a462bf8c7a5ff4cf2d00902694c5335da8b395f11be96bea41a86f1a956430efb9f4415407e74de896d54b9a9c95
7
+ data.tar.gz: b8d62604da02238a248cf93069755557300ce54b9a9a30b76b3ae914a0c4de3cd8aa1300041bc0e10c845738302ccf5643f5978b9f98ca25c6e4a37639dbaf15
@@ -0,0 +1,4 @@
1
+ ruby_version: 2.3.0
2
+ ignore:
3
+ - 'spec/**/*':
4
+ - Lint/AmbiguousBlockAssociation
@@ -31,5 +31,7 @@ rvm:
31
31
  - "2.3"
32
32
  - "2.4"
33
33
  - "2.5"
34
+ - "2.6"
35
+ - "2.7"
34
36
  - ruby-head
35
- script: bundle exec rspec
37
+ script: bundle exec rake
@@ -1,3 +1,6 @@
1
+ ## 3.1.2 / 2019-12-29
2
+ * [BUGFIX] Fix Context#fail! on Ruby 2.7
3
+
1
4
  ## 3.1.1 / 2018-05-30
2
5
 
3
6
  * [BUGFIX] Allow Context#fail! to accept a hash with string keys
data/Gemfile CHANGED
@@ -2,6 +2,8 @@ source "https://rubygems.org"
2
2
 
3
3
  gemspec
4
4
 
5
+ gem "standard"
6
+
5
7
  group :test do
6
8
  gem "codeclimate-test-reporter", require: false
7
9
  gem "rspec", "~> 3.7"
data/README.md CHANGED
@@ -4,6 +4,7 @@
4
4
  [![Build Status](https://img.shields.io/travis/collectiveidea/interactor/master.svg)](https://travis-ci.org/collectiveidea/interactor)
5
5
  [![Maintainability](https://img.shields.io/codeclimate/maintainability/collectiveidea/interactor.svg)](https://codeclimate.com/github/collectiveidea/interactor)
6
6
  [![Test Coverage](https://img.shields.io/codeclimate/coverage-letter/collectiveidea/interactor.svg)](https://codeclimate.com/github/collectiveidea/interactor)
7
+ [![Ruby Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://github.com/testdouble/standard)
7
8
 
8
9
  ## Getting Started
9
10
 
data/Rakefile CHANGED
@@ -1,6 +1,7 @@
1
1
  require "bundler/gem_tasks"
2
2
  require "rspec/core/rake_task"
3
+ require "standard/rake"
3
4
 
4
5
  RSpec::Core::RakeTask.new(:spec)
5
6
 
6
- task default: :spec
7
+ task default: [:spec, :standard]
@@ -1,17 +1,17 @@
1
- # encoding: utf-8
1
+ require "English"
2
2
 
3
3
  Gem::Specification.new do |spec|
4
- spec.name = "interactor"
5
- spec.version = "3.1.1"
4
+ spec.name = "interactor"
5
+ spec.version = "3.1.2"
6
6
 
7
- spec.author = "Collective Idea"
8
- spec.email = "info@collectiveidea.com"
7
+ spec.author = "Collective Idea"
8
+ spec.email = "info@collectiveidea.com"
9
9
  spec.description = "Interactor provides a common interface for performing complex user interactions."
10
- spec.summary = "Simple interactor implementation"
11
- spec.homepage = "https://github.com/collectiveidea/interactor"
12
- spec.license = "MIT"
10
+ spec.summary = "Simple interactor implementation"
11
+ spec.homepage = "https://github.com/collectiveidea/interactor"
12
+ spec.license = "MIT"
13
13
 
14
- spec.files = `git ls-files`.split($/)
14
+ spec.files = `git ls-files`.split($INPUT_RECORD_SEPARATOR)
15
15
  spec.test_files = spec.files.grep(/^spec/)
16
16
 
17
17
  spec.add_development_dependency "bundler"
@@ -121,7 +121,7 @@ module Interactor
121
121
  #
122
122
  # Raises Interactor::Failure initialized with the Interactor::Context.
123
123
  def fail!(context = {})
124
- context.each { |key, value| modifiable[key.to_sym] = value }
124
+ context.each { |key, value| self[key.to_sym] = value }
125
125
  @failure = true
126
126
  raise Failure, self
127
127
  end
@@ -296,19 +296,19 @@ describe "Integration" do
296
296
  context.steps
297
297
  }.from([]).to([
298
298
  :around_before, :before,
299
- :around_before2, :before2,
300
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
301
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
302
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
303
- :after2, :around_after2,
304
- :around_before3, :before3, :call3, :after3, :around_after3,
305
- :around_before4, :before4,
306
- :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
307
- :around_before4b, :before4b, :call4b, :after4b, :around_after4b,
308
- :around_before4c, :before4c, :call4c, :after4c, :around_after4c,
309
- :after4, :around_after4,
310
- :around_before5, :before5, :call5, :after5, :around_after5,
311
- :after, :around_after
299
+ :around_before2, :before2,
300
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
301
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
302
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
303
+ :after2, :around_after2,
304
+ :around_before3, :before3, :call3, :after3, :around_after3,
305
+ :around_before4, :before4,
306
+ :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
307
+ :around_before4b, :before4b, :call4b, :after4b, :around_after4b,
308
+ :around_before4c, :before4c, :call4c, :after4c, :around_after4c,
309
+ :after4, :around_after4,
310
+ :around_before5, :before5, :call5, :after5, :around_after5,
311
+ :after, :around_after,
312
312
  ])
313
313
  end
314
314
  end
@@ -348,9 +348,6 @@ describe "Integration" do
348
348
  build_organizer(organize: [organizer2, interactor3, organizer4, interactor5]) do
349
349
  around do |interactor|
350
350
  raise "foo"
351
- context.steps << :around_before
352
- interactor.call
353
- context.steps << :around_after
354
351
  end
355
352
 
356
353
  before do
@@ -366,7 +363,11 @@ describe "Integration" do
366
363
 
367
364
  it "aborts" do
368
365
  expect {
369
- organizer.call(context) rescue nil
366
+ begin
367
+ organizer.call(context)
368
+ rescue
369
+ nil
370
+ end
370
371
  }.not_to change {
371
372
  context.steps
372
373
  }
@@ -405,7 +406,7 @@ describe "Integration" do
405
406
  }.to change {
406
407
  context.steps
407
408
  }.from([]).to([
408
- :around_before
409
+ :around_before,
409
410
  ])
410
411
  end
411
412
  end
@@ -421,7 +422,6 @@ describe "Integration" do
421
422
 
422
423
  before do
423
424
  raise "foo"
424
- context.steps << :before
425
425
  end
426
426
 
427
427
  after do
@@ -432,11 +432,15 @@ describe "Integration" do
432
432
 
433
433
  it "aborts" do
434
434
  expect {
435
- organizer.call(context) rescue nil
435
+ begin
436
+ organizer.call(context)
437
+ rescue
438
+ nil
439
+ end
436
440
  }.to change {
437
441
  context.steps
438
442
  }.from([]).to([
439
- :around_before
443
+ :around_before,
440
444
  ])
441
445
  end
442
446
 
@@ -474,18 +478,18 @@ describe "Integration" do
474
478
  context.steps
475
479
  }.from([]).to([
476
480
  :around_before, :before,
477
- :around_before2, :before2,
478
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
479
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
480
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
481
- :after2, :around_after2,
482
- :around_before3, :before3, :call3, :after3, :around_after3,
483
- :around_before4, :before4,
484
- :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
485
- :around_before4b, :before4b, :call4b, :after4b, :around_after4b,
486
- :around_before4c, :before4c, :call4c, :after4c, :around_after4c,
487
- :after4, :around_after4,
488
- :around_before5, :before5, :call5, :after5, :around_after5,
481
+ :around_before2, :before2,
482
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
483
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
484
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
485
+ :after2, :around_after2,
486
+ :around_before3, :before3, :call3, :after3, :around_after3,
487
+ :around_before4, :before4,
488
+ :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
489
+ :around_before4b, :before4b, :call4b, :after4b, :around_after4b,
490
+ :around_before4c, :before4c, :call4c, :after4c, :around_after4c,
491
+ :after4, :around_after4,
492
+ :around_before5, :before5, :call5, :after5, :around_after5,
489
493
  :rollback5,
490
494
  :rollback4c,
491
495
  :rollback4b,
@@ -493,7 +497,7 @@ describe "Integration" do
493
497
  :rollback3,
494
498
  :rollback2c,
495
499
  :rollback2b,
496
- :rollback2a
500
+ :rollback2a,
497
501
  ])
498
502
  end
499
503
  end
@@ -513,30 +517,33 @@ describe "Integration" do
513
517
 
514
518
  after do
515
519
  raise "foo"
516
- context.steps << :after
517
520
  end
518
521
  end
519
522
  }
520
523
 
521
524
  it "rolls back successfully called interactors and the failed interactor" do
522
525
  expect {
523
- organizer.call(context) rescue nil
526
+ begin
527
+ organizer.call(context)
528
+ rescue
529
+ nil
530
+ end
524
531
  }.to change {
525
532
  context.steps
526
533
  }.from([]).to([
527
534
  :around_before, :before,
528
- :around_before2, :before2,
529
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
530
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
531
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
532
- :after2, :around_after2,
533
- :around_before3, :before3, :call3, :after3, :around_after3,
534
- :around_before4, :before4,
535
- :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
536
- :around_before4b, :before4b, :call4b, :after4b, :around_after4b,
537
- :around_before4c, :before4c, :call4c, :after4c, :around_after4c,
538
- :after4, :around_after4,
539
- :around_before5, :before5, :call5, :after5, :around_after5,
535
+ :around_before2, :before2,
536
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
537
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
538
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
539
+ :after2, :around_after2,
540
+ :around_before3, :before3, :call3, :after3, :around_after3,
541
+ :around_before4, :before4,
542
+ :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
543
+ :around_before4b, :before4b, :call4b, :after4b, :around_after4b,
544
+ :around_before4c, :before4c, :call4c, :after4c, :around_after4c,
545
+ :after4, :around_after4,
546
+ :around_before5, :before5, :call5, :after5, :around_after5,
540
547
  :rollback5,
541
548
  :rollback4c,
542
549
  :rollback4b,
@@ -544,7 +551,7 @@ describe "Integration" do
544
551
  :rollback3,
545
552
  :rollback2c,
546
553
  :rollback2b,
547
- :rollback2a
554
+ :rollback2a,
548
555
  ])
549
556
  end
550
557
 
@@ -582,18 +589,18 @@ describe "Integration" do
582
589
  context.steps
583
590
  }.from([]).to([
584
591
  :around_before, :before,
585
- :around_before2, :before2,
586
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
587
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
588
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
589
- :after2, :around_after2,
590
- :around_before3, :before3, :call3, :after3, :around_after3,
591
- :around_before4, :before4,
592
- :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
593
- :around_before4b, :before4b, :call4b, :after4b, :around_after4b,
594
- :around_before4c, :before4c, :call4c, :after4c, :around_after4c,
595
- :after4, :around_after4,
596
- :around_before5, :before5, :call5, :after5, :around_after5,
592
+ :around_before2, :before2,
593
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
594
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
595
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
596
+ :after2, :around_after2,
597
+ :around_before3, :before3, :call3, :after3, :around_after3,
598
+ :around_before4, :before4,
599
+ :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
600
+ :around_before4b, :before4b, :call4b, :after4b, :around_after4b,
601
+ :around_before4c, :before4c, :call4c, :after4c, :around_after4c,
602
+ :after4, :around_after4,
603
+ :around_before5, :before5, :call5, :after5, :around_after5,
597
604
  :after,
598
605
  :rollback5,
599
606
  :rollback4c,
@@ -602,7 +609,7 @@ describe "Integration" do
602
609
  :rollback3,
603
610
  :rollback2c,
604
611
  :rollback2b,
605
- :rollback2a
612
+ :rollback2a,
606
613
  ])
607
614
  end
608
615
  end
@@ -614,7 +621,6 @@ describe "Integration" do
614
621
  context.steps << :around_before
615
622
  interactor.call
616
623
  raise "foo"
617
- context.steps << :around_after
618
624
  end
619
625
 
620
626
  before do
@@ -629,23 +635,27 @@ describe "Integration" do
629
635
 
630
636
  it "rolls back successfully called interactors and the failed interactor" do
631
637
  expect {
632
- organizer.call(context) rescue nil
638
+ begin
639
+ organizer.call(context)
640
+ rescue
641
+ nil
642
+ end
633
643
  }.to change {
634
644
  context.steps
635
645
  }.from([]).to([
636
646
  :around_before, :before,
637
- :around_before2, :before2,
638
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
639
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
640
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
641
- :after2, :around_after2,
642
- :around_before3, :before3, :call3, :after3, :around_after3,
643
- :around_before4, :before4,
644
- :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
645
- :around_before4b, :before4b, :call4b, :after4b, :around_after4b,
646
- :around_before4c, :before4c, :call4c, :after4c, :around_after4c,
647
- :after4, :around_after4,
648
- :around_before5, :before5, :call5, :after5, :around_after5,
647
+ :around_before2, :before2,
648
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
649
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
650
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
651
+ :after2, :around_after2,
652
+ :around_before3, :before3, :call3, :after3, :around_after3,
653
+ :around_before4, :before4,
654
+ :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
655
+ :around_before4b, :before4b, :call4b, :after4b, :around_after4b,
656
+ :around_before4c, :before4c, :call4c, :after4c, :around_after4c,
657
+ :after4, :around_after4,
658
+ :around_before5, :before5, :call5, :after5, :around_after5,
649
659
  :after,
650
660
  :rollback5,
651
661
  :rollback4c,
@@ -654,7 +664,7 @@ describe "Integration" do
654
664
  :rollback3,
655
665
  :rollback2c,
656
666
  :rollback2b,
657
- :rollback2a
667
+ :rollback2a,
658
668
  ])
659
669
  end
660
670
 
@@ -700,14 +710,14 @@ describe "Integration" do
700
710
  context.steps
701
711
  }.from([]).to([
702
712
  :around_before, :before,
703
- :around_before2, :before2,
704
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
705
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
706
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
707
- :after2, :around_after2,
713
+ :around_before2, :before2,
714
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
715
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
716
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
717
+ :after2, :around_after2,
708
718
  :rollback2c,
709
719
  :rollback2b,
710
- :rollback2a
720
+ :rollback2a,
711
721
  ])
712
722
  end
713
723
  end
@@ -717,9 +727,6 @@ describe "Integration" do
717
727
  build_interactor do
718
728
  around do |interactor|
719
729
  raise "foo"
720
- context.steps << :around_before3
721
- interactor.call
722
- context.steps << :around_after3
723
730
  end
724
731
 
725
732
  before do
@@ -742,19 +749,23 @@ describe "Integration" do
742
749
 
743
750
  it "rolls back successfully called interactors" do
744
751
  expect {
745
- organizer.call(context) rescue nil
752
+ begin
753
+ organizer.call(context)
754
+ rescue
755
+ nil
756
+ end
746
757
  }.to change {
747
758
  context.steps
748
759
  }.from([]).to([
749
760
  :around_before, :before,
750
- :around_before2, :before2,
751
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
752
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
753
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
754
- :after2, :around_after2,
761
+ :around_before2, :before2,
762
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
763
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
764
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
765
+ :after2, :around_after2,
755
766
  :rollback2c,
756
767
  :rollback2b,
757
- :rollback2a
768
+ :rollback2a,
758
769
  ])
759
770
  end
760
771
 
@@ -800,15 +811,15 @@ describe "Integration" do
800
811
  context.steps
801
812
  }.from([]).to([
802
813
  :around_before, :before,
803
- :around_before2, :before2,
804
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
805
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
806
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
807
- :after2, :around_after2,
808
- :around_before3,
814
+ :around_before2, :before2,
815
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
816
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
817
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
818
+ :after2, :around_after2,
819
+ :around_before3,
809
820
  :rollback2c,
810
821
  :rollback2b,
811
- :rollback2a
822
+ :rollback2a,
812
823
  ])
813
824
  end
814
825
  end
@@ -824,7 +835,6 @@ describe "Integration" do
824
835
 
825
836
  before do
826
837
  raise "foo"
827
- context.steps << :before3
828
838
  end
829
839
 
830
840
  after do
@@ -843,20 +853,24 @@ describe "Integration" do
843
853
 
844
854
  it "rolls back successfully called interactors" do
845
855
  expect {
846
- organizer.call(context) rescue nil
856
+ begin
857
+ organizer.call(context)
858
+ rescue
859
+ nil
860
+ end
847
861
  }.to change {
848
862
  context.steps
849
863
  }.from([]).to([
850
864
  :around_before, :before,
851
- :around_before2, :before2,
852
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
853
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
854
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
855
- :after2, :around_after2,
856
- :around_before3,
865
+ :around_before2, :before2,
866
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
867
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
868
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
869
+ :after2, :around_after2,
870
+ :around_before3,
857
871
  :rollback2c,
858
872
  :rollback2b,
859
- :rollback2a
873
+ :rollback2a,
860
874
  ])
861
875
  end
862
876
 
@@ -902,15 +916,15 @@ describe "Integration" do
902
916
  context.steps
903
917
  }.from([]).to([
904
918
  :around_before, :before,
905
- :around_before2, :before2,
906
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
907
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
908
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
909
- :after2, :around_after2,
910
- :around_before3, :before3,
919
+ :around_before2, :before2,
920
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
921
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
922
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
923
+ :after2, :around_after2,
924
+ :around_before3, :before3,
911
925
  :rollback2c,
912
926
  :rollback2b,
913
- :rollback2a
927
+ :rollback2a,
914
928
  ])
915
929
  end
916
930
  end
@@ -934,7 +948,6 @@ describe "Integration" do
934
948
 
935
949
  def call
936
950
  raise "foo"
937
- context.steps << :call3
938
951
  end
939
952
 
940
953
  def rollback
@@ -945,20 +958,24 @@ describe "Integration" do
945
958
 
946
959
  it "rolls back successfully called interactors" do
947
960
  expect {
948
- organizer.call(context) rescue nil
961
+ begin
962
+ organizer.call(context)
963
+ rescue
964
+ nil
965
+ end
949
966
  }.to change {
950
967
  context.steps
951
968
  }.from([]).to([
952
969
  :around_before, :before,
953
- :around_before2, :before2,
954
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
955
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
956
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
957
- :after2, :around_after2,
958
- :around_before3, :before3,
970
+ :around_before2, :before2,
971
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
972
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
973
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
974
+ :after2, :around_after2,
975
+ :around_before3, :before3,
959
976
  :rollback2c,
960
977
  :rollback2b,
961
- :rollback2a
978
+ :rollback2a,
962
979
  ])
963
980
  end
964
981
 
@@ -1004,16 +1021,16 @@ describe "Integration" do
1004
1021
  context.steps
1005
1022
  }.from([]).to([
1006
1023
  :around_before, :before,
1007
- :around_before2, :before2,
1008
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1009
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1010
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1011
- :after2, :around_after2,
1012
- :around_before3, :before3, :call3,
1024
+ :around_before2, :before2,
1025
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1026
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1027
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1028
+ :after2, :around_after2,
1029
+ :around_before3, :before3, :call3,
1013
1030
  :rollback3,
1014
1031
  :rollback2c,
1015
1032
  :rollback2b,
1016
- :rollback2a
1033
+ :rollback2a,
1017
1034
  ])
1018
1035
  end
1019
1036
  end
@@ -1033,7 +1050,6 @@ describe "Integration" do
1033
1050
 
1034
1051
  after do
1035
1052
  raise "foo"
1036
- context.steps << :after3
1037
1053
  end
1038
1054
 
1039
1055
  def call
@@ -1048,21 +1064,25 @@ describe "Integration" do
1048
1064
 
1049
1065
  it "rolls back successfully called interactors and the failed interactor" do
1050
1066
  expect {
1051
- organizer.call(context) rescue nil
1067
+ begin
1068
+ organizer.call(context)
1069
+ rescue
1070
+ nil
1071
+ end
1052
1072
  }.to change {
1053
1073
  context.steps
1054
1074
  }.from([]).to([
1055
1075
  :around_before, :before,
1056
- :around_before2, :before2,
1057
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1058
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1059
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1060
- :after2, :around_after2,
1061
- :around_before3, :before3, :call3,
1076
+ :around_before2, :before2,
1077
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1078
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1079
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1080
+ :after2, :around_after2,
1081
+ :around_before3, :before3, :call3,
1062
1082
  :rollback3,
1063
1083
  :rollback2c,
1064
1084
  :rollback2b,
1065
- :rollback2a
1085
+ :rollback2a,
1066
1086
  ])
1067
1087
  end
1068
1088
 
@@ -1108,16 +1128,16 @@ describe "Integration" do
1108
1128
  context.steps
1109
1129
  }.from([]).to([
1110
1130
  :around_before, :before,
1111
- :around_before2, :before2,
1112
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1113
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1114
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1115
- :after2, :around_after2,
1116
- :around_before3, :before3, :call3, :after3,
1131
+ :around_before2, :before2,
1132
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1133
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1134
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1135
+ :after2, :around_after2,
1136
+ :around_before3, :before3, :call3, :after3,
1117
1137
  :rollback3,
1118
1138
  :rollback2c,
1119
1139
  :rollback2b,
1120
- :rollback2a
1140
+ :rollback2a,
1121
1141
  ])
1122
1142
  end
1123
1143
  end
@@ -1129,7 +1149,6 @@ describe "Integration" do
1129
1149
  context.steps << :around_before3
1130
1150
  interactor.call
1131
1151
  raise "foo"
1132
- context.steps << :around_after3
1133
1152
  end
1134
1153
 
1135
1154
  before do
@@ -1152,21 +1171,25 @@ describe "Integration" do
1152
1171
 
1153
1172
  it "rolls back successfully called interactors and the failed interactor" do
1154
1173
  expect {
1155
- organizer.call(context) rescue nil
1174
+ begin
1175
+ organizer.call(context)
1176
+ rescue
1177
+ nil
1178
+ end
1156
1179
  }.to change {
1157
1180
  context.steps
1158
1181
  }.from([]).to([
1159
1182
  :around_before, :before,
1160
- :around_before2, :before2,
1161
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1162
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1163
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1164
- :after2, :around_after2,
1165
- :around_before3, :before3, :call3, :after3,
1183
+ :around_before2, :before2,
1184
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1185
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1186
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1187
+ :after2, :around_after2,
1188
+ :around_before3, :before3, :call3, :after3,
1166
1189
  :rollback3,
1167
1190
  :rollback2c,
1168
1191
  :rollback2b,
1169
- :rollback2a
1192
+ :rollback2a,
1170
1193
  ])
1171
1194
  end
1172
1195
 
@@ -1212,19 +1235,19 @@ describe "Integration" do
1212
1235
  context.steps
1213
1236
  }.from([]).to([
1214
1237
  :around_before, :before,
1215
- :around_before2, :before2,
1216
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1217
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1218
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1219
- :after2, :around_after2,
1220
- :around_before3, :before3, :call3, :after3, :around_after3,
1221
- :around_before4, :before4,
1222
- :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1238
+ :around_before2, :before2,
1239
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1240
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1241
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1242
+ :after2, :around_after2,
1243
+ :around_before3, :before3, :call3, :after3, :around_after3,
1244
+ :around_before4, :before4,
1245
+ :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1223
1246
  :rollback4a,
1224
1247
  :rollback3,
1225
1248
  :rollback2c,
1226
1249
  :rollback2b,
1227
- :rollback2a
1250
+ :rollback2a,
1228
1251
  ])
1229
1252
  end
1230
1253
  end
@@ -1234,9 +1257,6 @@ describe "Integration" do
1234
1257
  build_interactor do
1235
1258
  around do |interactor|
1236
1259
  raise "foo"
1237
- context.steps << :around_before4b
1238
- interactor.call
1239
- context.steps << :around_after4b
1240
1260
  end
1241
1261
 
1242
1262
  before do
@@ -1259,24 +1279,28 @@ describe "Integration" do
1259
1279
 
1260
1280
  it "rolls back successfully called interactors" do
1261
1281
  expect {
1262
- organizer.call(context) rescue nil
1282
+ begin
1283
+ organizer.call(context)
1284
+ rescue
1285
+ nil
1286
+ end
1263
1287
  }.to change {
1264
1288
  context.steps
1265
1289
  }.from([]).to([
1266
1290
  :around_before, :before,
1267
- :around_before2, :before2,
1268
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1269
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1270
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1271
- :after2, :around_after2,
1272
- :around_before3, :before3, :call3, :after3, :around_after3,
1273
- :around_before4, :before4,
1274
- :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1291
+ :around_before2, :before2,
1292
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1293
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1294
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1295
+ :after2, :around_after2,
1296
+ :around_before3, :before3, :call3, :after3, :around_after3,
1297
+ :around_before4, :before4,
1298
+ :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1275
1299
  :rollback4a,
1276
1300
  :rollback3,
1277
1301
  :rollback2c,
1278
1302
  :rollback2b,
1279
- :rollback2a
1303
+ :rollback2a,
1280
1304
  ])
1281
1305
  end
1282
1306
 
@@ -1322,20 +1346,20 @@ describe "Integration" do
1322
1346
  context.steps
1323
1347
  }.from([]).to([
1324
1348
  :around_before, :before,
1325
- :around_before2, :before2,
1326
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1327
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1328
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1329
- :after2, :around_after2,
1330
- :around_before3, :before3, :call3, :after3, :around_after3,
1331
- :around_before4, :before4,
1332
- :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1333
- :around_before4b,
1349
+ :around_before2, :before2,
1350
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1351
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1352
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1353
+ :after2, :around_after2,
1354
+ :around_before3, :before3, :call3, :after3, :around_after3,
1355
+ :around_before4, :before4,
1356
+ :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1357
+ :around_before4b,
1334
1358
  :rollback4a,
1335
1359
  :rollback3,
1336
1360
  :rollback2c,
1337
1361
  :rollback2b,
1338
- :rollback2a
1362
+ :rollback2a,
1339
1363
  ])
1340
1364
  end
1341
1365
  end
@@ -1351,7 +1375,6 @@ describe "Integration" do
1351
1375
 
1352
1376
  before do
1353
1377
  raise "foo"
1354
- context.steps << :before4b
1355
1378
  end
1356
1379
 
1357
1380
  after do
@@ -1370,25 +1393,29 @@ describe "Integration" do
1370
1393
 
1371
1394
  it "rolls back successfully called interactors" do
1372
1395
  expect {
1373
- organizer.call(context) rescue nil
1396
+ begin
1397
+ organizer.call(context)
1398
+ rescue
1399
+ nil
1400
+ end
1374
1401
  }.to change {
1375
1402
  context.steps
1376
1403
  }.from([]).to([
1377
1404
  :around_before, :before,
1378
- :around_before2, :before2,
1379
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1380
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1381
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1382
- :after2, :around_after2,
1383
- :around_before3, :before3, :call3, :after3, :around_after3,
1384
- :around_before4, :before4,
1385
- :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1386
- :around_before4b,
1405
+ :around_before2, :before2,
1406
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1407
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1408
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1409
+ :after2, :around_after2,
1410
+ :around_before3, :before3, :call3, :after3, :around_after3,
1411
+ :around_before4, :before4,
1412
+ :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1413
+ :around_before4b,
1387
1414
  :rollback4a,
1388
1415
  :rollback3,
1389
1416
  :rollback2c,
1390
1417
  :rollback2b,
1391
- :rollback2a
1418
+ :rollback2a,
1392
1419
  ])
1393
1420
  end
1394
1421
 
@@ -1434,20 +1461,20 @@ describe "Integration" do
1434
1461
  context.steps
1435
1462
  }.from([]).to([
1436
1463
  :around_before, :before,
1437
- :around_before2, :before2,
1438
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1439
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1440
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1441
- :after2, :around_after2,
1442
- :around_before3, :before3, :call3, :after3, :around_after3,
1443
- :around_before4, :before4,
1444
- :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1445
- :around_before4b, :before4b,
1464
+ :around_before2, :before2,
1465
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1466
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1467
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1468
+ :after2, :around_after2,
1469
+ :around_before3, :before3, :call3, :after3, :around_after3,
1470
+ :around_before4, :before4,
1471
+ :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1472
+ :around_before4b, :before4b,
1446
1473
  :rollback4a,
1447
1474
  :rollback3,
1448
1475
  :rollback2c,
1449
1476
  :rollback2b,
1450
- :rollback2a
1477
+ :rollback2a,
1451
1478
  ])
1452
1479
  end
1453
1480
  end
@@ -1471,7 +1498,6 @@ describe "Integration" do
1471
1498
 
1472
1499
  def call
1473
1500
  raise "foo"
1474
- context.steps << :call4b
1475
1501
  end
1476
1502
 
1477
1503
  def rollback
@@ -1482,25 +1508,29 @@ describe "Integration" do
1482
1508
 
1483
1509
  it "rolls back successfully called interactors" do
1484
1510
  expect {
1485
- organizer.call(context) rescue nil
1511
+ begin
1512
+ organizer.call(context)
1513
+ rescue
1514
+ nil
1515
+ end
1486
1516
  }.to change {
1487
1517
  context.steps
1488
1518
  }.from([]).to([
1489
1519
  :around_before, :before,
1490
- :around_before2, :before2,
1491
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1492
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1493
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1494
- :after2, :around_after2,
1495
- :around_before3, :before3, :call3, :after3, :around_after3,
1496
- :around_before4, :before4,
1497
- :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1498
- :around_before4b, :before4b,
1520
+ :around_before2, :before2,
1521
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1522
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1523
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1524
+ :after2, :around_after2,
1525
+ :around_before3, :before3, :call3, :after3, :around_after3,
1526
+ :around_before4, :before4,
1527
+ :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1528
+ :around_before4b, :before4b,
1499
1529
  :rollback4a,
1500
1530
  :rollback3,
1501
1531
  :rollback2c,
1502
1532
  :rollback2b,
1503
- :rollback2a
1533
+ :rollback2a,
1504
1534
  ])
1505
1535
  end
1506
1536
 
@@ -1546,21 +1576,21 @@ describe "Integration" do
1546
1576
  context.steps
1547
1577
  }.from([]).to([
1548
1578
  :around_before, :before,
1549
- :around_before2, :before2,
1550
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1551
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1552
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1553
- :after2, :around_after2,
1554
- :around_before3, :before3, :call3, :after3, :around_after3,
1555
- :around_before4, :before4,
1556
- :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1557
- :around_before4b, :before4b, :call4b,
1579
+ :around_before2, :before2,
1580
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1581
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1582
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1583
+ :after2, :around_after2,
1584
+ :around_before3, :before3, :call3, :after3, :around_after3,
1585
+ :around_before4, :before4,
1586
+ :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1587
+ :around_before4b, :before4b, :call4b,
1558
1588
  :rollback4b,
1559
1589
  :rollback4a,
1560
1590
  :rollback3,
1561
1591
  :rollback2c,
1562
1592
  :rollback2b,
1563
- :rollback2a
1593
+ :rollback2a,
1564
1594
  ])
1565
1595
  end
1566
1596
  end
@@ -1580,7 +1610,6 @@ describe "Integration" do
1580
1610
 
1581
1611
  after do
1582
1612
  raise "foo"
1583
- context.steps << :after4b
1584
1613
  end
1585
1614
 
1586
1615
  def call
@@ -1595,26 +1624,30 @@ describe "Integration" do
1595
1624
 
1596
1625
  it "rolls back successfully called interactors and the failed interactor" do
1597
1626
  expect {
1598
- organizer.call(context) rescue nil
1627
+ begin
1628
+ organizer.call(context)
1629
+ rescue
1630
+ nil
1631
+ end
1599
1632
  }.to change {
1600
1633
  context.steps
1601
1634
  }.from([]).to([
1602
1635
  :around_before, :before,
1603
- :around_before2, :before2,
1604
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1605
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1606
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1607
- :after2, :around_after2,
1608
- :around_before3, :before3, :call3, :after3, :around_after3,
1609
- :around_before4, :before4,
1610
- :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1611
- :around_before4b, :before4b, :call4b,
1636
+ :around_before2, :before2,
1637
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1638
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1639
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1640
+ :after2, :around_after2,
1641
+ :around_before3, :before3, :call3, :after3, :around_after3,
1642
+ :around_before4, :before4,
1643
+ :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1644
+ :around_before4b, :before4b, :call4b,
1612
1645
  :rollback4b,
1613
1646
  :rollback4a,
1614
1647
  :rollback3,
1615
1648
  :rollback2c,
1616
1649
  :rollback2b,
1617
- :rollback2a
1650
+ :rollback2a,
1618
1651
  ])
1619
1652
  end
1620
1653
 
@@ -1660,21 +1693,21 @@ describe "Integration" do
1660
1693
  context.steps
1661
1694
  }.from([]).to([
1662
1695
  :around_before, :before,
1663
- :around_before2, :before2,
1664
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1665
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1666
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1667
- :after2, :around_after2,
1668
- :around_before3, :before3, :call3, :after3, :around_after3,
1669
- :around_before4, :before4,
1670
- :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1671
- :around_before4b, :before4b, :call4b, :after4b,
1696
+ :around_before2, :before2,
1697
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1698
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1699
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1700
+ :after2, :around_after2,
1701
+ :around_before3, :before3, :call3, :after3, :around_after3,
1702
+ :around_before4, :before4,
1703
+ :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1704
+ :around_before4b, :before4b, :call4b, :after4b,
1672
1705
  :rollback4b,
1673
1706
  :rollback4a,
1674
1707
  :rollback3,
1675
1708
  :rollback2c,
1676
1709
  :rollback2b,
1677
- :rollback2a
1710
+ :rollback2a,
1678
1711
  ])
1679
1712
  end
1680
1713
  end
@@ -1686,7 +1719,6 @@ describe "Integration" do
1686
1719
  context.steps << :around_before4b
1687
1720
  interactor.call
1688
1721
  raise "foo"
1689
- context.steps << :around_after4b
1690
1722
  end
1691
1723
 
1692
1724
  before do
@@ -1709,26 +1741,30 @@ describe "Integration" do
1709
1741
 
1710
1742
  it "rolls back successfully called interactors and the failed interactor" do
1711
1743
  expect {
1712
- organizer.call(context) rescue nil
1744
+ begin
1745
+ organizer.call(context)
1746
+ rescue
1747
+ nil
1748
+ end
1713
1749
  }.to change {
1714
1750
  context.steps
1715
1751
  }.from([]).to([
1716
1752
  :around_before, :before,
1717
- :around_before2, :before2,
1718
- :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1719
- :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1720
- :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1721
- :after2, :around_after2,
1722
- :around_before3, :before3, :call3, :after3, :around_after3,
1723
- :around_before4, :before4,
1724
- :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1725
- :around_before4b, :before4b, :call4b, :after4b,
1753
+ :around_before2, :before2,
1754
+ :around_before2a, :before2a, :call2a, :after2a, :around_after2a,
1755
+ :around_before2b, :before2b, :call2b, :after2b, :around_after2b,
1756
+ :around_before2c, :before2c, :call2c, :after2c, :around_after2c,
1757
+ :after2, :around_after2,
1758
+ :around_before3, :before3, :call3, :after3, :around_after3,
1759
+ :around_before4, :before4,
1760
+ :around_before4a, :before4a, :call4a, :after4a, :around_after4a,
1761
+ :around_before4b, :before4b, :call4b, :after4b,
1726
1762
  :rollback4b,
1727
1763
  :rollback4a,
1728
1764
  :rollback3,
1729
1765
  :rollback2c,
1730
1766
  :rollback2b,
1731
- :rollback2a
1767
+ :rollback2a,
1732
1768
  ])
1733
1769
  end
1734
1770