Module: Workarea::NavigableTest

Defined in:
lib/workarea/core/navigable_test.rb

Instance Method Summary collapse

Instance Method Details

#test_destroyObject



47
48
49
50
51
52
53
54
55
56
# File 'lib/workarea/core/navigable_test.rb', line 47

def test_destroy
  model = navigable_class.new(name: 'Test Slug', slug: 'same-slug')
  model.valid?
  model.save(validate: false)

  create_taxon(navigable: model)

  model.destroy
  assert_equal(1, Workarea::Navigation::Taxon.count)
end

#test_saveObject



41
42
43
44
45
# File 'lib/workarea/core/navigable_test.rb', line 41

def test_save
  model = navigable_class.new(slug: 'test-slug')
  model.save
  assert(model.slug.nil?)
end

#test_slug=Object



58
59
60
61
# File 'lib/workarea/core/navigable_test.rb', line 58

def test_slug=
  instance = navigable_class.new(slug: 'test slug')
  assert_equal('test-slug', instance.slug)
end

#test_slug_cachingObject



26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/workarea/core/navigable_test.rb', line 26

def test_slug_caching
  model = navigable_class.new(name: 'Test Slug', slug: 'same-slug')
  model.valid?
  model.save(validate: false)

  taxon = create_taxon(navigable: model)

  model = navigable_class.find(model.id)
  model.slug = 'different-slug'
  model.save(validate: false)

  taxon.reload
  assert_equal('different-slug', taxon.navigable_slug)
end

#test_slug_generationObject



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/workarea/core/navigable_test.rb', line 9

def test_slug_generation
  instance = navigable_class.new(name: 'Test Slug')
  instance.valid?
  instance.save(validate: false)
  assert_equal('test-slug', instance.slug)

  instance = navigable_class.new(name: 'Test Slug')
  instance.valid?
  instance.save(validate: false)
  assert_equal('test-slug-1', instance.slug)

  instance = navigable_class.new(name: 'Test Slug')
  instance.valid?
  instance.save(validate: false)
  assert_equal('test-slug-2', instance.slug)
end

#test_to_paramObject



63
64
65
66
# File 'lib/workarea/core/navigable_test.rb', line 63

def test_to_param
  instance = navigable_class.new(slug: 'test-param')
  assert_equal('test-param', instance.to_param)
end

#test_validationsObject



3
4
5
6
7
# File 'lib/workarea/core/navigable_test.rb', line 3

def test_validations
  instance = navigable_class.new(name: 'test model')
  instance.valid?
  assert_equal('test-model', instance.slug)
end