ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: "Dmitry V. Levin" <ldv@altlinux.org>
To: ALT Devel discussion list <devel@lists.altlinux.org>
Subject: Re: [devel] [SCM] packages/apt: tags/0.5.15lorg2-alt76
Date: Wed, 23 Oct 2019 15:00:57 +0300
Message-ID: <20191023120056.GA14668@altlinux.org> (raw)
In-Reply-To: <20191018094206.D4E578440208@gitery.altlinux.org>

[-- Attachment #1: Type: text/plain, Size: 6289 bytes --]

On Fri, Oct 18, 2019 at 09:42:06AM +0000, Aleksei Nikiforov wrote:
> Update of /people/darktemplar/packages/apt.git
> 
> Changes statistics since common ancestor `0.5.15lorg2-alt74' follows:
>  apt.be.po                                          |   9 +-
>  apt.ru.po                                          |   9 +-
>  apt.spec                                           |  44 +-
>  apt/apt-pkg/Makefile.am                            |   2 +-
>  apt/apt-pkg/packagemanager.cc                      |   4 +-
>  apt/apt-pkg/packagemanager.h                       |  30 +-
>  apt/apt-pkg/pkgcache.cc                            |   2 +-
>  apt/apt-pkg/pkgcache.h                             |  17 +-
>  apt/apt-pkg/rpm/rpmhandler.cc                      |  26 +-
>  apt/apt-pkg/rpm/rpmhandler.h                       |   2 +
>  apt/apt-pkg/rpm/rpmindexfile.cc                    |   8 +-
>  apt/apt-pkg/rpm/rpmpm.cc                           | 174 +++++-
>  apt/apt-pkg/rpm/rpmpm.h                            |  16 +-
>  apt/apt-pkg/rpm/rpmsystem.cc                       |  17 +-
>  apt/po/de_DE.po                                    |   9 +-
>  apt/po/es_ES.po                                    |   9 +-
>  apt/po/it_IT.po                                    |   9 +-
>  apt/po/ja.po                                       |   9 +-
>  apt/po/pt_BR.po                                    |   9 +-
>  apt/po/ru.po                                       |   9 +-
>  apt/test/integration/framework                     | 656 +++++++++++++++++++++
>  apt/test/integration/run-tests                     |  66 +++
>  .../specs/conflicting-package-distupgrade.spec     |  18 +
>  .../integration/specs/conflicting-package-one.spec |  17 +
>  .../integration/specs/conflicting-package-two.spec |  17 +
>  apt/test/integration/specs/missing-dependency.spec |  17 +
>  apt/test/integration/specs/simple-package-new.spec |  19 +
>  .../integration/specs/simple-package-noarch.spec   |  17 +
>  .../specs/simple-package-update-conflict.spec      |  17 +
>  .../integration/specs/simple-package-update.spec   |  15 +
>  apt/test/integration/specs/simple-package.spec     |  15 +
>  apt/test/integration/specs/simple-virtual.spec     |  17 +
>  apt/test/integration/test-apt-cache-depends-simple |  38 ++
>  apt/test/integration/test-apt-cache-dump           |  92 +++
>  apt/test/integration/test-apt-cache-dumpavail      | 115 ++++
>  apt/test/integration/test-apt-cache-pkgnames       |  32 +
>  apt/test/integration/test-apt-cache-search-simple  |  38 ++
>  apt/test/integration/test-apt-cache-show-simple    |  67 +++
>  apt/test/integration/test-apt-cache-showpkg-simple |  44 ++
>  apt/test/integration/test-apt-cache-stats          |  36 ++
>  apt/test/integration/test-apt-cache-unmet          |  31 +
>  .../integration/test-apt-cache-whatdepends-simple  |  43 ++
>  apt/test/integration/test-apt-check-simple         |  26 +
>  apt/test/integration/test-apt-config-dump          |  61 ++
>  apt/test/integration/test-apt-distupgrade-conflict |  30 +
>  .../test-apt-distupgrade-mutual-conflict           |  31 +
>  apt/test/integration/test-apt-distupgrade-obsolete |  26 +
>  apt/test/integration/test-apt-distupgrade-simple   |  23 +
>  .../test-apt-install-conflicting-packages          |  27 +
>  apt/test/integration/test-apt-install-double       |  17 +
>  apt/test/integration/test-apt-install-simple       |  13 +
>  apt/test/integration/test-apt-lua-simple           |  82 +++
>  apt/test/integration/test-apt-mark-simple          |  58 ++
>  apt/test/integration/test-apt-method-http          |  29 +
>  apt/test/integration/test-apt-method-https         |  56 ++
>  .../test-apt-method-https-invalid-cert-hostname    |  41 ++
>  apt/test/integration/test-apt-remove-double        |  22 +
>  apt/test/integration/test-apt-remove-simple        |  15 +
>  .../integration/test-apt-rpm-bash-scripts-simple   |  21 +
>  apt/test/integration/test-apt-update-simple        |  19 +
>  apt/test/integration/test-apt-upgrade-simple       |  26 +
>  61 files changed, 2371 insertions(+), 93 deletions(-)
> 
> Changelog since common ancestor `0.5.15lorg2-alt74' follows:
> commit 92edeb8815a77eccdbc221edf05680659807a571
> Author: Aleksei Nikiforov <darktemplar@altlinux>
> Date:   Tue Oct 8 11:11:38 2019 +0300
> 
>     0.5.15lorg2-alt76
>     
>     - Added integration test suite.

Тестирование apt'а критически важно и я всячески это приветствую.
Просьба обратить внимание на следующие моменты.

> commit 921b58bdef65edea9908d38bed16cb1e0fe5d0e3
> Author: Aleksei Nikiforov <darktemplar@altlinux>
> Date:   Fri Oct 11 16:47:43 2019 +0300
> 
>     Check subsecond modification time for cached files

Поскольку без этого (или аналогичного этому) изменения тесты
не проходят, оно обязательно должно быть сделано до включения тестов.
Это основополагающее правило, следование которому позволяет
бисектить регрессии.

По-хорошему, в commit message должно быть написано, что эта фича была
реализована в первую очередь для того, чтобы включить тестирование.

> commit 31b29bd8c12dbf2a5fcee3724e9b170a73deec63
> Author: Aleksei Nikiforov <darktemplar@altlinux>
> Date:   Fri Oct 4 11:04:45 2019 +0300
> 
>     Add initial integration tests
>     
>     Based on tests framework from Debian.

Для того, чтобы понимать, где наши баги, а где чужие, нужно как можно
более тщательно различать чужие заимствования и наши модификации.

В данном случае это совсем просто сделать, достаточно сперва
импортировать каталог test из Debian apt в неизменном виде,
после чего вносить наши изменения.

Далее, очень важно иметь возможность видеть, что именно покрыто тестами,
без этого нет надёжного способа выяснить, было ли протестировано то или
иное нововведение.  Для этого есть готовые инструменты.  Поскольку проект
использует autoconf и automake, можно взять готовый ax_code_coverage.m4 из
проекта autoconf-archive и адаптировать сборочные файлы согласно описанию.
После этого можно будет проводить сборку в режиме --enable-code-coverage,
и при наличии пакета lcov в сборочной среде с помощью
"make code-coverage-capture" после выполнения тестов можно будет увидеть
тестовое покрытие.


-- 
ldv

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 801 bytes --]

       reply	other threads:[~2019-10-23 12:00 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-23 12:00 ` Dmitry V. Levin [this message]
2019-10-24 13:59   ` Aleksei Nikiforov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191023120056.GA14668@altlinux.org \
    --to=ldv@altlinux.org \
    --cc=devel@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git