diff options
| author | Devtools Arcadia <[email protected]> | 2022-02-07 18:08:42 +0300 | 
|---|---|---|
| committer | Devtools Arcadia <[email protected]> | 2022-02-07 18:08:42 +0300 | 
| commit | 1110808a9d39d4b808aef724c861a2e1a38d2a69 (patch) | |
| tree | e26c9fed0de5d9873cce7e00bc214573dc2195b7 /library/python/svn_version | |
intermediate changes
ref:cde9a383711a11544ce7e107a78147fb96cc4029
Diffstat (limited to 'library/python/svn_version')
| -rw-r--r-- | library/python/svn_version/__init__.py | 1 | ||||
| -rw-r--r-- | library/python/svn_version/__svn_version.pyx | 35 | ||||
| -rw-r--r-- | library/python/svn_version/ut/lib/test_simple.py | 16 | ||||
| -rw-r--r-- | library/python/svn_version/ut/lib/ya.make | 13 | ||||
| -rw-r--r-- | library/python/svn_version/ut/py2/ya.make | 9 | ||||
| -rw-r--r-- | library/python/svn_version/ut/py3/ya.make | 9 | ||||
| -rw-r--r-- | library/python/svn_version/ut/ya.make | 5 | ||||
| -rw-r--r-- | library/python/svn_version/ya.make | 15 | 
8 files changed, 103 insertions, 0 deletions
diff --git a/library/python/svn_version/__init__.py b/library/python/svn_version/__init__.py new file mode 100644 index 00000000000..7ef7d6dac71 --- /dev/null +++ b/library/python/svn_version/__init__.py @@ -0,0 +1 @@ +from .__svn_version import svn_version, commit_id, svn_revision, svn_last_revision, hash, svn_branch, svn_tag, patch_number  # noqa diff --git a/library/python/svn_version/__svn_version.pyx b/library/python/svn_version/__svn_version.pyx new file mode 100644 index 00000000000..d66bc09d24d --- /dev/null +++ b/library/python/svn_version/__svn_version.pyx @@ -0,0 +1,35 @@ +import future.utils as fu + +cdef extern from "library/cpp/svnversion/svnversion.h": +    cdef const char* GetProgramSvnVersion() except +; +    cdef int GetProgramSvnRevision() except +; +    cdef int GetArcadiaLastChangeNum() except +; +    cdef const char* GetProgramCommitId() except +; +    cdef const char* GetProgramHash() except +; +    cdef const char* GetBranch() except +; +    cdef const char* GetTag() except +; +    cdef int GetArcadiaPatchNumber() except +; + +def svn_version(): +    return fu.bytes_to_native_str(GetProgramSvnVersion()) + +def svn_revision(): +    return GetProgramSvnRevision() + +def svn_last_revision(): +    return GetArcadiaLastChangeNum() + +def commit_id(): +    return fu.bytes_to_native_str(GetProgramCommitId()) + +def hash(): +    return fu.bytes_to_native_str(GetProgramHash()) + +def svn_branch(): +    return fu.bytes_to_native_str(GetBranch()) + +def svn_tag(): +    return fu.bytes_to_native_str(GetTag()) + +def patch_number(): +    return GetArcadiaPatchNumber() diff --git a/library/python/svn_version/ut/lib/test_simple.py b/library/python/svn_version/ut/lib/test_simple.py new file mode 100644 index 00000000000..2c27af6c682 --- /dev/null +++ b/library/python/svn_version/ut/lib/test_simple.py @@ -0,0 +1,16 @@ +import library.python.svn_version as sv + + +def test_simple(): +    assert sv.svn_version() +    assert isinstance(sv.svn_version(), str) +    assert sv.svn_revision() +    assert isinstance(sv.svn_revision(), int) +    assert sv.svn_last_revision() +    assert isinstance(sv.svn_last_revision(), int) +    assert sv.svn_last_revision() > 0 +    assert sv.commit_id() +    assert isinstance(sv.commit_id(), str) +    assert len(sv.commit_id()) > 0 +    assert isinstance(sv.hash(), str) +    assert isinstance(sv.patch_number(), int) diff --git a/library/python/svn_version/ut/lib/ya.make b/library/python/svn_version/ut/lib/ya.make new file mode 100644 index 00000000000..fb50caf1259 --- /dev/null +++ b/library/python/svn_version/ut/lib/ya.make @@ -0,0 +1,13 @@ +PY23_LIBRARY() + +OWNER(pg) + +PEERDIR( +    library/python/svn_version +) + +TEST_SRCS( +    test_simple.py +) + +END() diff --git a/library/python/svn_version/ut/py2/ya.make b/library/python/svn_version/ut/py2/ya.make new file mode 100644 index 00000000000..c860e165363 --- /dev/null +++ b/library/python/svn_version/ut/py2/ya.make @@ -0,0 +1,9 @@ +PY2TEST() + +OWNER(pg) + +PEERDIR( +    library/python/svn_version/ut/lib +) + +END() diff --git a/library/python/svn_version/ut/py3/ya.make b/library/python/svn_version/ut/py3/ya.make new file mode 100644 index 00000000000..4231565142e --- /dev/null +++ b/library/python/svn_version/ut/py3/ya.make @@ -0,0 +1,9 @@ +PY3TEST() + +OWNER(pg) + +PEERDIR( +    library/python/svn_version/ut/lib +) + +END() diff --git a/library/python/svn_version/ut/ya.make b/library/python/svn_version/ut/ya.make new file mode 100644 index 00000000000..1363b76581c --- /dev/null +++ b/library/python/svn_version/ut/ya.make @@ -0,0 +1,5 @@ +RECURSE( +    lib +    py2 +    py3 +) diff --git a/library/python/svn_version/ya.make b/library/python/svn_version/ya.make new file mode 100644 index 00000000000..747a663f00e --- /dev/null +++ b/library/python/svn_version/ya.make @@ -0,0 +1,15 @@ +PY23_LIBRARY() + +OWNER(pg) + +PEERDIR( +    library/cpp/svnversion +    contrib/python/future +) + +PY_SRCS( +    __init__.py +    __svn_version.pyx +) + +END()  | 
