@@ -134,37 +134,102 @@ let Foo() =
134134
135135[<TestFixture>]
136136type TestNoAsyncRunSynchronouslyInLibraryHeuristic () =
137+
138+ [<Test>]
139+ member this. ``Unlikely to be library if contains "tests " in name`` () =
140+ Assert.AreEqual(
141+ LibraryHeuristicResultByProjectName.Unlikely,
142+ howLikelyProjectIsLibrary " IntegrationTests"
143+ )
144+
145+ [<Test>]
146+ member this. ``Unlikely to be library if contains "testing " in name`` () =
147+ Assert.AreEqual(
148+ LibraryHeuristicResultByProjectName.Unlikely,
149+ howLikelyProjectIsLibrary " UnitTesting"
150+ )
151+
137152 [<Test>]
138153 member this. ``Unlikely to be library if contains "test " in name`` () =
139154 Assert.AreEqual(
140- howLikelyProjectIsLibrary " TestProject " ,
141- LibraryHeuristicResultByProjectName.Unlikely
155+ LibraryHeuristicResultByProjectName.Unlikely ,
156+ howLikelyProjectIsLibrary " TestSuite "
142157 )
143158
144159 [<Test>]
145160 member this. ``Unlikely to be library if contains "console " in name`` () =
146161 Assert.AreEqual(
147- howLikelyProjectIsLibrary " FooConsole " ,
148- LibraryHeuristicResultByProjectName.Unlikely
162+ LibraryHeuristicResultByProjectName.Unlikely ,
163+ howLikelyProjectIsLibrary " FooConsole "
149164 )
150165
151166 [<Test>]
152167 member this. ``Likely to be library if contains Contains "Lib " as a PascalCase segment`` () =
153168 Assert.AreEqual(
154- howLikelyProjectIsLibrary " LibFoo " ,
155- LibraryHeuristicResultByProjectName.Likely
169+ LibraryHeuristicResultByProjectName.Likely ,
170+ howLikelyProjectIsLibrary " LibFoo "
156171 )
157172
158173 [<Test>]
159174 member this. ``Uncertain if contains contains "Lib " but not as a PascalCase segment`` () =
160175 Assert.AreEqual(
161- howLikelyProjectIsLibrary " LibreOfficeProg " ,
162- LibraryHeuristicResultByProjectName.Uncertain
176+ LibraryHeuristicResultByProjectName.Uncertain ,
177+ howLikelyProjectIsLibrary " LibreOfficeProg "
163178 )
164179
165180 [<Test>]
166181 member this. ``Likely to be library if contains ends with "lib " ( case - insensitive ) ``() =
167182 Assert.AreEqual(
168- howLikelyProjectIsLibrary " FooLib" ,
169- LibraryHeuristicResultByProjectName.Likely
183+ LibraryHeuristicResultByProjectName.Likely,
184+ howLikelyProjectIsLibrary " FooLib"
185+ )
186+
187+ [<Test>]
188+ member this. ``Unlikely to be library if contains "CLI " in name`` () =
189+ Assert.AreEqual(
190+ LibraryHeuristicResultByProjectName.Unlikely,
191+ howLikelyProjectIsLibrary " FooCLI"
192+ )
193+
194+ [<Test>]
195+ member this. ``Uncertain to be library if contains "cli " in name not related to CLI`` () =
196+ Assert.AreEqual(
197+ LibraryHeuristicResultByProjectName.Uncertain,
198+ howLikelyProjectIsLibrary " InclinedDriver"
199+ )
200+
201+ [<Test>]
202+ member this. ``Unlikely to be library if contains "TUI " in name`` () =
203+ Assert.AreEqual(
204+ LibraryHeuristicResultByProjectName.Unlikely,
205+ howLikelyProjectIsLibrary " FooTUI"
206+ )
207+
208+ [<Test>]
209+ member this. ``Likely to be library if it starts with "lib ", e.g. camelCase`` () =
210+ Assert.AreEqual(
211+ LibraryHeuristicResultByProjectName.Likely,
212+ howLikelyProjectIsLibrary " libFoo"
213+ )
214+
215+ [<Test>]
216+ member this. ``Unlikely to be library if it contains "console ", but segments are separated by dots`` () =
217+ Assert.AreEqual(
218+ LibraryHeuristicResultByProjectName.Unlikely,
219+ howLikelyProjectIsLibrary " foo.console.app"
170220 )
221+
222+ [<Test>]
223+ member this. ``Unlikely to be library if it contains "console ", but segments are separated by dashes`` () =
224+ Assert.AreEqual(
225+ LibraryHeuristicResultByProjectName.Unlikely,
226+ howLikelyProjectIsLibrary " foo-console-app"
227+ )
228+
229+ [<Test>]
230+ member this. ``Unlikely to be library if it contains "console ", but segments are separated by underscores`` () =
231+ Assert.AreEqual(
232+ LibraryHeuristicResultByProjectName.Unlikely,
233+ howLikelyProjectIsLibrary " foo_console_app"
234+ )
235+
0 commit comments