Commit graph

53 commits

Author SHA1 Message Date
Alexander Vasilyev
b2081be19b Add solutions for testdata sumbssions related to new coverage calculation logic. 2020-03-27 22:32:10 +03:00
Alexander Vasilyev
12396125e7 Add tests for correct coverage calculations. 2020-03-27 22:32:10 +03:00
Alexander Vasilyev
a56f50ac46 Calculate coverage of private code.
Create empty coverage profile from problem code to calculate coverage
correctly. For some wierd reasons it will also account for not tested packages.
This change prevents students from adding new code and testing it,
instead of getting good coverage for initial codebase :)
2020-03-27 22:32:10 +03:00
Alexander Vasilyev
54ab7b69d1 Add coverpkg specification.
Currently, packages in coverme without tests created by student
are not checked for coverage, because no there are no test targets
for them at all!

The issue can be fixed by simply creating empty !change files,
but we are engineers, aren't we? :)

Bonus point: it prevents new packages from giving false coverage credit.
For example, mock file generated by gomock will have lots of covered code
almost instantly. However, the task can be hacked by adding new code to
existing packages.
2020-03-27 22:32:10 +03:00
Alexander Vasilyev
f81398290b Remove ignored min coverage comments. 2020-03-27 22:32:10 +03:00
Alexander Vasilyev
545ce5cbe3 Calculate coverage problem-wise, not per package.
This seems to be fair, especially since coverage target is
defined problem-wise. Practical reason: coverme/app can not
be covered sufficiently without testing Start/initRoutes/run;
out of these, only initRoutes can be tested, and testing it
separately is a wierd solution.
2020-03-27 22:32:10 +03:00
Arseny Balobanov
d025403144 testtool: fix build tag in submission test. 2020-03-23 22:21:42 +03:00
Arseny Balobanov
5f1b033f10 testtool: fix cover profile permissions issue by writing profile to /tmp. 2020-03-20 13:00:17 +03:00
Arseny Balobanov
a74e207ea3 testtool: fix coverage comment search dir. 2020-03-20 11:59:20 +03:00
Arseny Balobanov
a9ca8a5c7c Test that testtool won't check coverage of imported package e.g. net/http. 2020-03-19 02:38:45 +03:00
Arseny Balobanov
9848183cc1 Cleanup comments. 2020-03-19 01:40:57 +03:00
Arseny Balobanov
8c9f5151b1 Fix variable shadowing pointed out by linter. 2020-03-19 01:33:16 +03:00
Arseny Balobanov
bb0c91683f Adding forgotten coverage helpers. 2020-03-19 01:29:11 +03:00
Arseny Balobanov
cd7f4d69f1 Support test coverage requirements via comment. 2020-03-19 01:19:44 +03:00
Arseny Balobanov
6fbbce55b4 Rewrite require.Nil(t, err) with require.NoError(t, err). 2020-03-13 00:12:46 +03:00
Fedor Korotkiy
b7c84cb10a Fix error message 2020-02-22 15:37:16 +03:00
Fedor Korotkiy
06395725d3 Fix RandomName helper 2020-02-22 01:54:46 +03:00
Fedor Korotkiy
e2f472d732 Compare benchmarks 2020-02-22 01:23:20 +03:00
Arseny Balobanov
daff2e5c7b Use %s for duration; log timeout error in test. 2020-02-19 00:26:48 +03:00
Arseny Balobanov
b93d1be1dc Support testing.TB as logger for WaitForPort. 2020-02-19 00:22:00 +03:00
Arseny Balobanov
b67bb030c3 Return more detailed error message on timeout in WaitForPort. 2020-02-19 00:11:10 +03:00
Arseny Balobanov
e1c3ec8cd0 Replace context in WaitForPort with timeout. 2020-02-19 00:08:37 +03:00
Arseny Balobanov
aa7c9ae7c5 Test success case of using WaitForPort func. 2020-02-19 00:04:08 +03:00
Arseny Balobanov
37e262c88d Add test helpers to find free tcp ports and wait for ports to become available. 2020-02-19 00:03:46 +03:00
Fedor Korotkiy
8f414883a7 Use require.NoError where appropriate 2020-02-16 17:18:51 +03:00
Fedor Korotkiy
57ab50a4a7 Fix bincache on windows 2020-02-16 17:18:26 +03:00
Fedor Korotkiy
8eddf48fa9 Run linter on submit 2020-02-14 15:55:25 +03:00
Fedor Korotkiy
f7a5d8858f Add golangci-lint config 2020-02-14 15:55:25 +03:00
Fedor Korotkiy
5d9a1344ca Try another fix 2020-02-14 00:04:48 +03:00
Fedor Korotkiy
ffd0ea8700 List only go files 2020-02-13 23:57:34 +03:00
Fedor Korotkiy
d842678a2c Fix 2020-02-13 03:07:21 +03:00
Fedor Korotkiy
d4a0cca74d Debugging 2020-02-13 03:02:31 +03:00
Fedor Korotkiy
d09d084a1d Debugging 2020-02-13 02:58:32 +03:00
Fedor Korotkiy
0136bbfac5 Debugging 2020-02-13 02:56:04 +03:00
Fedor Korotkiy
796804edab Debugging 2020-02-13 02:50:16 +03:00
Fedor Korotkiy
e227b7e140 Fix 2020-02-13 02:31:40 +03:00
Fedor Korotkiy
3c626cafd5 Fix 2020-02-13 02:28:27 +03:00
Fedor Korotkiy
6a83a4f1fc Task grading 2020-02-13 02:10:17 +03:00
verytable
dea434be37 Resolve "word-count" 2020-02-12 22:25:12 +00:00
Fedor Korotkiy
0de2390008 Squashed commit of the following:
commit 347ba11cfe4a49bff6fc29063b49416d90525e52
Author: Fedor Korotkiy <prime@yandex-team.ru>
Date:   Sat Feb 8 22:44:26 2020 +0300

    Sandboxed test execution.

commit c5c9557dd59c54971a78d424ec118655f6b2005c
Author: Fedor Korotkiy <prime@yandex-team.ru>
Date:   Sat Feb 8 21:13:13 2020 +0300

    Fix paths used during testing.

commit 1ba21eb0aad08f543c6a99bfd927721207943abb
Author: Fedor Korotkiy <prime@yandex-team.ru>
Date:   Sat Feb 8 20:56:32 2020 +0300

    Helper for process sandboxing

commit 54f0aa11156c1d2c998a060b60be7af8666d5da4
Author: Fedor Korotkiy <prime@yandex-team.ru>
Date:   Sat Feb 8 20:10:56 2020 +0300

    Package list helper.
2020-02-10 16:41:58 +03:00
verytable
664f66105b Use cmd.Run instead of cmd.Start+cmd.Wait. 2020-02-02 01:21:12 +03:00
verytable
ff809b73c3 Start doc comments with the name being declared. 2020-02-02 01:19:13 +03:00
Fedor Korotkiy
6fbac96f75 Better fix for running tests under goland 2020-02-01 04:47:01 +03:00
Fedor Korotkiy
f9280772ae Fix running tests under goland 2020-02-01 04:39:56 +03:00
Fedor Korotkiy
dc2f940fc0 Fix running tests under goland 2020-02-01 04:29:29 +03:00
Fedor Korotkiy
366629e7fe Last fix, hopefully. 2020-02-01 04:06:26 +03:00
Fedor Korotkiy
6a3bc49595 Fix branch name 2020-02-01 04:02:12 +03:00
Fedor Korotkiy
0521e63f80 Use tmp branch with random name 2020-02-01 03:59:45 +03:00
Fedor Korotkiy
38decbb90a Fix test. 2020-02-01 03:41:38 +03:00
Fedor Korotkiy
f2da93215a Working on export tool 2020-02-01 03:23:20 +03:00