Module: Spider::Test
- Defined in:
- lib/spiderfw/test.rb,
lib/spiderfw/test/page_object.rb,
lib/spiderfw/test/stubs/mapper_stub.rb,
lib/spiderfw/test/stubs/storage_stub.rb
Defined Under Namespace
Classes: MapperStub, PageObject, StorageStub
Class Method Summary
collapse
Class Method Details
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
# File 'lib/spiderfw/test.rb', line 29
def self.after
if Spider.init_done?
Spider.config.get('storages').keys.each do |k|
storage = Spider::Model::BaseModel.get_storage(k)
storage.rollback! if storage.supports_transactions?
end
end
begin
Mail::TestMailer.deliveries.clear
rescue
end
Spider.apps.each do |name, mod|
mod.before_test if mod.respond_to?(:after_test)
end
end
|
5
6
7
|
# File 'lib/spiderfw/test.rb', line 5
def self.env
@env ||= {}
end
|
.load_fixtures(app, truncate = false) ⇒ Object
49
50
51
52
53
54
|
# File 'lib/spiderfw/test.rb', line 49
def self.load_fixtures(app, truncate=false)
path = File.join(app.path, 'test', 'fixtures')
Dir.glob(File.join(path, '*.yml')).each do |yml|
Spider::Model.load_fixtures(yml, truncate)
end
end
|
.load_fixtures!(app) ⇒ Object
45
46
47
|
# File 'lib/spiderfw/test.rb', line 45
def self.load_fixtures!(app)
load_fixtures(app, true)
end
|
.load_fixtures_file(app, file, truncate = false) ⇒ Object
56
57
58
59
|
# File 'lib/spiderfw/test.rb', line 56
def self.load_fixtures_file(app, file, truncate=false)
path = File.join(app.path, 'test', 'fixtures')
Spider::Model.load_fixtures(File.join(path, file)+'.yml', truncate)
end
|
.load_fixtures_file!(app, file) ⇒ Object
61
62
63
|
# File 'lib/spiderfw/test.rb', line 61
def self.load_fixtures_file!(app, file)
load_fixtures_file(app, file, true)
end
|
.restart_transactions ⇒ Object
65
66
67
68
69
70
71
|
# File 'lib/spiderfw/test.rb', line 65
def self.restart_transactions
Spider.config.get('storages').keys.each do |k|
storage = Spider::Model::BaseModel.get_storage(k)
storage.rollback!
storage.start_transaction
end
end
|
.use_storage_stub_for(app_or_model) ⇒ Object
73
74
75
76
77
78
79
80
81
82
83
84
85
|
# File 'lib/spiderfw/test.rb', line 73
def self.use_storage_stub_for(app_or_model)
require 'spiderfw/test/stubs/storage_stub'
Spider::Test.env[:storage_stub] ||= StorageStub.new('dummy')
models = []
if app_or_model < Spider::App
models = app_or_model.models
else
models = [app_or_model]
end
models.each do |m|
m.use_storage 'stub://stub'
end
end
|