Skip to content
This repository has been archived by the owner on Sep 28, 2022. It is now read-only.

Testing Module #308

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

danielpetisme
Copy link
Contributor

This PR aims to track the discussion, updates regarding the Golo Testing module.

TODO

  • feat:CLI integration
  • feat:Gradle Integration
  • feat:Allow specification definition through a @spec decoration
  • refactor: Refactor CLI with the CLI Command (recursive visit, class loading, main/spec method invocation)
  • fix: Improve Gradle integration
  • fix: The testing api should accessible via gololang.Testing only
  • feat: beforeEach/afterEach & beforeAll/afterAll
  • feat: Disable a suite/test with the x prefix
  • feat: Basic console reporting
  • feat: JUnit reporting
  • feat: HTML reporting
  • feat: Track test status (disabled, pending, running, success & failure)
  • feat: Documentation

Currently the following snippet works (see ./src/test/golo/testingSpec.golo) and can be ran via ./gradlew golotest

module gololang.TestingSpec

import gololang.Testing

function spec = |$| {
  $: describe("A suite", {
    $: it("A test", {
      require(1 is 1, "it works")
      println("It works")
    })
  })
}

@jponge jponge added the feature label Dec 16, 2015
@danielpetisme danielpetisme force-pushed the feature/testing branch 2 times, most recently from bed1c2a to 6eb4c71 Compare December 27, 2015 16:43
Add a CLI
Add a Gradle integration
Add beforeEach/afterEach fixtures
Add bassic console presentation

Signed-off-by: Daniel Petisme <[email protected]>
@danielpetisme
Copy link
Contributor Author

The PR is not mature but I would appreciate some comments/reviews on the following topics:

  • CLI integration
  • gradle integration (I'm not an expert at all)
  • Design (the runner -> suite -> test relations)
  • The reporting process (in live as is done right now VS. a post-execution reporting)
  • code review
  • file structure (1 file per module, module names, etc)

I'm really Java/OOP oriented so I created structs almost everywhere ;)

So far the code actually work just as in the snippet in the 1st comment

Have fun!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants