From c456075a54c58ac89f03044b1d45374b15d48e8f Mon Sep 17 00:00:00 2001 From: Kristijan Husak Date: Wed, 1 May 2024 14:13:19 +0200 Subject: [PATCH] ci: Fix tests --- .github/workflows/tests.yml | 10 +++++++-- autoload/db_ui/query.vim | 41 ++++++++++++++++++++----------------- 2 files changed, 30 insertions(+), 21 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index e80e82d..1bb5f5f 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -1,6 +1,12 @@ name: tests -on: [push, pull_request] +on: + push: + branches: + - master + pull_request: + branches: + - master jobs: build: @@ -22,7 +28,7 @@ jobs: neovim: true runs-on: ${{ matrix.os }} steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Setup Ubuntu System if: matrix.os == 'ubuntu-latest' run: | diff --git a/autoload/db_ui/query.vim b/autoload/db_ui/query.vim index 058c8bf..7aae57b 100644 --- a/autoload/db_ui/query.vim +++ b/autoload/db_ui/query.vim @@ -2,6 +2,11 @@ let s:query_instance = {} let s:query = {} let s:bind_param_rgx = '\(^\|[[:blank:]]\|[^:]\)\('.g:db_ui_bind_param_pattern.'\)' +let s:query_info = { + \ 'last_query_start_time': 0, + \ 'last_query_time': 0 + \ } + function! db_ui#query#new(drawer) abort let s:query_instance = s:query.new(a:drawer) return s:query_instance @@ -12,12 +17,10 @@ function! s:query.new(drawer) abort let instance.drawer = a:drawer let instance.buffer_counter = {} let instance.last_query = [] - let instance.last_query_start_time = 0 - let instance.last_query_time = 0 augroup dbui_async_queries autocmd! - autocmd User *DBExecutePre call s:query_instance.start_query() - autocmd User *DBExecutePost call s:query_instance.print_query_time() + autocmd User *DBExecutePre call s:start_query() + autocmd User *DBExecutePost call s:print_query_time() augroup END return instance endfunction @@ -207,14 +210,10 @@ function! s:query.remove_buffer(bufnr) return self.drawer.render() endfunction -function! s:query.start_query() abort - let self.last_query_start_time = reltime() -endfunction - function! s:query.execute_query(...) abort let is_visual_mode = get(a:, 1, 0) let lines = self.get_lines(is_visual_mode) - call self.start_query() + call s:start_query() if !is_visual_mode && search(s:bind_param_rgx, 'n') <= 0 call db_ui#utils#print_debug({ 'message': 'Executing whole buffer', 'command': '%DB' }) silent! exe '%DB' @@ -227,19 +226,11 @@ function! s:query.execute_query(...) abort call db_ui#notifications#info('Executing query...') endif if !has_async - call self.print_query_time() + call s:print_query_time() endif let self.last_query = lines endfunction -function! s:query.print_query_time() abort - if empty(self.last_query_start_time) - return - endif - let self.last_query_time = split(reltimestr(reltime(self.last_query_start_time)))[0] - call db_ui#notifications#info('Done after '.self.last_query_time.' sec.') -endfunction - function! s:query.execute_lines(db, lines, is_visual_mode) abort let filename = tempname().'.'.db#adapter#call(a:db.conn, 'input_extension', [], 'sql') let lines = copy(a:lines) @@ -405,7 +396,7 @@ endfunction function! s:query.get_last_query_info() abort return { \ 'last_query': self.last_query, - \ 'last_query_time': self.last_query_time + \ 'last_query_time': s:query_info.last_query_time \ } endfunction @@ -427,3 +418,15 @@ function! s:query.get_saved_query_db_name() abort return '' endfunction + +function s:start_query() abort + let s:query_info.last_query_start_time = reltime() +endfunction + +function s:print_query_time() abort + if empty(s:query_info.last_query_start_time) + return + endif + let s:query_info.last_query_time = split(reltimestr(reltime(s:query_info.last_query_start_time)))[0] + call db_ui#notifications#info('Done after '.s:query_info.last_query_time.' sec.') +endfunction