Author: adrian
Date: Thu Feb  8 13:52:28 2018
New Revision: 324655

URL: http://llvm.org/viewvc/llvm-project?rev=324655&view=rev
Log:
Rewrite testcase to not depend on Foundation implementation details.

TODO: Add a separate testcase testing *only* Foundation implementation details!

<rdar://problem/37252738>

Added:
    
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/minmax.h
Modified:
    
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/Makefile
    
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/TestIncompleteModules.py
    
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/main.m
    
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/module.map
    
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/myModule.h
    
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/myModule.m

Modified: 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/Makefile
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/Makefile?rev=324655&r1=324654&r2=324655&view=diff
==============================================================================
--- 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/Makefile 
(original)
+++ 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/Makefile 
Thu Feb  8 13:52:28 2018
@@ -4,5 +4,5 @@ OBJC_SOURCES := main.m myModule.m
 
 include $(LEVEL)/Makefile.rules
 
-CFLAGS += $(MANDATORY_MODULE_BUILD_CFLAGS) -I$(PWD)
+CFLAGS += $(MANDATORY_MODULE_BUILD_CFLAGS)
 LDFLAGS += -framework Foundation

Modified: 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/TestIncompleteModules.py
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/TestIncompleteModules.py?rev=324655&r1=324654&r2=324655&view=diff
==============================================================================
--- 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/TestIncompleteModules.py
 (original)
+++ 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/TestIncompleteModules.py
 Thu Feb  8 13:52:28 2018
@@ -22,15 +22,12 @@ class IncompleteModulesTestCase(TestBase
         # Find the line number to break inside main().
         self.line = line_number('main.m', '// Set breakpoint 0 here.')
 
-    @skipIfDarwin
     @skipUnlessDarwin
-    @skipIf(macos_version=["<", "10.12"], debug_info=no_match(["gmodules"]))
+    @skipIf(debug_info=no_match(["gmodules"]))
     def test_expr(self):
         self.build()
         exe = self.getBuildArtifact("a.out")
         self.runCmd("file " + exe, CURRENT_EXECUTABLE_SET)
-
-        # Break inside the foo function which takes a bar_ptr argument.
         lldbutil.run_break_set_by_file_and_line(
             self, "main.m", self.line, num_expected_locations=1, 
loc_exact=True)
 
@@ -54,14 +51,14 @@ class IncompleteModulesTestCase(TestBase
                     substrs=["int", "3"])
 
         self.expect(
-            "expr [myObject privateMethod]",
+            "expr private_func()",
             VARIABLES_DISPLAYED_CORRECTLY,
             substrs=[
                 "int",
                 "5"])
 
-        self.expect("expr MIN(2,3)", "#defined macro was found",
+        self.expect("expr MY_MIN(2,3)", "#defined macro was found",
                     substrs=["int", "2"])
 
-        self.expect("expr MAX(2,3)", "#undefd macro was correcltly not found",
+        self.expect("expr MY_MAX(2,3)", "#undefd macro was correctly not 
found",
                     error=True)

Modified: 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/main.m
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/main.m?rev=324655&r1=324654&r2=324655&view=diff
==============================================================================
--- 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/main.m 
(original)
+++ 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/main.m 
Thu Feb  8 13:52:28 2018
@@ -1,11 +1,7 @@
-@import Foundation;
 @import myModule;
+@import minmax;
 
-int main()
-{
-    @autoreleasepool
-    {
-        MyClass *myObject = [MyClass alloc];
-        [myObject publicMethod]; // Set breakpoint 0 here.
-    }
+int main(int argc, char **argv) {
+  public_func(); // Set breakpoint 0 here.
+  return 0;
 }

Added: 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/minmax.h
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/minmax.h?rev=324655&view=auto
==============================================================================
--- 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/minmax.h 
(added)
+++ 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/minmax.h 
Thu Feb  8 13:52:28 2018
@@ -0,0 +1,2 @@
+#define MY_MIN(A, B) (((A) < (B)) ? (A) : (B))
+#define MY_MAX(A, B) (((A) < (B)) ? (B) : (A))

Modified: 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/module.map
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/module.map?rev=324655&r1=324654&r2=324655&view=diff
==============================================================================
--- 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/module.map
 (original)
+++ 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/module.map
 Thu Feb  8 13:52:28 2018
@@ -2,3 +2,8 @@ module myModule {
   header "myModule.h"
   export *
 }
+
+module minmax {
+  header "minmax.h"
+  export *
+}

Modified: 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/myModule.h
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/myModule.h?rev=324655&r1=324654&r2=324655&view=diff
==============================================================================
--- 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/myModule.h
 (original)
+++ 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/myModule.h
 Thu Feb  8 13:52:28 2018
@@ -1,8 +1,5 @@
-@import Foundation;
+@import minmax;
 
-#undef MAX
+#undef MY_MAX
 
-@interface MyClass : NSObject {
-};
--(void)publicMethod;
-@end
+extern void public_func();

Modified: 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/myModule.m
URL: 
http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/myModule.m?rev=324655&r1=324654&r2=324655&view=diff
==============================================================================
--- 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/myModule.m
 (original)
+++ 
lldb/trunk/packages/Python/lldbsuite/test/lang/objc/modules-incomplete/myModule.m
 Thu Feb  8 13:52:28 2018
@@ -1,14 +1,8 @@
 #include "myModule.h"
-#include "stdio.h"
 
-@implementation MyClass {
-};
--(void)publicMethod {
-  printf("Hello public!\n");
-}
--(int)privateMethod {
-  printf("Hello private!\n");
+void public_func() {}
+
+int private_func() {
   return 5;
 }
-@end
 


_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to