@@ -31,22 +31,25 @@ func Test_shouldRun(t *testing.T) {
3131 testTables := []struct {
3232 testName string
3333 ruleProjectType projecttype.Type
34+ ruleSuperprojectType projecttype.Type
3435 projectType projecttype.Type
36+ superprojectType projecttype.Type
3537 disableModes []rulemode.Type
3638 enableModes []rulemode.Type
3739 libraryManagerSetting string
3840 complianceSetting string
3941 shouldRunAssertion assert.BoolAssertionFunc
4042 errorAssertion assert.ErrorAssertionFunc
4143 }{
42- {"Project type mismatch" , projecttype .Library , projecttype .Sketch , []rulemode.Type {}, []rulemode.Type {}, "false" , "specification" , assert .False , assert .NoError },
43- {"Disable mode match" , projecttype .Library , projecttype .Library , []rulemode.Type {rulemode .LibraryManagerSubmission }, []rulemode.Type {}, "submit" , "specification" , assert .False , assert .NoError },
44- {"Enable mode match" , projecttype .Library , projecttype .Library , []rulemode.Type {}, []rulemode.Type {rulemode .LibraryManagerSubmission }, "submit" , "specification" , assert .True , assert .NoError },
45- {"Disable mode default" , projecttype .Library , projecttype .Library , []rulemode.Type {rulemode .Default }, []rulemode.Type {rulemode .LibraryManagerSubmission }, "update" , "specification" , assert .False , assert .NoError },
46- {"Disable mode default override" , projecttype .Library , projecttype .Library , []rulemode.Type {rulemode .Default }, []rulemode.Type {rulemode .LibraryManagerSubmission }, "submit" , "specification" , assert .True , assert .NoError },
47- {"Enable mode default" , projecttype .Library , projecttype .Library , []rulemode.Type {rulemode .LibraryManagerSubmission }, []rulemode.Type {rulemode .Default }, "update" , "specification" , assert .True , assert .NoError },
48- {"Enable mode default override" , projecttype .Library , projecttype .Library , []rulemode.Type {rulemode .LibraryManagerSubmission }, []rulemode.Type {rulemode .Default }, "submit" , "specification" , assert .False , assert .NoError },
49- {"Unable to resolve" , projecttype .Library , projecttype .Library , []rulemode.Type {rulemode .LibraryManagerSubmission }, []rulemode.Type {rulemode .LibraryManagerIndexed }, "false" , "specification" , assert .False , assert .Error },
44+ {"Project type mismatch" , projecttype .Library , projecttype .All , projecttype .Sketch , projecttype .Sketch , []rulemode.Type {}, []rulemode.Type {}, "false" , "specification" , assert .False , assert .NoError },
45+ {"Superproject type mismatch" , projecttype .Sketch , projecttype .Library , projecttype .Sketch , projecttype .Sketch , []rulemode.Type {}, []rulemode.Type {}, "false" , "specification" , assert .False , assert .NoError },
46+ {"Disable mode match" , projecttype .Library , projecttype .All , projecttype .Library , projecttype .Library , []rulemode.Type {rulemode .LibraryManagerSubmission }, []rulemode.Type {}, "submit" , "specification" , assert .False , assert .NoError },
47+ {"Enable mode match" , projecttype .Library , projecttype .All , projecttype .Library , projecttype .Library , []rulemode.Type {}, []rulemode.Type {rulemode .LibraryManagerSubmission }, "submit" , "specification" , assert .True , assert .NoError },
48+ {"Disable mode default" , projecttype .Library , projecttype .All , projecttype .Library , projecttype .Library , []rulemode.Type {rulemode .Default }, []rulemode.Type {rulemode .LibraryManagerSubmission }, "update" , "specification" , assert .False , assert .NoError },
49+ {"Disable mode default override" , projecttype .Library , projecttype .All , projecttype .Library , projecttype .Library , []rulemode.Type {rulemode .Default }, []rulemode.Type {rulemode .LibraryManagerSubmission }, "submit" , "specification" , assert .True , assert .NoError },
50+ {"Enable mode default" , projecttype .Library , projecttype .All , projecttype .Library , projecttype .Library , []rulemode.Type {rulemode .LibraryManagerSubmission }, []rulemode.Type {rulemode .Default }, "update" , "specification" , assert .True , assert .NoError },
51+ {"Enable mode default override" , projecttype .Library , projecttype .All , projecttype .Library , projecttype .Library , []rulemode.Type {rulemode .LibraryManagerSubmission }, []rulemode.Type {rulemode .Default }, "submit" , "specification" , assert .False , assert .NoError },
52+ {"Unable to resolve" , projecttype .Library , projecttype .All , projecttype .Library , projecttype .Library , []rulemode.Type {rulemode .LibraryManagerSubmission }, []rulemode.Type {rulemode .LibraryManagerIndexed }, "false" , "specification" , assert .False , assert .Error },
5053 }
5154
5255 flags := test .ConfigurationFlags ()
@@ -58,13 +61,15 @@ func Test_shouldRun(t *testing.T) {
5861 configuration .Initialize (flags , []string {"/foo" })
5962
6063 ruleConfiguration := ruleconfiguration.Type {
61- ProjectType : testTable .ruleProjectType ,
62- DisableModes : testTable .disableModes ,
63- EnableModes : testTable .enableModes ,
64+ ProjectType : testTable .ruleProjectType ,
65+ SuperprojectType : testTable .ruleSuperprojectType ,
66+ DisableModes : testTable .disableModes ,
67+ EnableModes : testTable .enableModes ,
6468 }
6569
6670 project := project.Type {
67- ProjectType : testTable .projectType ,
71+ ProjectType : testTable .projectType ,
72+ SuperprojectType : testTable .superprojectType ,
6873 }
6974 run , err := shouldRun (ruleConfiguration , project )
7075 testTable .errorAssertion (t , err , testTable .testName )
0 commit comments