Commit Graph

15 Commits

Author SHA1 Message Date
Steven Allen
585731074e test(graphsync): test server-side graphsync 2020-02-26 09:11:17 -08:00
Steven Allen
a8fbd066d7 make: move all test deps to a separate module
1. This means those deps don't get pulled in unless we actually need to test.
2. It means we can cordon all the golangci-lint module replace hacks off into a
   separate package.
2019-09-11 11:43:50 -07:00
Steven Allen
037382239d build: switch from megacheck to golangci-lint
(which includes megacheck)

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2019-05-14 09:38:29 -07:00
Jakub Sztandera
061128d1d3 mk: fix make install by not setting GOBIN
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-03-06 22:21:14 +01:00
Jakub Sztandera
93c75321fb make: Replace json-to-junit with gotestsum
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>

License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-03-05 18:33:58 +01:00
Jakub Sztandera
27f73fa7e4 gomod: use test binaries from go modules
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-03-05 18:33:58 +01:00
Jakub Sztandera
3e199ab3f7 mk: s/go-build/go-build-relative/
License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2019-03-05 18:33:58 +01:00
Łukasz Magiera
d8a92224a7 ci: test on 32bit os
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2019-03-04 19:20:51 -08:00
Travis Person
569eeb8f82 Update IPTB test - WIP
Related to #5521

License: MIT
Signed-off-by: Travis Person <travis@protocol.ai>
2018-11-01 19:33:05 -07:00
Łukasz Magiera
23ddc26025 ci: Coverage and Junit xmls in one run
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2018-10-29 18:44:49 +01:00
Steven Allen
0252710020 remove Godeps
fixes #2722

License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-09-11 12:11:24 -07:00
Steven Allen
aef8eec279 fix cid-fmt import path
License: MIT
Signed-off-by: Steven Allen <steven@stebalien.com>
2018-08-21 17:47:14 -07:00
Kevin Atkinson
1e7b2559e4 Include cid-fmt binary in test/bin.
License: MIT
Signed-off-by: Kevin Atkinson <k@kevina.org>
2018-07-28 02:28:27 -04:00
Łukasz Magiera
ad1dc5f405 Corenet API: Use simple util instead of socat for tests
License: MIT
Signed-off-by: Łukasz Magiera <magik6k@gmail.com>
2017-05-31 11:33:17 +02:00
Jakub Sztandera
f630222580
make: rework makefiles for non-recursive make and add sharness coverage
This commit introduces non-recursive Makefile infrastructure that replaces current Makefile infrastructure.
It also generally cleanups the Makefiles, separates them into nicer sub-modules and centralizes common operations into single definitions.

It allows to depend on any target that is defined in the makefile, this means that for example `gx install` is called once when `make build test_expensive_sharness` is called instead of 4 or 5 times.

It also makes the dependencies much cleaner and allows for reuse of modules. For example sharness coverage collection (WIP) uses sharness target with amended PATH, previously it might have been possible but not without wiring in the coverage collection into sharness make runner code.

Yes, it is more complex but not much more. There are few rules that have to be followed and few complexities added but IMHO it is worth it.

How to NR-make:
1. If make is to generate some file via a target, it MUST be defined in Rules.mk file in the directory of the target.
2. `Rules.mk` file MUST have `include mk/header.mk` statement as the first line and `include mk/footer.mk` statement as the last line (apart from project root `Rules.mk`).
3. It then MUST be included by the closest `Rules.mk` file up the directory tree.
4. Inside a `Rules.mk` special variable accessed as `$(d)` is defined. Its value is current directory, use it so if the `Rules.mk` file is moved in the tree it still works without a problem. Caution: this variable is not available in the recipe part and MUST NOT be used. Use name of the target or prerequisite to extract it if you need it.
5. Make has only one global scope, this means that name conflicts are a thing. Names SHOULD  follow `VAR_NAME_$(d)` convention. There are exceptions from this rule in form of well defined global variables. Examples: General lists `TGT_BIN`, `CLEAN`; General targets: `TEST`, `COVERAGE`; General variables: `GOFLAGS`, `DEPS_GO`.
3. Any rules, definitions or variables that fit some family SHOULD be defined in `mk/$family.mk` file and included from project root `Rules.mk`

License: MIT
Signed-off-by: Jakub Sztandera <kubuxu@protonmail.ch>
2017-02-12 01:18:40 +01:00