diff --git a/packages/Python/lldbsuite/test/lang/swift/partially_generic_func/continuations/TestSwiftPartiallyGenericFuncContinuation.py b/packages/Python/lldbsuite/test/lang/swift/partially_generic_func/continuations/TestSwiftPartiallyGenericFuncContinuation.py
index 746b469..a118253 100644
--- a/packages/Python/lldbsuite/test/lang/swift/partially_generic_func/continuations/TestSwiftPartiallyGenericFuncContinuation.py
+++ b/packages/Python/lldbsuite/test/lang/swift/partially_generic_func/continuations/TestSwiftPartiallyGenericFuncContinuation.py
@@ -13,4 +13,4 @@
 import lldbsuite.test.lldbtest as lldbtest
 from lldbsuite.test import decorators
 
-lldbinline.MakeInlineTest(__file__, globals(),lldbinline.expectedFailureAll(bugnumber="rdar://33857901"))
+lldbinline.MakeInlineTest(__file__, globals())
diff --git a/packages/Python/lldbsuite/test/lang/swift/stepping/TestSwiftStepping.py b/packages/Python/lldbsuite/test/lang/swift/stepping/TestSwiftStepping.py
index cd2aefc..45174f8 100644
--- a/packages/Python/lldbsuite/test/lang/swift/stepping/TestSwiftStepping.py
+++ b/packages/Python/lldbsuite/test/lang/swift/stepping/TestSwiftStepping.py
@@ -20,7 +20,6 @@
 import platform
 import unittest2
 
-
 class TestSwiftStepping(lldbtest.TestBase):
 
     mydir = lldbtest.TestBase.compute_mydir(__file__)
@@ -298,6 +297,12 @@
 
         if stop_on_caller or stop_at_cd_maker:
             thread.StepOver()
+
+        # Step over the assignment.
+        stop_on_partial_apply = self.hit_correct_line(thread, "var cd_maker =", False)
+        if stop_on_partial_apply:
+            thread.StepOver()
+
         self.hit_correct_line(thread, "doSomethingWithFunction(cd_maker, 10)")
 
         thread.StepInto()
diff --git a/packages/Python/lldbsuite/test/lang/swift/struct_change_rerun/TestSwiftStructChangeRerun.py b/packages/Python/lldbsuite/test/lang/swift/struct_change_rerun/TestSwiftStructChangeRerun.py
index c29f3d9..2221f45 100644
--- a/packages/Python/lldbsuite/test/lang/swift/struct_change_rerun/TestSwiftStructChangeRerun.py
+++ b/packages/Python/lldbsuite/test/lang/swift/struct_change_rerun/TestSwiftStructChangeRerun.py
@@ -103,7 +103,6 @@
         process = target.LaunchSimple(None, None, os.getcwd())
 
         self.assertTrue(process, PROCESS_IS_VALID)
-
         # Frame #0 should be at our breakpoint.
         threads = lldbutil.get_threads_stopped_at_breakpoint(
             process, breakpoint)
