SebastianCzoch/onesky-go

View on GitHub

Showing 36 of 36 total issues

Assertions has 27 methods (exceeds 20 allowed). Consider refactoring.
Open

type Assertions struct {
    t TestingT
}

    Similar blocks of code found in 2 locations. Consider refactoring.
    Open

    func InDeltaSlice(t TestingT, expected, actual interface{}, delta float64, msgAndArgs ...interface{}) bool {
        if expected == nil || actual == nil ||
            reflect.TypeOf(actual).Kind() != reflect.Slice ||
            reflect.TypeOf(expected).Kind() != reflect.Slice {
            return Fail(t, fmt.Sprintf("Parameters must be slice"), msgAndArgs...)
    Godeps/_workspace/src/github.com/stretchr/testify/assert/assertions.go on lines 774..792

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 241.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    Similar blocks of code found in 2 locations. Consider refactoring.
    Open

    func InEpsilonSlice(t TestingT, expected, actual interface{}, delta float64, msgAndArgs ...interface{}) bool {
        if expected == nil || actual == nil ||
            reflect.TypeOf(actual).Kind() != reflect.Slice ||
            reflect.TypeOf(expected).Kind() != reflect.Slice {
            return Fail(t, fmt.Sprintf("Parameters must be slice"), msgAndArgs...)
    Godeps/_workspace/src/github.com/stretchr/testify/assert/assertions.go on lines 719..737

    Duplicated Code

    Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

    Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

    When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

    Tuning

    This issue has a mass of 241.

    We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

    The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

    If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

    See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

    Refactorings

    Further Reading

    File assertions.go has 535 lines of code (exceeds 500 allowed). Consider refactoring.
    Open

    package assert
    
    import (
        "bufio"
        "bytes"

      Your code does not pass gofmt in 22 places. Go fmt your code!
      Open

      package assert

      Your code does not pass gofmt in 22 places. Go fmt your code!
      Open

      package assert

      Method Client.UploadFile has 10 return statements (exceeds 4 allowed).
      Open

      func (c *Client) UploadFile(file, fileFormat, locale string, keepStrings bool) (UploadData, error) {
          endpoint, err := getEndpoint("postFile")
          if err != nil {
              return UploadData{}, err
          }
      Severity: Major
      Found in onesky.go - About 1 hr to fix

        Your code does not pass gofmt in 10 places. Go fmt your code!
        Open

        package assert

        Method Client.GetLanguages has 7 return statements (exceeds 4 allowed).
        Open

        func (c *Client) GetLanguages() ([]Language, error) {
            endpoint, err := getEndpoint("getLanguages")
            if err != nil {
                return nil, err
            }
        Severity: Major
        Found in onesky.go - About 45 mins to fix

          Method Client.GetTranslationsStatus has 7 return statements (exceeds 4 allowed).
          Open

          func (c *Client) GetTranslationsStatus(fileName, locale string) (TranslationsStatus, error) {
              endpoint, err := getEndpoint("getTranslationsStatus")
              if err != nil {
                  return TranslationsStatus{}, err
              }
          Severity: Major
          Found in onesky.go - About 45 mins to fix

            Method Client.ImportTask has 7 return statements (exceeds 4 allowed).
            Open

            func (c *Client) ImportTask(importID int64) (TaskData, error) {
                endpoint, err := getEndpoint("importTask")
                if err != nil {
                    return TaskData{}, err
                }
            Severity: Major
            Found in onesky.go - About 45 mins to fix

              Method Client.ImportTasks has 7 return statements (exceeds 4 allowed).
              Open

              func (c *Client) ImportTasks(params map[string]interface{}) ([]TaskData, error) {
                  endpoint, err := getEndpoint("importTasks")
                  if err != nil {
                      return nil, err
                  }
              Severity: Major
              Found in onesky.go - About 45 mins to fix

                Method Client.ListFiles has 7 return statements (exceeds 4 allowed).
                Open

                func (c *Client) ListFiles(page, perPage int) ([]FileData, error) {
                    endpoint, err := getEndpoint("listFiles")
                    if err != nil {
                        return nil, err
                    }
                Severity: Major
                Found in onesky.go - About 45 mins to fix

                  Method Client.DownloadFile has 6 return statements (exceeds 4 allowed).
                  Open

                  func (c *Client) DownloadFile(fileName, locale string) (string, error) {
                      endpoint, err := getEndpoint("getFile")
                      if err != nil {
                          return "", err
                      }
                  Severity: Major
                  Found in onesky.go - About 40 mins to fix

                    Function isEmpty has 6 return statements (exceeds 4 allowed).
                    Open

                    func isEmpty(object interface{}) bool {
                    
                        if object == nil {
                            return true
                        } else if object == "" {
                    Severity: Major
                    Found in Godeps/_workspace/src/github.com/stretchr/testify/assert/assertions.go - About 40 mins to fix

                      Function HTTPBodyContains has 5 arguments (exceeds 4 allowed). Consider refactoring.
                      Open

                      func HTTPBodyContains(t TestingT, handler http.HandlerFunc, mode, url string, values url.Values, str interface{}) bool {

                        Function HTTPBodyNotContains has 5 arguments (exceeds 4 allowed). Consider refactoring.
                        Open

                        func HTTPBodyNotContains(t TestingT, handler http.HandlerFunc, mode, url string, values url.Values, str interface{}) bool {

                          Function InDelta has 5 return statements (exceeds 4 allowed).
                          Open

                          func InDelta(t TestingT, expected, actual interface{}, delta float64, msgAndArgs ...interface{}) bool {
                          
                              af, aok := toFloat(expected)
                              bf, bok := toFloat(actual)
                          
                          
                          Severity: Major
                          Found in Godeps/_workspace/src/github.com/stretchr/testify/assert/assertions.go - About 35 mins to fix

                            Method Client.DeleteFile has 5 return statements (exceeds 4 allowed).
                            Open

                            func (c *Client) DeleteFile(fileName string) error {
                                endpoint, err := getEndpoint("deleteFile")
                                if err != nil {
                                    return err
                                }
                            Severity: Major
                            Found in onesky.go - About 35 mins to fix

                              Similar blocks of code found in 2 locations. Consider refactoring.
                              Open

                              func HTTPRedirect(t TestingT, handler http.HandlerFunc, mode, url string, values url.Values) bool {
                                  code := httpCode(handler, mode, url, values)
                                  if code == -1 {
                                      return false
                                  }
                              Godeps/_workspace/src/github.com/stretchr/testify/assert/http_assertions.go on lines 28..34

                              Duplicated Code

                              Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

                              Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

                              When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

                              Tuning

                              This issue has a mass of 104.

                              We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

                              The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

                              If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

                              See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

                              Refactorings

                              Further Reading

                              Severity
                              Category
                              Status
                              Source
                              Language