go-kitsu

module
v0.0.0-...-4e58165 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 24, 2024 License: MIT

README

go-kitsu

go-kitsu is a Go client library for accessing the kitsu.io API.

Go Reference GitHub license Go Report Card Coverage Status Build Status Test Status Integration Status

Installation

This package can be installed using:

go get github.com/nstratos/go-kitsu/kitsu

Usage

Import the package using:

import "github.com/nstratos/go-kitsu/kitsu"

Project Status

This project is currently under development. Expect things to change. Some useful methods like getting users, library entries and anime are already implemented. For a full list of what needs to be implemented please check Roadmap.md.

Endpoint Stability

The Kitsu API does not currently provide endpoint versioning. The only available endpoint is the appropriately named "edge" endpoint (https://kitsu.io/api/edge/) which (to quote the Kitsu API docs) "offers no guarantees: anything could change at any time".

As a result, this package provides as many guarantees as the edge endpoint. Nevertheless there is effort to keep the package as stable as possible through integration tests that exercise the package against the live Kitsu API.

Unit testing

To run all unit tests:

go test

To see test coverage:

go test -cover

For an HTML presentation of the coverage information:

go test -coverprofile=cover.out && go tool cover -html=cover.out

And for heat maps:

go test -coverprofile=cover.out -covermode=count && go tool cover -html=cover.out

Integration testing

The integration tests will exercise the package against the live Kitsu API and will hopefully reveal incompatible changes. Since these tests are using live data, they take much longer to run and there is a chance for false positives.

The tests need a dedicated test account for authentication. A newly created account has no slug set by default. To set the slug, open the profile settings and set Profile URL.

To run the integration tests:

go test -tags=integration -slug="<test account slug>" -password="<test account password>"

License

MIT

Directories

Path Synopsis
example

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL