Project

General

Profile

Actions

Bug #18489

closed

auth_source_ldaps controller test sets account_password to nil to test missing parameter

Added by Dominic Cleal about 7 years ago. Updated almost 6 years ago.

Status:
Closed
Priority:
Low
Assignee:
Category:
Tests
Target version:
Difficulty:
Triaged:
Fixed in Releases:
Found in Releases:

Description

The test "AuthSourceLdapsControllerTest#test_0001_blank account_password submitted does not erase existing account_password" wasn't updated in commit 2348fc8e (#2943, #11387) to test the difference between a missing account_password parameter and an empty string parameter.

It passes account_password => nil into parameters and then tests that the password is unchanged. Under Rails 5.0, nil is changed to an empty string (because it's form encoded) but under 4.2 it's passed through as nil (which isn't really possible in form encoding). This causes a failure on 5.0 as it resets the password from the original nil to "":

AuthSourceLdapsControllerTest#test_0001_blank account_password submitted does not erase existing account_password [test/controllers/auth_source_ldaps_controller_test.rb:82]:
Expected: nil
Actual: ""

The test should have been updated like other controllers to test with a missing account_password (which should not change the password) and an empty string account_password (which should set it to an empty string). It shouldn't test a nil value.


Related issues 1 (0 open1 closed)

Related to Foreman - Bug #11387: LDAP Account password cannot be empty after edit ClosedAmir Fefer08/17/2015Actions
Actions

Also available in: Atom PDF