All Projects → xojo → XojoUnit

xojo / XojoUnit

Licence: other
Unit Testing framework for the Xojo programming language.

Programming Languages

Xojo
11 projects

Projects that are alternatives of or similar to XojoUnit

currency-api
A demo project on how to test a node/express app with Mocha, Nock and proxyquire (MNP) and code coverage with nyc/istanbul.
Stars: ✭ 19 (-47.22%)
Mutual labels:  unit-testing
KrazyKotlin
A collection of useful Kotlin Extension
Stars: ✭ 75 (+108.33%)
Mutual labels:  unit-testing
refactoring-for-testability-cpp
Hard-to-test patterns in C++ and how to refactor them
Stars: ✭ 40 (+11.11%)
Mutual labels:  unit-testing
jest-preset-coffeescript
🃏 Easily write your Jests in @coffeescript.
Stars: ✭ 18 (-50%)
Mutual labels:  unit-testing
krab
Krab is a migration and automation tool for PostgreSQL based on HCL syntax
Stars: ✭ 15 (-58.33%)
Mutual labels:  unit-testing
tead
Lighting the way to simpler testing
Stars: ✭ 55 (+52.78%)
Mutual labels:  unit-testing
ava-fast-check
Property based testing for AVA based on fast-check
Stars: ✭ 44 (+22.22%)
Mutual labels:  unit-testing
eslint-plugin-chai-friendly
Makes eslint friendly towards Chai.js 'expect' and 'should' statements.
Stars: ✭ 49 (+36.11%)
Mutual labels:  unit-testing
Swatch
Watcher for Unit Tests written in Swift
Stars: ✭ 55 (+52.78%)
Mutual labels:  unit-testing
stubthat
Stubbing framework for R
Stars: ✭ 17 (-52.78%)
Mutual labels:  unit-testing
NiceDemo
iOS project, built on improved MVP architecture using Coordinator pattern for routing 😎
Stars: ✭ 54 (+50%)
Mutual labels:  unit-testing
goreporter
A Golang tool that does static analysis, unit testing, code review and generate code quality report.
Stars: ✭ 3,019 (+8286.11%)
Mutual labels:  unit-testing
springboot-junit5-mockito2
Show case for how to use junit 5 and mockito 2 for unit testing and integration test in spring boot 2
Stars: ✭ 18 (-50%)
Mutual labels:  unit-testing
libcester
A robust header-only unit testing framework for C and C++ programming language. Support function mocking, memory leak detection, crash report.
Stars: ✭ 50 (+38.89%)
Mutual labels:  unit-testing
vim-UT
Unit Testing plugin for Vim
Stars: ✭ 18 (-50%)
Mutual labels:  unit-testing
test-drive
The simple testing framework
Stars: ✭ 37 (+2.78%)
Mutual labels:  unit-testing
utest
Lightweight unit testing framework for C/C++ projects. Suitable for embedded devices.
Stars: ✭ 18 (-50%)
Mutual labels:  unit-testing
TestIt
Generate unit testing boilerplate from kotlin files.
Stars: ✭ 32 (-11.11%)
Mutual labels:  unit-testing
seed-barista
☕️ Barista: CSS unit testing with Javascript
Stars: ✭ 24 (-33.33%)
Mutual labels:  unit-testing
emacs-jest
A package to run jest inside emacs
Stars: ✭ 74 (+105.56%)
Mutual labels:  unit-testing

XojoUnit

A Unit Testing framework for Xojo.

How to Use

Refer to the wiki for usage instructions and an example.

https://github.com/xojo/XojoUnit/wiki

How to contribute

You can contribute to XojoUnit in two ways:

  • submit changes from your Fork of XojoUnit
  • request to become a Contributor

Don't send me emails with your updated project.

Forking XojoUnit

  1. Click the Fork button at the top.
  2. Make your changes.
  3. Push your changes back to GitHub.
  4. Create a "Pull Request" for your changes.

These steps notify the XojoUnit maintainers so that the change can be reviewed for inclusion in XojoUnit.

Here is a helpflow Github workflow document I found: http://www.eqqon.com/index.php/Collaborative_Github_Workflow

Frankly, this is all still new to me so we'll see how it goes!

Becoming a Contributor

If you actively submit good changes, I'll probably make you a Contributor so that I don't have to process all your pull requests.

Requirements

Xojo 2020 Release 2 or later is required to use XojoUnit with iOS and Web.

Xojo 2019 Release 2 or later is required for XojoUnit with Desktop and Console.

Release Notes

6.7.1 (Sept. 24, 2021)

  • Added checks for Nil objects to prevent unhandled exceptions.

6.7 (Sept. 23, 2021)

  • API 2.0.
  • Web 2.0.
  • Added Assert.FailCount, incremented within a test on every failure.

6.6 (Apr. 13, 2020)

  • In Desktop, "N/A" tests will show as grey and any test with a message will be bolded.
  • Desktop will allow you to filter tests through the command line with either --includeunittests or --excludeunittests as the last item. Use patterns where "*" is a wildcard and a dot separates group and test name. Multiple patterns can be separated by commas. Example, --includeunittests 'MyGroup.A\*' will only include tests in group MyGroup that start with "A". --excludeunittests '*.*Broker*' will exclude any tests in any groups that contain the word "Broker". --includeunittests 'MyGroup.MyTest' and --includeunittests 'MyGroup.My' will both include only the test named "MyTest" (the "Test" suffix is optional).
  • A method that uses DoEvents (used behind the scenes by some Xojo functions) will no longer cause crashes.

6.5 (Jan. 16, 2018)

  • Added "Run Until Fail"" button to Desktop. Tests will continue to run in a loop until one fails. "Stop Tests" will stop after the last test if running in a loop, or immediately if not. If you want to stop looping tests right away, press "Stop Tests" twice.
  • Added more contextual menus to Desktop (Selected Failed Tests, Select One Test).
  • Better updating of results and summary on Desktop. Also means less flicker on Windows.
  • Better handling of Controller.Duration.
  • Added more Currency tests.
  • Disabled Run button and added progress wheel to iOS.
  • Added Test Timers.

6.4 (Jan. 12, 2018)

  • Fixed bug where asynchronous tests will yield time to other TestGroups.
  • Desktop will update UI as tests run and allow Stop.
  • More Desktop contextual menus.
  • Running tests in Desktop with no groups selected will no longer show the useless wheel.
  • If the TestGroup.Setup event raised an Exception, the Duration would be wrong. No longer.
  • Test message in Desktop is now read-only.

6.3 (Dec. 16, 2016)

  • Added TestGroup.StopTestOnFail property. If True, the first Fail will stop a test. A TestGroup can be set to stop when it is first added, it can be set in the Setup event, or an individual test can set it for that lone test.
  • Modified projects to properly report tests that did not return a result.
  • Modified ExportTestResults to be more compatible with JUnit.

6.2 (October 21, 2016)

  • Added Assert.Matches and Assert.DoesNotMatch to test strings against regular expressions.
  • iOS project will show failed method names in red.

6.1 (October 18, 2016)

  • Overridden superclass methods will be ignored.
  • "Tests" that specify a parameter will be ignored.

6.0.2 (October 6, 2016)

  • TestGroup.Constructor no longer requires groupName. Will default to the name of the class if not given.
  • Desktop will once again properly run the tests and quit if given the --rununittests <path> argument on the command line.
  • Export file paths can now contain spaces, but it must be the last argument.

6.0.1 (July 14, 2016)

  • Updated iOS project for Xojo 2016r2.

6.0 (July 6, 2016)

  • Asynchronous testing is now possible through the AsyncAwait(maxSeconds) and AsyncComplete methods.
  • Projects were refactored to allow asynchronous testing.
  • Asynchronous tests added.

5.0 (March 29, 2016)

  • TestGroup Setup and TearDown events will run around each test method.
  • Every test method will start from a fresh copy of the TestGroup.
  • Fixed report indenting.
  • Fixed formatting of doubles in Assert.Fail.
  • Added "Not Implemented" count and properly update all counts.
  • TestGroup now has an UnhandledException event.

4.6.1 (December 22, 2015)

  • Desktop version will honor groups that are marked as "Ignore" in code.

4.6 (September 21, 2015)

  • Better command-line parsing and options for console version.
  • Allow filtering by methods.

4.5.1 (August 27, 2015)

  • Messages passed to Assert messages will only show up with the test fails.
  • Changed TestController.Version into a Text for compatibility with iOS.
  • Bug fixes.

4.5 (June 2015)

  • Added iOS.
  • Other stuff.

Paul Lefebvre (paul at xojo dot com) Kem Tekinay (ktekinay at mactechnologies dot com)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].