Commit e8e43940cf7044876c7076f55afcf419abacad05
1 parent
baa2faf8
Exists in
staging
and in
32 other branches
article_test: use profile from #setup
This also sets User.current to avoid random activities failures
Showing
1 changed file
with
35 additions
and
46 deletions
Show diff stats
test/unit/article_test.rb
| @@ -7,7 +7,8 @@ class ArticleTest < ActiveSupport::TestCase | @@ -7,7 +7,8 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 7 | 7 | ||
| 8 | def setup | 8 | def setup |
| 9 | ActiveSupport::TestCase::setup | 9 | ActiveSupport::TestCase::setup |
| 10 | - @profile = create_user('testing').person | 10 | + user = User.current = create_user 'testing' |
| 11 | + @profile = user.person | ||
| 11 | end | 12 | end |
| 12 | attr_reader :profile | 13 | attr_reader :profile |
| 13 | 14 | ||
| @@ -468,14 +469,12 @@ class ArticleTest < ActiveSupport::TestCase | @@ -468,14 +469,12 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 468 | end | 469 | end |
| 469 | 470 | ||
| 470 | should 'say that logged off user cannot see private article' do | 471 | should 'say that logged off user cannot see private article' do |
| 471 | - profile = fast_create(Profile, :name => 'test profile', :identifier => 'test_profile') | ||
| 472 | article = fast_create(Article, :name => 'test article', :profile_id => profile.id, :published => false) | 472 | article = fast_create(Article, :name => 'test article', :profile_id => profile.id, :published => false) |
| 473 | 473 | ||
| 474 | refute article.display_to?(nil) | 474 | refute article.display_to?(nil) |
| 475 | end | 475 | end |
| 476 | 476 | ||
| 477 | should 'say that not member of profile cannot see private article' do | 477 | should 'say that not member of profile cannot see private article' do |
| 478 | - profile = fast_create(Profile, :name => 'test profile', :identifier => 'test_profile') | ||
| 479 | article = fast_create(Article, :name => 'test article', :profile_id => profile.id, :published => false) | 478 | article = fast_create(Article, :name => 'test article', :profile_id => profile.id, :published => false) |
| 480 | person = create_user('test_user').person | 479 | person = create_user('test_user').person |
| 481 | 480 | ||
| @@ -483,7 +482,6 @@ class ArticleTest < ActiveSupport::TestCase | @@ -483,7 +482,6 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 483 | end | 482 | end |
| 484 | 483 | ||
| 485 | should 'say that member user can not see private article' do | 484 | should 'say that member user can not see private article' do |
| 486 | - profile = fast_create(Profile, :name => 'test profile', :identifier => 'test_profile') | ||
| 487 | article = fast_create(Article, :name => 'test article', :profile_id => profile.id, :published => false, :show_to_followers => false) | 485 | article = fast_create(Article, :name => 'test article', :profile_id => profile.id, :published => false, :show_to_followers => false) |
| 488 | person = create_user('test_user').person | 486 | person = create_user('test_user').person |
| 489 | profile.affiliate(person, Profile::Roles.member(profile.environment.id)) | 487 | profile.affiliate(person, Profile::Roles.member(profile.environment.id)) |
| @@ -492,25 +490,23 @@ class ArticleTest < ActiveSupport::TestCase | @@ -492,25 +490,23 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 492 | end | 490 | end |
| 493 | 491 | ||
| 494 | should 'say that profile admin can see private article' do | 492 | should 'say that profile admin can see private article' do |
| 495 | - profile = fast_create(Profile, :name => 'test profile', :identifier => 'test_profile') | 493 | + org = fast_create(Profile, :name => 'test profile', :identifier => 'test_profile') |
| 496 | article = fast_create(Article, :name => 'test article', :profile_id => profile.id, :published => false) | 494 | article = fast_create(Article, :name => 'test article', :profile_id => profile.id, :published => false) |
| 497 | - person = create_user('test_user').person | ||
| 498 | - profile.affiliate(person, Profile::Roles.admin(profile.environment.id)) | 495 | + org.affiliate(profile, Profile::Roles.admin(org.environment.id)) |
| 499 | 496 | ||
| 500 | - assert article.display_to?(person) | 497 | + assert article.display_to?(profile) |
| 501 | end | 498 | end |
| 502 | 499 | ||
| 503 | should 'say that profile moderator can see private article' do | 500 | should 'say that profile moderator can see private article' do |
| 504 | - profile = fast_create(Profile, :name => 'test profile', :identifier => 'test_profile') | ||
| 505 | - article = fast_create(Article, :name => 'test article', :profile_id => profile.id, :published => false) | ||
| 506 | - person = create_user('test_user').person | ||
| 507 | - profile.affiliate(person, Profile::Roles.moderator(profile.environment.id)) | 501 | + org = fast_create(Profile, :name => 'test profile', :identifier => 'test_profile') |
| 502 | + article = fast_create(Article, :name => 'test article', :profile_id => org.id, :published => false) | ||
| 503 | + org.affiliate(profile, Profile::Roles.moderator(org.environment.id)) | ||
| 508 | 504 | ||
| 509 | - assert article.display_to?(person) | 505 | + assert article.display_to?(profile) |
| 510 | end | 506 | end |
| 511 | 507 | ||
| 512 | should 'show article to non member if article public but profile private' do | 508 | should 'show article to non member if article public but profile private' do |
| 513 | - profile = fast_create(Profile, :name => 'test profile', :identifier => 'test_profile', :public_profile => false) | 509 | + profile.update public_profile: false |
| 514 | article = fast_create(Article, :name => 'test article', :profile_id => profile.id, :published => true) | 510 | article = fast_create(Article, :name => 'test article', :profile_id => profile.id, :published => true) |
| 515 | person1 = create_user('test_user1').person | 511 | person1 = create_user('test_user1').person |
| 516 | profile.affiliate(person1, Profile::Roles.member(profile.environment.id)) | 512 | profile.affiliate(person1, Profile::Roles.member(profile.environment.id)) |
| @@ -522,7 +518,6 @@ class ArticleTest < ActiveSupport::TestCase | @@ -522,7 +518,6 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 522 | end | 518 | end |
| 523 | 519 | ||
| 524 | should 'make new article private if created inside a private folder' do | 520 | should 'make new article private if created inside a private folder' do |
| 525 | - profile = fast_create(Profile, :name => 'test profile', :identifier => 'test_profile') | ||
| 526 | folder = fast_create(Folder, :name => 'my_intranet', :profile_id => profile.id, :published => false) | 521 | folder = fast_create(Folder, :name => 'my_intranet', :profile_id => profile.id, :published => false) |
| 527 | article = fast_create(Article, :name => 'my private article', :profile_id => profile.id, :parent_id => folder.id) | 522 | article = fast_create(Article, :name => 'my private article', :profile_id => profile.id, :parent_id => folder.id) |
| 528 | 523 | ||
| @@ -530,7 +525,6 @@ class ArticleTest < ActiveSupport::TestCase | @@ -530,7 +525,6 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 530 | end | 525 | end |
| 531 | 526 | ||
| 532 | should 'save as private' do | 527 | should 'save as private' do |
| 533 | - profile = fast_create(Profile, :name => 'test profile', :identifier => 'test_profile') | ||
| 534 | folder = fast_create(Folder, :name => 'my_intranet', :profile_id => profile.id, :published => false) | 528 | folder = fast_create(Folder, :name => 'my_intranet', :profile_id => profile.id, :published => false) |
| 535 | article = fast_create(Article, :name => 'my private article') | 529 | article = fast_create(Article, :name => 'my private article') |
| 536 | article.profile = profile | 530 | article.profile = profile |
| @@ -1012,13 +1006,13 @@ class ArticleTest < ActiveSupport::TestCase | @@ -1012,13 +1006,13 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 1012 | 1006 | ||
| 1013 | should 'not notify activity by default on create' do | 1007 | should 'not notify activity by default on create' do |
| 1014 | ActionTracker::Record.delete_all | 1008 | ActionTracker::Record.delete_all |
| 1015 | - create Article, :name => 'test', :profile_id => fast_create(Profile).id, :published => true | 1009 | + create Article, :name => 'test', :profile_id => profile.id, :published => true |
| 1016 | assert_equal 0, ActionTracker::Record.count | 1010 | assert_equal 0, ActionTracker::Record.count |
| 1017 | end | 1011 | end |
| 1018 | 1012 | ||
| 1019 | should 'not notify activity by default on update' do | 1013 | should 'not notify activity by default on update' do |
| 1020 | ActionTracker::Record.delete_all | 1014 | ActionTracker::Record.delete_all |
| 1021 | - a = create Article, :name => 'bar', :profile_id => fast_create(Profile).id, :published => true | 1015 | + a = create Article, :name => 'bar', :profile_id => profile.id, :published => true |
| 1022 | a.name = 'foo' | 1016 | a.name = 'foo' |
| 1023 | a.save! | 1017 | a.save! |
| 1024 | assert_equal 0, ActionTracker::Record.count | 1018 | assert_equal 0, ActionTracker::Record.count |
| @@ -1026,13 +1020,13 @@ class ArticleTest < ActiveSupport::TestCase | @@ -1026,13 +1020,13 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 1026 | 1020 | ||
| 1027 | should 'not notify activity by default on destroy' do | 1021 | should 'not notify activity by default on destroy' do |
| 1028 | ActionTracker::Record.delete_all | 1022 | ActionTracker::Record.delete_all |
| 1029 | - a = create Article, :name => 'bar', :profile_id => fast_create(Profile).id, :published => true | 1023 | + a = create Article, :name => 'bar', :profile_id => profile.id, :published => true |
| 1030 | a.destroy | 1024 | a.destroy |
| 1031 | assert_equal 0, ActionTracker::Record.count | 1025 | assert_equal 0, ActionTracker::Record.count |
| 1032 | end | 1026 | end |
| 1033 | 1027 | ||
| 1034 | should 'create activity' do | 1028 | should 'create activity' do |
| 1035 | - a = create TextileArticle, :name => 'bar', :profile_id => fast_create(Profile).id, :published => true | 1029 | + a = create TextileArticle, :name => 'bar', :profile_id => profile.id, :published => true |
| 1036 | a.activity.destroy | 1030 | a.activity.destroy |
| 1037 | assert_nil a.activity | 1031 | assert_nil a.activity |
| 1038 | 1032 | ||
| @@ -1212,10 +1206,9 @@ class ArticleTest < ActiveSupport::TestCase | @@ -1212,10 +1206,9 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 1212 | end | 1206 | end |
| 1213 | 1207 | ||
| 1214 | should 'get article galleries' do | 1208 | should 'get article galleries' do |
| 1215 | - p = fast_create(Profile) | ||
| 1216 | - a = fast_create(Article, :profile_id => p.id) | ||
| 1217 | - g = fast_create(Gallery, :profile_id => p.id) | ||
| 1218 | - assert_equal [g], p.articles.galleries | 1209 | + a = fast_create(Article, :profile_id => profile.id) |
| 1210 | + g = fast_create(Gallery, :profile_id => profile.id) | ||
| 1211 | + assert_equal [g], profile.articles.galleries | ||
| 1219 | end | 1212 | end |
| 1220 | 1213 | ||
| 1221 | should 'has many translations' do | 1214 | should 'has many translations' do |
| @@ -1236,7 +1229,7 @@ class ArticleTest < ActiveSupport::TestCase | @@ -1236,7 +1229,7 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 1236 | end | 1229 | end |
| 1237 | 1230 | ||
| 1238 | should 'validate inclusion of language' do | 1231 | should 'validate inclusion of language' do |
| 1239 | - a = build(Article, :profile_id => fast_create(Profile).id) | 1232 | + a = build(Article, :profile_id => profile.id) |
| 1240 | a.language = '12' | 1233 | a.language = '12' |
| 1241 | a.valid? | 1234 | a.valid? |
| 1242 | assert a.errors[:language.to_s].present? | 1235 | assert a.errors[:language.to_s].present? |
| @@ -1268,7 +1261,7 @@ class ArticleTest < ActiveSupport::TestCase | @@ -1268,7 +1261,7 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 1268 | end | 1261 | end |
| 1269 | 1262 | ||
| 1270 | should 'list possible translations' do | 1263 | should 'list possible translations' do |
| 1271 | - native_article = fast_create(Article, :language => 'pt', :profile_id => fast_create(Profile).id ) | 1264 | + native_article = fast_create(Article, :language => 'pt', :profile_id => profile.id ) |
| 1272 | article_translation = fast_create(Article, :language => 'en', :translation_of_id => native_article.id) | 1265 | article_translation = fast_create(Article, :language => 'en', :translation_of_id => native_article.id) |
| 1273 | possible_translations = native_article.possible_translations | 1266 | possible_translations = native_article.possible_translations |
| 1274 | refute possible_translations.include?('en') | 1267 | refute possible_translations.include?('en') |
| @@ -1278,7 +1271,7 @@ class ArticleTest < ActiveSupport::TestCase | @@ -1278,7 +1271,7 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 1278 | should 'verify if translation is already in use' do | 1271 | should 'verify if translation is already in use' do |
| 1279 | native_article = fast_create(Article, :language => 'pt') | 1272 | native_article = fast_create(Article, :language => 'pt') |
| 1280 | article_translation = fast_create(Article, :language => 'en', :translation_of_id => native_article.id) | 1273 | article_translation = fast_create(Article, :language => 'en', :translation_of_id => native_article.id) |
| 1281 | - a = build(Article, :profile => fast_create(Profile)) | 1274 | + a = build(Article, :profile => profile) |
| 1282 | a.language = 'en' | 1275 | a.language = 'en' |
| 1283 | a.translation_of = native_article | 1276 | a.translation_of = native_article |
| 1284 | a.valid? | 1277 | a.valid? |
| @@ -1290,7 +1283,7 @@ class ArticleTest < ActiveSupport::TestCase | @@ -1290,7 +1283,7 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 1290 | 1283 | ||
| 1291 | should 'verify if native translation is already in use' do | 1284 | should 'verify if native translation is already in use' do |
| 1292 | native_article = fast_create(Article, :language => 'pt') | 1285 | native_article = fast_create(Article, :language => 'pt') |
| 1293 | - a = build(Article, :profile => fast_create(Profile)) | 1286 | + a = build(Article, :profile => profile) |
| 1294 | a.language = 'pt' | 1287 | a.language = 'pt' |
| 1295 | a.translation_of = native_article | 1288 | a.translation_of = native_article |
| 1296 | a.valid? | 1289 | a.valid? |
| @@ -1302,7 +1295,7 @@ class ArticleTest < ActiveSupport::TestCase | @@ -1302,7 +1295,7 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 1302 | 1295 | ||
| 1303 | should 'translation have a language' do | 1296 | should 'translation have a language' do |
| 1304 | native_article = fast_create(Article, :language => 'pt') | 1297 | native_article = fast_create(Article, :language => 'pt') |
| 1305 | - a = build(Article, :profile_id => fast_create(Profile).id) | 1298 | + a = build(Article, :profile_id => profile.id) |
| 1306 | a.translation_of = native_article | 1299 | a.translation_of = native_article |
| 1307 | a.valid? | 1300 | a.valid? |
| 1308 | assert a.errors[:language.to_s].present? | 1301 | assert a.errors[:language.to_s].present? |
| @@ -1312,8 +1305,8 @@ class ArticleTest < ActiveSupport::TestCase | @@ -1312,8 +1305,8 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 1312 | end | 1305 | end |
| 1313 | 1306 | ||
| 1314 | should 'native translation have a language' do | 1307 | should 'native translation have a language' do |
| 1315 | - native_article = fast_create(Article, :profile_id => fast_create(Profile).id ) | ||
| 1316 | - a = build(Article, :profile_id => fast_create(Profile).id) | 1308 | + native_article = fast_create(Article, :profile_id => profile.id ) |
| 1309 | + a = build(Article, :profile_id => profile.id) | ||
| 1317 | a.language = 'en' | 1310 | a.language = 'en' |
| 1318 | a.translation_of = native_article | 1311 | a.translation_of = native_article |
| 1319 | a.valid? | 1312 | a.valid? |
| @@ -1378,22 +1371,22 @@ class ArticleTest < ActiveSupport::TestCase | @@ -1378,22 +1371,22 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 1378 | end | 1371 | end |
| 1379 | 1372 | ||
| 1380 | should 'get only non translated articles' do | 1373 | should 'get only non translated articles' do |
| 1381 | - p = fast_create(Profile) | ||
| 1382 | - native = fast_create(Article, :language => 'pt', :profile_id => p.id) | ||
| 1383 | - translation = fast_create(Article, :language => 'en', :translation_of_id => native.id, :profile_id => p.id) | ||
| 1384 | - assert_equal [native], p.articles.native_translations | 1374 | + profile.articles.delete_all |
| 1375 | + native = fast_create(Article, :language => 'pt', :profile_id => profile.id) | ||
| 1376 | + translation = fast_create(Article, :language => 'en', :translation_of_id => native.id, :profile_id => profile.id) | ||
| 1377 | + assert_equal [native], profile.articles.native_translations | ||
| 1385 | end | 1378 | end |
| 1386 | 1379 | ||
| 1387 | should 'not list own language as a possible translation if language has changed' do | 1380 | should 'not list own language as a possible translation if language has changed' do |
| 1388 | - a = build(Article, :language => 'pt', :profile_id => fast_create(Profile).id) | 1381 | + a = build(Article, :language => 'pt', :profile_id => profile.id) |
| 1389 | refute a.possible_translations.include?('pt') | 1382 | refute a.possible_translations.include?('pt') |
| 1390 | - a = fast_create(Article, :language => 'pt', :profile_id => fast_create(Profile).id ) | 1383 | + a = fast_create(Article, :language => 'pt', :profile_id => profile.id ) |
| 1391 | a.language = 'en' | 1384 | a.language = 'en' |
| 1392 | refute a.possible_translations.include?('en') | 1385 | refute a.possible_translations.include?('en') |
| 1393 | end | 1386 | end |
| 1394 | 1387 | ||
| 1395 | should 'list own language as a possible translation if language has not changed' do | 1388 | should 'list own language as a possible translation if language has not changed' do |
| 1396 | - a = fast_create(Article, :language => 'pt', :profile_id => fast_create(Profile).id) | 1389 | + a = fast_create(Article, :language => 'pt', :profile_id => profile.id) |
| 1397 | assert a.possible_translations.include?('pt') | 1390 | assert a.possible_translations.include?('pt') |
| 1398 | end | 1391 | end |
| 1399 | 1392 | ||
| @@ -1435,7 +1428,6 @@ class ArticleTest < ActiveSupport::TestCase | @@ -1435,7 +1428,6 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 1435 | should 'return only folders' do | 1428 | should 'return only folders' do |
| 1436 | not_folders = [RssFeed, TinyMceArticle, Event, TextileArticle] | 1429 | not_folders = [RssFeed, TinyMceArticle, Event, TextileArticle] |
| 1437 | folders = [Folder, Blog, Gallery, Forum] | 1430 | folders = [Folder, Blog, Gallery, Forum] |
| 1438 | - profile = fast_create(Profile) | ||
| 1439 | 1431 | ||
| 1440 | not_folders.each do |klass| | 1432 | not_folders.each do |klass| |
| 1441 | item = fast_create(klass) | 1433 | item = fast_create(klass) |
| @@ -1451,7 +1443,6 @@ class ArticleTest < ActiveSupport::TestCase | @@ -1451,7 +1443,6 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 1451 | should 'return no folders' do | 1443 | should 'return no folders' do |
| 1452 | not_folders = [RssFeed, TinyMceArticle, Event, TextileArticle] | 1444 | not_folders = [RssFeed, TinyMceArticle, Event, TextileArticle] |
| 1453 | folders = [Folder, Blog, Gallery, Forum] | 1445 | folders = [Folder, Blog, Gallery, Forum] |
| 1454 | - profile = fast_create(Profile) | ||
| 1455 | 1446 | ||
| 1456 | not_folders.each do |klass| | 1447 | not_folders.each do |klass| |
| 1457 | item = fast_create(klass) | 1448 | item = fast_create(klass) |
| @@ -1611,18 +1602,16 @@ class ArticleTest < ActiveSupport::TestCase | @@ -1611,18 +1602,16 @@ class ArticleTest < ActiveSupport::TestCase | ||
| 1611 | end | 1602 | end |
| 1612 | 1603 | ||
| 1613 | should 'delegate region info to profile' do | 1604 | should 'delegate region info to profile' do |
| 1614 | - profile = fast_create(Profile) | ||
| 1615 | - Profile.any_instance.expects(:region) | ||
| 1616 | - Profile.any_instance.expects(:region_id) | 1605 | + Person.any_instance.expects(:region) |
| 1606 | + Person.any_instance.expects(:region_id) | ||
| 1617 | article = fast_create(Article, :profile_id => profile.id) | 1607 | article = fast_create(Article, :profile_id => profile.id) |
| 1618 | article.region | 1608 | article.region |
| 1619 | article.region_id | 1609 | article.region_id |
| 1620 | end | 1610 | end |
| 1621 | 1611 | ||
| 1622 | should 'delegate environment info to profile' do | 1612 | should 'delegate environment info to profile' do |
| 1623 | - profile = fast_create(Profile) | ||
| 1624 | - Profile.any_instance.expects(:environment) | ||
| 1625 | - Profile.any_instance.expects(:environment_id) | 1613 | + Person.any_instance.expects(:environment) |
| 1614 | + Person.any_instance.expects(:environment_id) | ||
| 1626 | article = fast_create(Article, :profile_id => profile.id) | 1615 | article = fast_create(Article, :profile_id => profile.id) |
| 1627 | article.environment | 1616 | article.environment |
| 1628 | article.environment_id | 1617 | article.environment_id |