Some checks failed
Detach Plugins / check (FlyGrep.vim) (push) Has been cancelled
Detach Plugins / check (GitHub.vim) (push) Has been cancelled
Detach Plugins / check (JavaUnit.vim) (push) Has been cancelled
Detach Plugins / check (SourceCounter.vim) (push) Has been cancelled
Detach Plugins / check (cpicker.nvim) (push) Has been cancelled
Detach Plugins / check (dein-ui.vim) (push) Has been cancelled
Detach Plugins / check (git.vim) (push) Has been cancelled
Detach Plugins / check (iedit.vim) (push) Has been cancelled
Detach Plugins / check (scrollbar.vim) (push) Has been cancelled
Detach Plugins / check (vim-chat) (push) Has been cancelled
Detach Plugins / check (vim-cheat) (push) Has been cancelled
Detach Plugins / check (vim-todo) (push) Has been cancelled
Detach Plugins / check (xmake.vim) (push) Has been cancelled
test / Linux (nvim, nightly) (push) Has been cancelled
test / Linux (nvim, v0.3.8) (push) Has been cancelled
test / Linux (nvim, v0.4.0) (push) Has been cancelled
test / Linux (nvim, v0.4.2) (push) Has been cancelled
test / Linux (nvim, v0.4.3) (push) Has been cancelled
test / Linux (nvim, v0.4.4) (push) Has been cancelled
test / Linux (nvim, v0.5.0) (push) Has been cancelled
test / Linux (nvim, v0.5.1) (push) Has been cancelled
test / Linux (nvim, v0.6.0) (push) Has been cancelled
test / Linux (nvim, v0.6.1) (push) Has been cancelled
test / Linux (nvim, v0.7.0) (push) Has been cancelled
test / Linux (nvim, v0.7.2) (push) Has been cancelled
test / Linux (nvim, v0.8.0) (push) Has been cancelled
test / Linux (nvim, v0.8.1) (push) Has been cancelled
test / Linux (nvim, v0.8.2) (push) Has been cancelled
test / Linux (nvim, v0.8.3) (push) Has been cancelled
test / Linux (nvim, v0.9.0) (push) Has been cancelled
test / Linux (nvim, v0.9.1) (push) Has been cancelled
test / Linux (true, vim, v7.4.052) (push) Has been cancelled
test / Linux (true, vim, v7.4.1689) (push) Has been cancelled
test / Linux (true, vim, v7.4.629) (push) Has been cancelled
test / Linux (true, vim, v8.0.0027) (push) Has been cancelled
test / Linux (true, vim, v8.0.0183) (push) Has been cancelled
test / Linux (vim, nightly) (push) Has been cancelled
test / Linux (vim, v8.0.0184) (push) Has been cancelled
test / Linux (vim, v8.0.1453) (push) Has been cancelled
test / Linux (vim, v8.1.2269) (push) Has been cancelled
test / Linux (vim, v8.2.2434) (push) Has been cancelled
test / Linux (vim, v8.2.3995) (push) Has been cancelled
test / Windows (nvim, nightly) (push) Has been cancelled
test / Windows (nvim, v0.3.8) (push) Has been cancelled
test / Windows (nvim, v0.4.2) (push) Has been cancelled
test / Windows (nvim, v0.4.3) (push) Has been cancelled
test / Windows (nvim, v0.4.4) (push) Has been cancelled
test / Windows (nvim, v0.5.0) (push) Has been cancelled
test / Windows (nvim, v0.5.1) (push) Has been cancelled
test / Windows (nvim, v0.6.0) (push) Has been cancelled
test / Windows (nvim, v0.6.1) (push) Has been cancelled
test / Windows (nvim, v0.7.0) (push) Has been cancelled
test / Windows (nvim, v0.7.2) (push) Has been cancelled
test / Windows (nvim, v0.8.0) (push) Has been cancelled
test / Windows (nvim, v0.8.1) (push) Has been cancelled
test / Windows (nvim, v0.8.2) (push) Has been cancelled
test / Windows (nvim, v0.8.3) (push) Has been cancelled
test / Windows (nvim, v0.9.0) (push) Has been cancelled
test / Windows (nvim, v0.9.1) (push) Has been cancelled
test / Windows (vim, nightly) (push) Has been cancelled
test / Windows (vim, v7.4.1185) (push) Has been cancelled
test / Windows (vim, v7.4.1689) (push) Has been cancelled
test / Windows (vim, v8.0.0027) (push) Has been cancelled
test / Windows (vim, v8.0.1453) (push) Has been cancelled
test / Windows (vim, v8.1.2269) (push) Has been cancelled
test / Windows (vim, v8.2.2434) (push) Has been cancelled
test / Windows (vim, v8.2.3995) (push) Has been cancelled
docker / docker (push) Has been cancelled
mirror / check (coding) (push) Has been cancelled
mirror / check (gitee) (push) Has been cancelled
mirror / check (gitlab) (push) Has been cancelled
259 lines
3.4 KiB
Python
259 lines
3.4 KiB
Python
# goto command tests are different in syntax
|
|
|
|
definition = 3
|
|
#! 0 ['a = definition']
|
|
a = definition
|
|
|
|
#! []
|
|
b
|
|
#! ['a = definition']
|
|
a
|
|
|
|
b = a
|
|
c = b
|
|
#! ['c = b']
|
|
c
|
|
|
|
cd = 1
|
|
#! 1 ['cd = c']
|
|
cd = c
|
|
#! 0 ['cd = e']
|
|
cd = e
|
|
|
|
#! ['module math']
|
|
import math
|
|
#! ['module math']
|
|
math
|
|
|
|
#! ['module math']
|
|
b = math
|
|
#! ['b = math']
|
|
b
|
|
|
|
#! 18 ['foo = 10']
|
|
foo = 10;print(foo)
|
|
|
|
# -----------------
|
|
# classes
|
|
# -----------------
|
|
class C(object):
|
|
x = 3
|
|
def b(self):
|
|
#! ['b = math']
|
|
b
|
|
#! ['def b']
|
|
self.b
|
|
#! 14 ['def b']
|
|
self.b()
|
|
#! 14 ['def b']
|
|
self.b.
|
|
#! 11 ['param self']
|
|
self.b
|
|
#! ['x = 3']
|
|
self.x
|
|
#! 14 ['x = 3']
|
|
self.x.
|
|
return 1
|
|
|
|
#! ['def b']
|
|
b
|
|
|
|
#! ['b = math']
|
|
b
|
|
|
|
#! ['def b']
|
|
C.b
|
|
#! ['def b']
|
|
C().b
|
|
#! 0 ['class C']
|
|
C().b
|
|
#! 0 ['class C']
|
|
C().b
|
|
|
|
D = C
|
|
#! ['def b']
|
|
D.b
|
|
#! ['def b']
|
|
D().b
|
|
|
|
#! 0 ['D = C']
|
|
D().b
|
|
#! 0 ['D = C']
|
|
D().b
|
|
|
|
def c():
|
|
return ''
|
|
|
|
#! ['def c']
|
|
c
|
|
#! 0 ['def c']
|
|
c()
|
|
|
|
|
|
class ClassVar():
|
|
x = 3
|
|
|
|
#! ['x = 3']
|
|
ClassVar.x
|
|
#! ['x = 3']
|
|
ClassVar().x
|
|
|
|
# before assignments
|
|
#! 10 ['x = 3']
|
|
ClassVar.x = ''
|
|
#! 12 ['x = 3']
|
|
ClassVar().x = ''
|
|
|
|
# Recurring use of the same var name, github #315
|
|
def f(t=None):
|
|
#! 9 ['param t=None']
|
|
t = t or 1
|
|
|
|
|
|
class X():
|
|
pass
|
|
|
|
#! 3 []
|
|
X(foo=x)
|
|
|
|
|
|
# Multiple inheritance
|
|
class Foo:
|
|
def foo(self):
|
|
print("foo")
|
|
class Bar:
|
|
def bar(self):
|
|
print("bar")
|
|
class Baz(Foo, Bar):
|
|
def baz(self):
|
|
#! ['def foo']
|
|
super().foo
|
|
#! ['def bar']
|
|
super().bar
|
|
#! ['instance Foo']
|
|
super()
|
|
|
|
# -----------------
|
|
# imports
|
|
# -----------------
|
|
|
|
#! ['module import_tree']
|
|
import import_tree
|
|
#! ["a = ''"]
|
|
import_tree.a
|
|
|
|
#! ['module mod1']
|
|
import import_tree.mod1
|
|
#! ['module mod1']
|
|
from import_tree.mod1
|
|
#! ['a = 1']
|
|
import_tree.mod1.a
|
|
|
|
#! ['module pkg']
|
|
import import_tree.pkg
|
|
#! ['a = list']
|
|
import_tree.pkg.a
|
|
|
|
#! ['module mod1']
|
|
import import_tree.pkg.mod1
|
|
#! ['a = 1.0']
|
|
import_tree.pkg.mod1.a
|
|
#! ["a = ''"]
|
|
import_tree.a
|
|
|
|
#! ['module mod1']
|
|
from import_tree.pkg import mod1
|
|
#! ['a = 1.0']
|
|
mod1.a
|
|
|
|
#! ['module mod1']
|
|
from import_tree import mod1
|
|
#! ['a = 1']
|
|
mod1.a
|
|
|
|
#! ['a = 1.0']
|
|
from import_tree.pkg.mod1 import a
|
|
|
|
#! ['module os']
|
|
from .imports import os
|
|
|
|
#! ['some_variable = 1']
|
|
from . import some_variable
|
|
|
|
# -----------------
|
|
# anonymous classes
|
|
# -----------------
|
|
def func():
|
|
class A():
|
|
def b(self):
|
|
return 1
|
|
return A()
|
|
|
|
#! 8 ['def b']
|
|
func().b()
|
|
|
|
# -----------------
|
|
# on itself
|
|
# -----------------
|
|
|
|
#! 7 ['class ClassDef']
|
|
class ClassDef():
|
|
""" abc """
|
|
pass
|
|
|
|
# -----------------
|
|
# params
|
|
# -----------------
|
|
|
|
param = ClassDef
|
|
#! 8 ['param param']
|
|
def ab1(param): pass
|
|
#! 9 ['param param']
|
|
def ab2(param): pass
|
|
#! 11 ['param = ClassDef']
|
|
def ab3(a=param): pass
|
|
|
|
ab1(ClassDef);ab2(ClassDef);ab3(ClassDef)
|
|
|
|
# -----------------
|
|
# for loops
|
|
# -----------------
|
|
|
|
for i in range(1):
|
|
#! ['for i in range(1): i']
|
|
i
|
|
|
|
for key, value in [(1,2)]:
|
|
#! ['for key, value in [(1,2)]: key']
|
|
key
|
|
|
|
#! 4 ['for y in [1]: y']
|
|
for y in [1]:
|
|
#! ['for y in [1]: y']
|
|
y
|
|
|
|
# -----------------
|
|
# decorator
|
|
# -----------------
|
|
def dec(dec_param=3):
|
|
pass
|
|
|
|
#! 8 ['param dec_param=3']
|
|
@dec(dec_param=5)
|
|
def y():
|
|
pass
|
|
|
|
class ClassDec():
|
|
def class_func(func):
|
|
return func
|
|
|
|
#! 14 ['def class_func']
|
|
@ClassDec.class_func
|
|
def x():
|
|
pass
|
|
|
|
#! 2 ['class ClassDec']
|
|
@ClassDec.class_func
|
|
def z():
|
|
pass
|