summaryrefslogtreecommitdiff
path: root/lib/tasks/spec.rake
Commit message (Collapse)AuthorAgeFilesLines
* Removed benchmark suite and its documentationremove-benchmark-suiteYorick Peterse2016-03-101-11/+2
| | | | | | | | | The rationale for this can be found in https://gitlab.com/gitlab-org/gitlab-ce/issues/13718 but in short the benchmark suite no longer serves a good purpose now that we have proper production monitoring in place. Fixes gitlab-org/gitlab-ce#13718
* Split up spec:other even moreDouwe Maan2015-12-091-1/+19
|
* Fix rspec tag syntaxDouwe Maan2015-12-091-1/+1
|
* Split up specs moreDouwe Maan2015-12-091-1/+10
|
* Exclude benchmarks from the spec Rake taskYorick Peterse2015-10-051-1/+1
|
* Basic setup for an RSpec based benchmark suitebenchmark-suiteYorick Peterse2015-10-021-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This benchmark suite uses benchmark-ips (https://github.com/evanphx/benchmark-ips) behind the scenes. Specs can be turned into benchmark specs by setting "benchmark" to "true" in the top-level describe block like so: describe SomeClass, benchmark: true do end Writing benchmarks can be done using custom RSpec matchers, for example: describe MaruTheCat, benchmark: true do describe '#jump_in_box' do it 'should run 1000 iterations per second' do maru = described_class.new expect { maru.jump_in_box }.to iterate_per_second(1000) end end end By default the "iterate_per_second" expectation requires a standard deviation under 30% (this is just an arbitrary default for now). You can change this by chaining "with_maximum_stddev" on the expectation: expect { maru.jump_in_box }.to iterate_per_second(1000) .with_maximum_stddev(10) This will change the expectation to require a maximum deviation of 10%. Alternatively you can use the it block style to write specs: describe MaruTheCat, benchmark: true do describe '#jump_in_box' do subject { -> { described_class.new } } it { is_expected.to iterate_per_second(1000) } end end Because "iterate_per_second" operates on a block, opposed to a static value, the "subject" method must return a Proc. This looks a bit goofy but I have been unable to find a nice way around this.
* Refactor rake tasks for testsDmitriy Zaporozhets2015-06-231-4/+4
|
* Fix syntax errorDmitriy Zaporozhets2014-05-271-2/+1
| | | | Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
* Check return system value for gitlab test rake tasksDmitriy Zaporozhets2014-05-261-2/+2
| | | | Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
* Split feature tests out to different build jobJeroen van Baarsen2014-04-131-2/+11
|
* Added API testing groupJeroen van Baarsen2014-04-111-17/+19
|
* Proposal for split testingJeroen van Baarsen2014-04-111-10/+31
|
* Clear rake task only if definedDmitriy Zaporozhets2014-03-141-1/+1
| | | | Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
* Override rake spec and rake spinach tasksDmitriy Zaporozhets2014-03-141-0/+14
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>