Issue #21217: inspect.getsourcelines() now tries to compute the start and
end lines from the code object, fixing an issue when a lambda function is
used as decorator argument.  Patch by Thomas Ballinger.
diff --git a/Lib/test/test_inspect.py b/Lib/test/test_inspect.py
index 76f2b47..9e1f546 100644
--- a/Lib/test/test_inspect.py
+++ b/Lib/test/test_inspect.py
@@ -392,6 +392,9 @@
         finally:
             linecache.getlines = getlines
 
+    def test_getsource_on_code_object(self):
+        self.assertSourceEqual(mod.eggs.__code__, 12, 18)
+
 class TestDecorators(GetSourceBase):
     fodderModule = mod2
 
@@ -402,7 +405,10 @@
         self.assertSourceEqual(mod2.gone, 9, 10)
 
     def test_getsource_unwrap(self):
-        self.assertSourceEqual(mod2.real, 122, 124)
+        self.assertSourceEqual(mod2.real, 130, 132)
+
+    def test_decorator_with_lambda(self):
+        self.assertSourceEqual(mod2.func114, 113, 115)
 
 class TestOneliners(GetSourceBase):
     fodderModule = mod2
@@ -497,6 +503,9 @@
             self.assertRaises(IOError, inspect.findsource, co)
             self.assertRaises(IOError, inspect.getsource, co)
 
+    def test_getsource_on_method(self):
+        self.assertSourceEqual(mod2.ClassWithMethod.method, 118, 119)
+
 class TestNoEOL(GetSourceBase):
     def __init__(self, *args, **kwargs):
         self.tempdir = TESTFN + '_dir'