@@ -222,6 +222,58 @@ public void ConfigureAppFrame_WithDefaultOptions_RecognizesSentryInternalFrame()
222222 Assert . False ( sut . InApp ) ;
223223 }
224224
225+ [ Fact ]
226+ public void ConfigureAppFrame_WithDefaultOptions_NotBuiltInIgnoredMarkedAsInApp ( )
227+ {
228+ var options = new SentryOptions ( ) ;
229+ var sut = new SentryStackFrame
230+ {
231+ Function = "async void MainActivity.OnCreate(Bundle savedInstanceState)+(?) =\\ u003E { }" ,
232+ Package = "SymbolCollector.Android, Version=1.23.0.0, Culture=neutral, PublicKeyToken=null"
233+ } ;
234+
235+ // Act
236+ sut . ConfigureAppFrame ( options ) ;
237+
238+ // Assert
239+ Assert . True ( sut . InApp ) ;
240+ }
241+
242+ [ Fact ]
243+ public void ConfigureAppFrame_WithDefaultOptions_JavaPackageNotInApp ( )
244+ {
245+ var options = new SentryOptions ( ) ;
246+ var sut = new SentryStackFrame
247+ {
248+ Function = "void StaticMethods.CallStaticVoidMethod(JniObjectReference, JniMethodInfo, JniArgumentValue*)" ,
249+ Package = "Java.Interop, Version=9.0.0.0, Culture=neutral, PublicKeyToken=84e04ff9cfb79065"
250+ } ;
251+
252+ // Act
253+ sut . ConfigureAppFrame ( options ) ;
254+
255+ // Assert
256+ Assert . False ( sut . InApp ) ;
257+ }
258+
259+ [ Fact ]
260+ public void ConfigureAppFrame_WithDefaultOptions_SystemPackageNotInApp ( )
261+ {
262+ var options = new SentryOptions ( ) ;
263+ var sut = new SentryStackFrame
264+ {
265+ Function = "void Interop.ThrowExceptionForIoErrno(ErrorInfo errorInfo, string path, bool isDirError)" ,
266+ Package = "System.Private.CoreLib, Version=9.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e" ,
267+ FileName = "Interop.IOErrors.cs" ,
268+ } ;
269+
270+ // Act
271+ sut . ConfigureAppFrame ( options ) ;
272+
273+ // Assert
274+ Assert . False ( sut . InApp ) ;
275+ }
276+
225277 [ Fact ]
226278 public void ConfigureAppFrame_InAppAlreadySet_InAppIgnored ( )
227279 {
0 commit comments