checkoff 0.247.0 → 0.248.0

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: 4a4767930eda52d13e8d437d7cd2aa33dd4af3f7e402ce12fb60d3371f955742
4
- data.tar.gz: c95a95f0a59e48fee37bc6a43a461a2c5a2b60f73314b1e799c23d3e466be6b1
3
+ metadata.gz: cf2ef1bb397eb6f71c13c2b0b80a07bcce2768bf949f7306552f42196ff2ee2f
4
+ data.tar.gz: e13e1ddd086c25666513f065d6d1d0efcb3498117207bd2db2be0832a3369a97
5
5
  SHA512:
6
- metadata.gz: '098a082874fa5ea130e0fceadad00b1d5f0a6c78e66ee53d351f90bc9b5b014a5958ae440a26472483a0742affd97325e3365cd2780f4afb6f3507654278a910'
7
- data.tar.gz: 4a2c87a47f0f7767154d9b0ff1474892669832c1e99893d6f28b26d750a2e6a79854076e5b30d0d3daa819ec4d297d11167bea0349038d551f2a5d12211ce5ca
6
+ metadata.gz: 5b1e83d10cc864255f05003342919ff7c1c4171821232a6d702672c395bda000ef923e4da9084a5d86398e0107bdffa813e40bb6a78fd7a656f65f342c32bc09
7
+ data.tar.gz: f79ec8061cd3b0a3180f4f94370c468e57c8731e873486a912f280ed2a860751047433a7660068ac57283f7f8e608925b8e615a7224c3f8b41cea0bb58e0702c
@@ -4,5 +4,5 @@
4
4
  # Command-line and gem client for Asana (unofficial)
5
5
  module Checkoff
6
6
  # Version of library
7
- VERSION = '0.247.0'
7
+ VERSION = '0.248.0'
8
8
  end
data/rbi/checkoff.rbi CHANGED
@@ -75,7 +75,7 @@ module Overcommit
75
75
  end
76
76
 
77
77
  module Checkoff
78
- VERSION = '0.247.0'
78
+ VERSION = '0.248.0'
79
79
 
80
80
  class Attachments
81
81
  include Logging
@@ -2442,7 +2442,7 @@ end
2442
2442
  # typed: ignore
2443
2443
  # Command-line and gem client for Asana (unofficial)
2444
2444
  module Checkoff
2445
- VERSION = T.let('0.247.0', T.untyped)
2445
+ VERSION = T.let('0.248.0', T.untyped)
2446
2446
 
2447
2447
  # Move tasks from one place to another
2448
2448
  class MvSubcommand
@@ -6760,6 +6760,23 @@ end - [Checkoff::SelectorClasses::Section::FunctionEvaluator]).freeze, T.untyped
6760
6760
  sig { returns(Asana::Client) }
6761
6761
  attr_reader :client
6762
6762
  end
6763
+
6764
+ # Remove TIME_BY_PERIOD redeclarations Sord emits on BaseAsana test subclasses.
6765
+ module PruneRbiTestConstants
6766
+ SUBCLASSES = T.let(%w[TestTasks TestProjects TestSections TestWorkspaces].freeze, T.untyped)
6767
+
6768
+ # _@param_ `klass`
6769
+ sig { params(klass: String).returns(Regexp) }
6770
+ def self.pattern_for(klass); end
6771
+
6772
+ # _@param_ `path`
6773
+ sig { params(path: String).void }
6774
+ def self.call(path); end
6775
+
6776
+ # _@param_ `content`
6777
+ sig { params(content: String).returns(String) }
6778
+ def self.prune_subclasses(content); end
6779
+ end
6763
6780
  end
6764
6781
 
6765
6782
  # include this to add ability to log at different levels
@@ -6976,214 +6993,6 @@ end
6976
6993
  # Test the Checkoff::Tasks class
6977
6994
  class TestTasks < BaseAsana
6978
6995
  extend Forwardable
6979
- TIME_BY_PERIOD = T.let({
6980
- two_am: '02:00:20',
6981
- morning_during_breakfast: '07:30:20',
6982
- morning: '07:33:20',
6983
- eight_thirty_am: '8:30:00',
6984
- ten_am: '10:00:20',
6985
- mid_morning: '10:33:20',
6986
- eleven_thirty_am: '11:30:00',
6987
- afternoon: '14:33:20',
6988
- three_forty_five_pm: '15:45:20',
6989
- four_fifteen_pm: '16:15:20',
6990
- four_forty_five_pm: '16:45:20',
6991
- five_forty_five_pm: '17:45:20',
6992
- six_fifteen_pm: '18:15:00',
6993
- six_forty_five_pm: '18:45:00',
6994
- night: '19:00:20',
6995
- evening: '19:01:20',
6996
- late_evening: '21:33:20',
6997
- late_late_evening: '22:33:20',
6998
- }.freeze, T.untyped)
6999
-
7000
- sig { void }
7001
- def expect_now_pulled; end
7002
-
7003
- sig { params(less_than_now: T.untyped).void }
7004
- def expect_due_on_parsed(less_than_now:); end
7005
-
7006
- sig { params(less_than_now: T.untyped).void }
7007
- def expect_start_on_parsed(less_than_now:); end
7008
-
7009
- sig { params(less_than_now: T.untyped).void }
7010
- def expect_start_at_parsed(less_than_now:); end
7011
-
7012
- sig { void }
7013
- def mock_task_ready_false_due_in_future_on_date; end
7014
-
7015
- sig { void }
7016
- def test_task_ready_false_due_in_future_on_date; end
7017
-
7018
- sig { returns(T.untyped) }
7019
- def mock_task_ready_true_start_in_past; end
7020
-
7021
- sig { void }
7022
- def test_task_ready_true_start_in_past; end
7023
-
7024
- sig { void }
7025
- def mock_task_ready_true_start_in_past_time; end
7026
-
7027
- sig { void }
7028
- def test_task_ready_true_start_in_past_time; end
7029
-
7030
- sig { params(less_than_now: T.untyped).void }
7031
- def expect_due_at_parsed(less_than_now:); end
7032
-
7033
- sig { void }
7034
- def mock_task_ready_false_due_in_future_at_time; end
7035
-
7036
- sig { void }
7037
- def test_task_ready_false_due_in_future_at_time; end
7038
-
7039
- sig { params(task: T.untyped, dependency_gids: T.untyped).void }
7040
- def expect_dependency_gids_pulled(task, dependency_gids); end
7041
-
7042
- sig { void }
7043
- def test_task_ready_true_no_due_anything; end
7044
-
7045
- sig { void }
7046
- def expect_asana_tasks_client_pulled; end
7047
-
7048
- sig { void }
7049
- def default_fields; end
7050
-
7051
- sig { params(extra_fields: T.untyped).void }
7052
- def fields_including(extra_fields); end
7053
-
7054
- sig { params(dependency_gid: T.untyped, dependency_full_task: T.untyped, completed: T.untyped).void }
7055
- def expect_dependency_completion_pulled(dependency_gid, dependency_full_task, completed); end
7056
-
7057
- sig { void }
7058
- def mock_task_ready_false_dependency; end
7059
-
7060
- sig { returns(T.untyped) }
7061
- def test_task_ready_false_dependency; end
7062
-
7063
- sig { void }
7064
- def test_task_ready_false_dependency_cached; end
7065
-
7066
- sig do
7067
- params(
7068
- start_on: T.untyped,
7069
- start_at: T.untyped,
7070
- due_on: T.untyped,
7071
- due_at: T.untyped
7072
- ).void
7073
- end
7074
- def allow_task_due(start_on: nil, start_at: nil, due_on: nil, due_at: nil); end
7075
-
7076
- sig { params(task: T.untyped, start_at: T.untyped).void }
7077
- def allow_start_at_pulled(task, start_at); end
7078
-
7079
- sig { params(task: T.untyped, start_on: T.untyped).returns(T.untyped) }
7080
- def allow_start_on_pulled(task, start_on); end
7081
-
7082
- sig { params(task: T.untyped, due_at: T.untyped).void }
7083
- def allow_due_at_pulled(task, due_at); end
7084
-
7085
- sig { params(task: T.untyped, due_on: T.untyped).returns(T.untyped) }
7086
- def allow_due_on_pulled(task, due_on); end
7087
-
7088
- sig { returns(T.untyped) }
7089
- def test_url_of_task; end
7090
-
7091
- sig { returns(T.untyped) }
7092
- def expect_task_created; end
7093
-
7094
- sig { void }
7095
- def mock_add_task; end
7096
-
7097
- sig { void }
7098
- def test_add_task; end
7099
-
7100
- sig { returns(T.untyped) }
7101
- def expect_tasks_from_project_pulled; end
7102
-
7103
- sig { void }
7104
- def expect_project_pulled; end
7105
-
7106
- sig { params(extra_fields: T.untyped).returns(T.untyped) }
7107
- def expect_task_by_gid_pulled(extra_fields: []); end
7108
-
7109
- sig { returns(T.untyped) }
7110
- def expect_tasks_from_section_pulled; end
7111
-
7112
- sig { returns(T.untyped) }
7113
- def projects; end
7114
-
7115
- sig { returns(T.untyped) }
7116
- def expect_task_options_pulled; end
7117
-
7118
- sig { returns(T.untyped) }
7119
- def mock_task_with_section; end
7120
-
7121
- sig { void }
7122
- def test_task_with_section; end
7123
-
7124
- sig { returns(T.untyped) }
7125
- def mock_task; end
7126
-
7127
- sig { void }
7128
- def test_task; end
7129
-
7130
- sig { void }
7131
- def test_in_portfolio_more_than_once; end
7132
-
7133
- sig { void }
7134
- def test_in_portfolio_more_than_once_true; end
7135
-
7136
- sig { void }
7137
- def test_gid_for_task; end
7138
-
7139
- sig { void }
7140
- def test_gid_for_task_not_found; end
7141
-
7142
- sig { returns(T.untyped) }
7143
- def test_task_to_h_delegates; end
7144
-
7145
- sig { void }
7146
- def expect_default_workspace_name_pulled; end
7147
-
7148
- sig { void }
7149
- def mock_in_portfolio_named_false_no_projects_no_memberships; end
7150
-
7151
- sig { void }
7152
- def test_in_portfolio_named_false_no_projects_no_memberships; end
7153
-
7154
- sig { void }
7155
- def mock_in_portfolio_named_false_no_projects_but_memberships; end
7156
-
7157
- sig { void }
7158
- def test_in_portfolio_named_false_no_projects_but_memberships; end
7159
-
7160
- sig { void }
7161
- def mock_in_portfolio_named_false_projects_wrong_memberships; end
7162
-
7163
- sig { void }
7164
- def test_in_portfolio_named_false_projects_wrong_memberships; end
7165
-
7166
- sig { void }
7167
- def test_date_or_time_field_by_name; end
7168
-
7169
- sig { void }
7170
- def test_h_to_task; end
7171
-
7172
- sig { void }
7173
- def test_all_dependent_tasks_empty; end
7174
-
7175
- sig { void }
7176
- def test_all_dependent_tasks_one; end
7177
-
7178
- sig { void }
7179
- def test_as_cache_key; end
7180
-
7181
- sig { void }
7182
- def class_under_test; end
7183
- end
7184
-
7185
- # Test the Checkoff::CLI class with mv subcommand
7186
- class TestCLIMv < Minitest::Test
7187
6996
  sig { void }
7188
6997
  def expect_workspaces_created; end
7189
6998
 
@@ -7471,99 +7280,6 @@ end
7471
7280
  # Test the Checkoff::Projects class
7472
7281
  class TestProjects < BaseAsana
7473
7282
  extend Forwardable
7474
- TIME_BY_PERIOD = T.let({
7475
- two_am: '02:00:20',
7476
- morning_during_breakfast: '07:30:20',
7477
- morning: '07:33:20',
7478
- eight_thirty_am: '8:30:00',
7479
- ten_am: '10:00:20',
7480
- mid_morning: '10:33:20',
7481
- eleven_thirty_am: '11:30:00',
7482
- afternoon: '14:33:20',
7483
- three_forty_five_pm: '15:45:20',
7484
- four_fifteen_pm: '16:15:20',
7485
- four_forty_five_pm: '16:45:20',
7486
- five_forty_five_pm: '17:45:20',
7487
- six_fifteen_pm: '18:15:00',
7488
- six_forty_five_pm: '18:45:00',
7489
- night: '19:00:20',
7490
- evening: '19:01:20',
7491
- late_evening: '21:33:20',
7492
- late_late_evening: '22:33:20',
7493
- }.freeze, T.untyped)
7494
-
7495
- sig { void }
7496
- def setup_config; end
7497
-
7498
- sig { void }
7499
- def setup_projects_pulled; end
7500
-
7501
- sig { void }
7502
- def sample_projects; end
7503
-
7504
- sig { params(workspace_gid: T.untyped).returns(T.untyped) }
7505
- def setup_projects_queried(workspace_gid: my_workspace_gid); end
7506
-
7507
- sig { params(options: T.untyped).void }
7508
- def expect_tasks_found(options:); end
7509
-
7510
- sig { params(options: T.untyped).void }
7511
- def mock_tasks_from_project(options:); end
7512
-
7513
- sig { void }
7514
- def test_tasks_from_project_not_only_uncompleted; end
7515
-
7516
- sig { void }
7517
- def test_tasks_from_project; end
7518
-
7519
- sig { void }
7520
- def test_active_tasks; end
7521
-
7522
- sig { void }
7523
- def setup_workspace_pulled; end
7524
-
7525
- sig { void }
7526
- def setup_user_task_list_pulled; end
7527
-
7528
- sig { void }
7529
- def mock_project_or_raise_unknown; end
7530
-
7531
- sig { void }
7532
- def test_project_or_raise_unknown; end
7533
-
7534
- sig { returns(T.untyped) }
7535
- def test_project_by_gid; end
7536
-
7537
- sig { void }
7538
- def test_project_or_raise_my_tasks; end
7539
-
7540
- sig { returns(T.untyped) }
7541
- def mock_project_my_tasks; end
7542
-
7543
- sig { void }
7544
- def test_project_my_tasks; end
7545
-
7546
- sig { returns(T.untyped) }
7547
- def test_project_to_h; end
7548
-
7549
- sig { returns(T.untyped) }
7550
- def mock_test_in_period; end
7551
-
7552
- sig { void }
7553
- def test_in_period; end
7554
-
7555
- sig { void }
7556
- def mock_project_ready; end
7557
-
7558
- sig { void }
7559
- def test_project_ready; end
7560
-
7561
- sig { void }
7562
- def class_under_test; end
7563
- end
7564
-
7565
- # Test the Checkoff::Sections class
7566
- class TestSections < BaseAsana
7567
7283
  extend Forwardable
7568
7284
  TIME_BY_PERIOD = T.let({
7569
7285
  two_am: '02:00:20',
@@ -7968,53 +7684,6 @@ end
7968
7684
  # Test the Checkoff::Workspaces class
7969
7685
  class TestWorkspaces < BaseAsana
7970
7686
  extend Forwardable
7971
- TIME_BY_PERIOD = T.let({
7972
- two_am: '02:00:20',
7973
- morning_during_breakfast: '07:30:20',
7974
- morning: '07:33:20',
7975
- eight_thirty_am: '8:30:00',
7976
- ten_am: '10:00:20',
7977
- mid_morning: '10:33:20',
7978
- eleven_thirty_am: '11:30:00',
7979
- afternoon: '14:33:20',
7980
- three_forty_five_pm: '15:45:20',
7981
- four_fifteen_pm: '16:15:20',
7982
- four_forty_five_pm: '16:45:20',
7983
- five_forty_five_pm: '17:45:20',
7984
- six_fifteen_pm: '18:15:00',
7985
- six_forty_five_pm: '18:45:00',
7986
- night: '19:00:20',
7987
- evening: '19:01:20',
7988
- late_evening: '21:33:20',
7989
- late_late_evening: '22:33:20',
7990
- }.freeze, T.untyped)
7991
-
7992
- sig { void }
7993
- def mock_workspace_or_raise_nil; end
7994
-
7995
- sig { void }
7996
- def test_workspace_or_raise_nil; end
7997
-
7998
- sig { void }
7999
- def mock_workspace_or_raise; end
8000
-
8001
- sig { void }
8002
- def test_workspace_or_raise; end
8003
-
8004
- sig { void }
8005
- def expect_default_workspace_gid_config_fetched; end
8006
-
8007
- sig { void }
8008
- def test_default_workspace_gid; end
8009
-
8010
- sig { void }
8011
- def test_default_workspace; end
8012
-
8013
- sig { void }
8014
- def class_under_test; end
8015
- end
8016
-
8017
- class TestAttachments < ClassTest
8018
7687
  extend Forwardable
8019
7688
 
8020
7689
  sig { params(url: T.untyped).void }
@@ -9283,3 +8952,27 @@ class TestAsanaEventFilter < ClassTest
9283
8952
  sig { void }
9284
8953
  def respond_like; end
9285
8954
  end
8955
+
8956
+ class TestPruneCheckoffRbiTestConstants < Minitest::Test
8957
+ SAMPLE = T.let(<<~RBI, T.untyped)
8958
+ module TestDate
8959
+ TIME_BY_PERIOD = T.let({ a: '1' }.freeze, T.untyped)
8960
+ end
8961
+
8962
+ class TestTasks < BaseAsana
8963
+ extend Forwardable
8964
+ TIME_BY_PERIOD = T.let({
8965
+ two_am: '02:00:20',
8966
+ }.freeze, T.untyped)
8967
+
8968
+ sig { void }
8969
+ def foo; end
8970
+ end
8971
+ RBI
8972
+
8973
+ sig { returns(T.untyped) }
8974
+ def test_prunes_subclass_constant; end
8975
+
8976
+ sig { returns(T.untyped) }
8977
+ def test_noop_when_nothing_to_prune; end
8978
+ end
data/sig/checkoff.rbs CHANGED
@@ -3598,6 +3598,20 @@ module Checkoff
3598
3598
  # sord warn - Asana::Client wasn't able to be resolved to a constant in this project
3599
3599
  attr_reader client: Asana::Client
3600
3600
  end
3601
+
3602
+ # Remove TIME_BY_PERIOD redeclarations Sord emits on BaseAsana test subclasses.
3603
+ module PruneRbiTestConstants
3604
+ SUBCLASSES: untyped
3605
+
3606
+ # _@param_ `klass`
3607
+ def self.pattern_for: (String klass) -> Regexp
3608
+
3609
+ # _@param_ `path`
3610
+ def self.call: (String path) -> void
3611
+
3612
+ # _@param_ `content`
3613
+ def self.prune_subclasses: (String content) -> String
3614
+ end
3601
3615
  end
3602
3616
 
3603
3617
  # include this to add ability to log at different levels
@@ -5161,4 +5175,12 @@ class TestAsanaEventFilter < ClassTest
5161
5175
  def respond_like_instance_of: () -> void
5162
5176
 
5163
5177
  def respond_like: () -> void
5178
+ end
5179
+
5180
+ class TestPruneCheckoffRbiTestConstants < Minitest::Test
5181
+ SAMPLE: untyped
5182
+
5183
+ def test_prunes_subclass_constant: () -> untyped
5184
+
5185
+ def test_noop_when_nothing_to_prune: () -> untyped
5164
5186
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: checkoff
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.247.0
4
+ version: 0.248.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vince Broz