fbe 0.0.60 → 0.0.61

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: 4933facacd974e44985f3931125665ab4456062b0f4a45faf3bdc6a970e42c21
4
- data.tar.gz: 53f0dde5e526aa66a703f8ee088ecd08e7aedb49d847b46c3b6a0080930509d6
3
+ metadata.gz: 714cfed283ff521d4b0c51a0520157a1663da7786a0665debdc835fefcb39ea2
4
+ data.tar.gz: 61e090588bc4b073e00a3f496e382545d9e5a04f73d36225474fbee69d8423b3
5
5
  SHA512:
6
- metadata.gz: 17c95861794f3865ecd9e5e5f1afe3863a7194393dce7fa7d1bd479455595ca563868819f2e7e445590ddc819f09907411923a4c21c65a26e7201165809270c4
7
- data.tar.gz: 2404df0f1d5514a696f8e6604fada7792f5ce8e605dec85f48938b831dc5cd833221137e5c907e233723b67d080d78d77a1bdbf38db37f4cbe06a54cb84e72f2
6
+ metadata.gz: f819bf9191c6f18fc5671578f3bb3368ff3a6220df378e6938d0412fbd088d3f41f17017d3bf5d1abb59fbda12b06df99fd984769931ab7d558a31cfa1a1cd71
7
+ data.tar.gz: cf1a95c3f4ecbb8ed0a4c0bf644e2b2e286a0d041a8db93781bdf40280097f7ba5c2f6b21a891807067a2a92ee999a2f335bc255d58cbeaeeb2c63129b08adcd
data/lib/fbe/octo.rb CHANGED
@@ -541,6 +541,64 @@ class Fbe::FakeOctokit
541
541
  changed_files: 2
542
542
  }
543
543
  }
544
+ },
545
+ {
546
+ id: 43,
547
+ created_at: Time.now,
548
+ actor: { id: 42 },
549
+ type: 'PullRequestEvent',
550
+ repo: { id: repo },
551
+ payload: {
552
+ action: 'closed',
553
+ number: 172,
554
+ ref_type: 'tag',
555
+ ref: 'foo',
556
+ pull_request: {
557
+ url: 'https://api.github.com/repos/yegor256/judges/pulls/93',
558
+ id: 1_990_323_142,
559
+ node_id: 'PR_kwDOL6GCO852oevG',
560
+ number: 172,
561
+ state: 'closed',
562
+ locked: false,
563
+ title: '#999 new feature',
564
+ user: {
565
+ login: 'test',
566
+ id: 88_084_038,
567
+ node_id: 'MDQ6VXNlcjE2NDYwMjA=',
568
+ type: 'User',
569
+ site_admin: false
570
+ },
571
+ base: {
572
+ label: 'zerocracy:master',
573
+ ref: 'master',
574
+ user: {
575
+ login: 'zerocracy',
576
+ id: 24_234_201
577
+ },
578
+ repo: {
579
+ id: repo,
580
+ node_id: 'R_kgDOK2_4Aw',
581
+ name: 'judges-action',
582
+ full_name: 'zerocracy/judges-action',
583
+ private: false,
584
+ owner: {
585
+ login: 'zerocracy'
586
+ }
587
+ }
588
+ },
589
+ head: {
590
+ ref: 'zerocracy/judges-action',
591
+ sha: '74d0c234967de0f690805c6943e78db42a294c1a'
592
+ },
593
+ merged_at: Time.now,
594
+ comments: 2,
595
+ review_comments: 2,
596
+ commits: 1,
597
+ additions: 3,
598
+ deletions: 3,
599
+ changed_files: 2
600
+ }
601
+ }
544
602
  }
545
603
  ]
546
604
  end
@@ -691,65 +749,166 @@ class Fbe::FakeOctokit
691
749
  ]
692
750
  end
693
751
 
694
- def check_runs_for_ref(_repo, sha)
695
- {
696
- total_count: 7,
697
- check_runs: [
698
- {
699
- id: 28_907_016_501,
700
- name: 'make',
701
- head_sha: sha,
702
- started_at: '2024-08-18T08:04:44Z',
703
- completed_at: '2024-08-18T08:20:17Z'
704
- },
705
- {
706
- id: 28_906_596_603,
707
- name: 'copyrights',
708
- head_sha: sha,
709
- started_at: '2024-08-18T08:04:44Z',
710
- completed_at: '2024-08-18T08:20:17Z'
711
- },
712
- {
713
- id: 28_906_596_550,
714
- name: 'markdown-lint',
715
- head_sha: sha,
716
- started_at: '2024-08-18T08:04:44Z',
717
- completed_at: '2024-08-18T08:20:17Z'
718
- },
719
- {
720
- id: 28_906_596_483,
721
- name: 'pdd',
722
- head_sha: sha,
723
- started_at: '2024-08-18T08:04:44Z',
724
- completed_at: '2024-08-18T08:20:17Z'
725
- },
726
- {
727
- id: 28_906_596_433,
728
- name: 'rake',
729
- head_sha: sha,
730
- started_at: '2024-08-18T08:04:44Z',
731
- completed_at: '2024-08-18T08:20:17Z'
732
- },
733
- {
734
- id: 28_906_596_405,
735
- name: 'shellcheck',
736
- head_sha: sha,
737
- started_at: '2024-08-18T08:04:44Z',
738
- completed_at: '2024-08-18T08:20:17Z'
739
- },
740
- {
741
- id: 28_906_596_379,
742
- name: 'yamllint',
743
- head_sha: sha,
744
- started_at: '2024-08-18T08:04:44Z',
745
- completed_at: '2024-08-18T08:20:17Z'
746
- }
747
- ]
752
+ def check_runs_for_ref(repo, sha)
753
+ data = {
754
+ 'zerocracy/baza' => {
755
+ total_count: 7,
756
+ check_runs: [
757
+ {
758
+ id: 28_907_016_501,
759
+ name: 'make',
760
+ head_sha: sha,
761
+ started_at: '2024-08-18T08:04:44Z',
762
+ completed_at: '2024-08-18T08:20:17Z',
763
+ app: {
764
+ slug: 'github-actions'
765
+ }
766
+ },
767
+ {
768
+ id: 28_906_596_603,
769
+ name: 'copyrights',
770
+ head_sha: sha,
771
+ started_at: '2024-08-18T08:04:44Z',
772
+ completed_at: '2024-08-18T08:20:17Z',
773
+ app: {
774
+ slug: 'github-actions'
775
+ }
776
+ },
777
+ {
778
+ id: 28_906_596_550,
779
+ name: 'markdown-lint',
780
+ head_sha: sha,
781
+ started_at: '2024-08-18T08:04:44Z',
782
+ completed_at: '2024-08-18T08:20:17Z',
783
+ app: {
784
+ slug: 'github-actions'
785
+ }
786
+ },
787
+ {
788
+ id: 28_906_596_483,
789
+ name: 'pdd',
790
+ head_sha: sha,
791
+ started_at: '2024-08-18T08:04:44Z',
792
+ completed_at: '2024-08-18T08:20:17Z',
793
+ app: {
794
+ slug: 'github-actions'
795
+ }
796
+ },
797
+ {
798
+ id: 28_906_596_433,
799
+ name: 'rake',
800
+ head_sha: sha,
801
+ started_at: '2024-08-18T08:04:44Z',
802
+ completed_at: '2024-08-18T08:20:17Z',
803
+ app: {
804
+ slug: 'github-actions'
805
+ }
806
+ },
807
+ {
808
+ id: 28_906_596_405,
809
+ name: 'shellcheck',
810
+ head_sha: sha,
811
+ started_at: '2024-08-18T08:04:44Z',
812
+ completed_at: '2024-08-18T08:20:17Z',
813
+ app: {
814
+ slug: 'github-actions'
815
+ }
816
+ },
817
+ {
818
+ id: 28_906_596_379,
819
+ name: 'yamllint',
820
+ head_sha: sha,
821
+ started_at: '2024-08-18T08:04:44Z',
822
+ completed_at: '2024-08-18T08:20:17Z',
823
+ app: {
824
+ slug: 'github-actions'
825
+ }
826
+ }
827
+ ]
828
+ },
829
+ 'zerocracy/judges-action' => {
830
+ total_count: 7,
831
+ check_runs: [
832
+ {
833
+ id: 28_907_016_501,
834
+ name: 'Codacy Static Code Analysis',
835
+ head_sha: sha,
836
+ started_at: '2024-08-18T08:04:44Z',
837
+ completed_at: '2024-08-18T08:20:17Z',
838
+ app: {
839
+ slug: 'codacy-production'
840
+ }
841
+ },
842
+ {
843
+ id: 28_906_596_603,
844
+ name: 'copyrights',
845
+ head_sha: sha,
846
+ started_at: '2024-08-18T08:04:44Z',
847
+ completed_at: '2024-08-18T08:20:17Z',
848
+ app: {
849
+ slug: 'github-actions'
850
+ }
851
+ },
852
+ {
853
+ id: 28_906_596_550,
854
+ name: 'markdown-lint',
855
+ head_sha: sha,
856
+ started_at: '2024-08-18T08:04:44Z',
857
+ completed_at: '2024-08-18T08:20:17Z',
858
+ app: {
859
+ slug: 'github-actions'
860
+ }
861
+ },
862
+ {
863
+ id: 28_906_596_483,
864
+ name: 'pdd',
865
+ head_sha: sha,
866
+ started_at: '2024-08-18T08:04:44Z',
867
+ completed_at: '2024-08-18T08:20:17Z',
868
+ app: {
869
+ slug: 'github-actions'
870
+ }
871
+ },
872
+ {
873
+ id: 28_906_596_433,
874
+ name: 'rake',
875
+ head_sha: sha,
876
+ started_at: '2024-08-18T08:04:44Z',
877
+ completed_at: '2024-08-18T08:20:17Z',
878
+ app: {
879
+ slug: 'github-actions'
880
+ }
881
+ },
882
+ {
883
+ id: 28_906_596_405,
884
+ name: 'shellcheck',
885
+ head_sha: sha,
886
+ started_at: '2024-08-18T08:04:44Z',
887
+ completed_at: '2024-08-18T08:20:17Z',
888
+ app: {
889
+ slug: 'github-actions'
890
+ }
891
+ },
892
+ {
893
+ id: 28_906_596_379,
894
+ name: 'yamllint',
895
+ head_sha: sha,
896
+ started_at: '2024-08-18T08:04:44Z',
897
+ completed_at: '2024-08-18T08:20:17Z',
898
+ app: {
899
+ slug: 'github-actions'
900
+ }
901
+ }
902
+ ]
903
+ }
748
904
  }
905
+ data.fetch(repo) do
906
+ { total_count: 0, check_runs: [] }
907
+ end
749
908
  end
750
909
 
751
910
  def workflow_run_job(_repo, job)
752
- result = [
911
+ [
753
912
  {
754
913
  id: 28_907_016_501,
755
914
  run_id: 10_438_531_072,
@@ -799,12 +958,17 @@ class Fbe::FakeOctokit
799
958
  started_at: '2024-08-18T08:04:44Z',
800
959
  completed_at: '2024-08-18T08:20:17Z'
801
960
  }
802
- ].select { |json| json[:id] == job }
803
- result.first
961
+ ].select { |json| json[:id] == job }.first || {
962
+ id: job,
963
+ run_id: 1234,
964
+ name: 'run job',
965
+ started_at: '2024-08-18T08:04:44Z',
966
+ completed_at: '2024-08-18T08:20:17Z'
967
+ }
804
968
  end
805
969
 
806
970
  def workflow_run(repo, id)
807
- runs = [
971
+ [
808
972
  {
809
973
  id: 10_438_531_072,
810
974
  event: 'pull_request',
@@ -861,22 +1025,17 @@ class Fbe::FakeOctokit
861
1025
  started_at: '2024-08-18T08:04:44Z',
862
1026
  completed_at: '2024-08-18T08:20:17Z'
863
1027
  }
864
- ].select { |json| json[:id] == id }
865
- if runs.first.nil?
866
- {
867
- id:,
868
- name: 'copyrights',
869
- head_branch: 'master',
870
- head_sha: '7d34c53e6743944dbf6fc729b1066bcbb3b18443',
871
- event: 'push',
872
- status: 'completed',
873
- conclusion: 'success',
874
- workflow_id: id,
875
- created_at: random_time,
876
- repository: repository(repo)
877
- }
878
- else
879
- runs.first
880
- end
1028
+ ].select { |json| json[:id] == id }.first || {
1029
+ id:,
1030
+ name: 'copyrights',
1031
+ head_branch: 'master',
1032
+ head_sha: '7d34c53e6743944dbf6fc729b1066bcbb3b18443',
1033
+ event: 'push',
1034
+ status: 'completed',
1035
+ conclusion: 'success',
1036
+ workflow_id: id,
1037
+ created_at: random_time,
1038
+ repository: repository(repo)
1039
+ }
881
1040
  end
882
1041
  end
data/lib/fbe.rb CHANGED
@@ -27,5 +27,5 @@
27
27
  # License:: MIT
28
28
  module Fbe
29
29
  # Current version of the gem (changed by .rultor.yml on every release)
30
- VERSION = '0.0.60'
30
+ VERSION = '0.0.61'
31
31
  end
@@ -162,4 +162,40 @@ class TestOcto < Minitest::Test
162
162
  end
163
163
  assert_in_delta(pause, Time.now - start_time, 1)
164
164
  end
165
+
166
+ def test_fetches_fake_check_runs_for_ref
167
+ WebMock.disable_net_connect!
168
+ o = Fbe.octo(loog: Loog::NULL, global: {}, options: Judges::Options.new({ 'testing' => true }))
169
+ sha = 'f2ca1bb6c7e907d06'
170
+ result = o.check_runs_for_ref('zerocracy/baza', sha)
171
+ assert_equal(7, result[:total_count])
172
+ assert_equal(7, result[:check_runs].count)
173
+ result = o.check_runs_for_ref('zerocracy/judges-action', sha)
174
+ assert_equal(7, result[:total_count])
175
+ assert_equal(7, result[:check_runs].count)
176
+ result = o.check_runs_for_ref('zerocracy/something', sha)
177
+ assert_equal(0, result[:total_count])
178
+ assert_instance_of(Array, result[:check_runs])
179
+ assert_equal(0, result[:check_runs].count)
180
+ end
181
+
182
+ def test_fetches_fake_workflow_run
183
+ WebMock.disable_net_connect!
184
+ o = Fbe.octo(loog: Loog::NULL, global: {}, options: Judges::Options.new({ 'testing' => true }))
185
+ id = 10_438_531_072
186
+ result = o.workflow_run('zerocracy/baza', id)
187
+ assert_equal(id, result[:id])
188
+ result = o.workflow_run('zerocracy/baza', 0)
189
+ assert_equal(0, result[:id])
190
+ end
191
+
192
+ def test_fetches_fake_workflow_run_job
193
+ WebMock.disable_net_connect!
194
+ o = Fbe.octo(loog: Loog::NULL, global: {}, options: Judges::Options.new({ 'testing' => true }))
195
+ id = 28_906_596_433
196
+ result = o.workflow_run_job('zerocracy/baza', id)
197
+ assert_equal(id, result[:id])
198
+ result = o.workflow_run_job('zerocracy/baza', 0)
199
+ assert_equal(0, result[:id])
200
+ end
165
201
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fbe
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.60
4
+ version: 0.0.61
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yegor Bugayenko
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-08-22 00:00:00.000000000 Z
11
+ date: 2024-08-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: backtrace