JuliaGraphs / JuliaGraphs/Graphs.jl
Move testing to `GenericGraph`
Nobody has claimed this yet.
- Dominant language
- Julia
- Stars
- 538
- Forks
- 128
- Avg merge
- 10h 25m
- Merged PRs (30d)
- 2
Description
We recently introduced two types called GenericGraph and GenericDiGraph that wrap a SimpleGraph or a SimpleDiGraph. These generic types try to fulfill the AbstractGraph interface in a minimal way, while having no other methods implemented. The idea is then to test functions that can take an AbstractGraph with these generic types instead of simple graphs, in order to verify that they would indeed work with any AbstractGraph.
Similar things can be found in the Julia standard library, for example Test.GenericArray and Test.GenericString.
Now we need to change our tests, so that they use the generic graph types, and try to spot and fix bugs that occur during that process. It is probably not possible to do this for all functions, but at least we can spot the places where that is the case.
Some progress has already been done or at least started in:
-
test/biconnectivity#270 -
test/centrality#272 -
test/community#273 -
test/cycles#274 -
test/shortestpaths#275 -
test/spanningtrees#276 -
test/connectivity.jl#278 -
test/core.jl#278 -
test/degeneracy.jl#278 -
test/distance.jl#278 -
test/edit_distance.jl#278 -
test/operators.jl#278
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the remaining test areas after the completed work listed in the issue, using GenericGraph and GenericDiGraph in place of simple graphs. Run the affected tests and record any failures that reveal functions relying on SimpleGraph or SimpleDiGraph; done means each suitable test uses the generic types and the resulting bugs are fixed or identified as unsupported.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- testing-qa
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100