@@ -29,7 +29,7 @@ def test_deploy_key_present
2929
3030 def test_main_present
3131 actual = @obj . branch_exist? ( 'main' )
32- assert ( actual , 'Branch nain is not present' )
32+ assert ( actual , 'Branch main is not present' )
3333 end
3434
3535 def test_main_protected
@@ -66,31 +66,43 @@ def test_codeowners_not_present_develop
6666 end
6767
6868 def test_deny_merge_main
69- actual = @obj . rules_required_pull_request_reviews ( 'main' )
70- assert_not_nil ( actual , 'We should not allow merge to main branch without PR' )
69+ classic_rules = @obj . rules_required_pull_request_reviews ( 'main' )
70+ rulesets = @obj . get_branch_ruleset ( 'main' )
71+ rulesets_rules = rulesets &.find { |rule | rule [ 'type' ] == 'pull_request' }
72+ assert_not_nil ( classic_rules || rulesets_rules , 'We should not allow merge to main branch without PR' )
7173 end
7274
7375 def test_deny_merge_develop
74- actual = @obj . rules_required_pull_request_reviews ( 'develop' )
75- assert_not_nil ( actual , 'We should not allow merge to develop branch without PR ' )
76+ classic_rules = @obj . rules_required_pull_request_reviews ( 'develop' )
77+ rulesets = @obj . get_branch_ruleset ( 'develop' )
78+ rulesets_rules = rulesets &.find { |rule | rule [ 'type' ] == 'pull_request' }
79+ assert_not_nil ( classic_rules || rulesets_rules , 'We should not allow merge to develop branch without PR ' )
7680 end
7781
7882 def test_2_approvals_develop
79- actual = @obj . rules_required_pull_request_reviews ( 'develop' ) . nil? || @obj . rules_required_pull_request_reviews ( 'develop' ) [ "required_approving_review_count" ]
83+ classic_required_approving_review_count = @obj . rules_required_pull_request_reviews ( 'develop' ) . nil? || @obj . rules_required_pull_request_reviews ( 'develop' ) [ "required_approving_review_count" ]
84+ pull_request_rulesets_rules = @obj . get_branch_ruleset ( 'develop' )
85+ rulesets_required_approving_review_count = pull_request_rulesets_rules &.find { |rule | rule [ 'type' ] == 'pull_request' } &.[]( 'parameters' ) &.[]( 'required_approving_review_count' )
8086 expected = 2
81- assert_equal ( expected , actual , 'We should have 2 approvals before merge to develop branch' )
87+ required_approving_review_count = classic_required_approving_review_count == expected || rulesets_required_approving_review_count == expected
88+ assert_true ( required_approving_review_count , 'We should have 2 approvals before merge to develop branch' )
8289 end
8390
8491 def test_without_approval_main
85- actual = @obj . rules_required_pull_request_reviews ( 'main' ) . nil? || @obj . rules_required_pull_request_reviews ( 'main' ) [ "required_approving_review_count" ]
92+ classic_required_approving_review_count = @obj . rules_required_pull_request_reviews ( 'main' ) . nil? || @obj . rules_required_pull_request_reviews ( 'main' ) [ "required_approving_review_count" ]
93+ pull_request_rulesets_rules = @obj . get_branch_ruleset ( 'main' )
94+ rulesets_required_approving_review_count = pull_request_rulesets_rules &.find { |rule | rule [ 'type' ] == 'pull_request' } &.[]( 'parameters' ) &.[]( 'required_approving_review_count' )
8695 expected = 0
87- assert_equal ( expected , actual , 'We shouldn\'t have any approvals before merge to main branch' )
96+ required_approving_review_count = classic_required_approving_review_count == expected || rulesets_required_approving_review_count == expected
97+ assert_true ( required_approving_review_count , 'We shouldn\'t have any approvals before merge to main branch' )
8898 end
8999
90100 def test_approve_from_user
91101 user_name = 'online-marathon'
92- actual = @obj . rules_required_pull_request_reviews ( 'develop' ) . nil? || @obj . rules_required_pull_request_reviews ( 'develop' ) [ "require_code_owner_reviews" ]
93- assert_not_nil ( actual , "We should not allow merge to main branch without approve from #{ user_name } " )
102+ classic_require_code_owner_review = @obj . rules_required_pull_request_reviews ( 'main' ) . nil? || @obj . rules_required_pull_request_reviews ( 'develop' ) [ "require_code_owner_reviews" ]
103+ pull_request_rulesets_rules = @obj . get_branch_ruleset ( 'main' )
104+ rulesets_require_code_owner_review = pull_request_rulesets_rules &.find { |rule | rule [ 'type' ] == 'pull_request' } &.[]( 'parameters' ) &.[]( 'require_code_owner_review' )
105+ assert_not_nil ( classic_require_code_owner_review || rulesets_require_code_owner_review , "We should not allow merge to main branch without approve from #{ user_name } " )
94106 end
95107
96108 def test_PR_template_present
0 commit comments