# About registe test

**URL:** <https://www.ruby-forum.com/t/about-registe-test/144127>\
**Category:** Rails\
**Created:** [July 25, 2008, 5:21pm UTC](https://www.ruby-forum.com/t/about-registe-test/144127 "2008-07-25T17:21:15Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![daociyiyou](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/0ea827/32.png) [@daociyiyou](https://www.ruby-forum.com/u/daociyiyou)\
**Post date:** [July 25, 2008, 5:21pm UTC](https://www.ruby-forum.com/t/about-registe-test/144127/1 "2008-07-25T17:21:15Z")

</div>

hello:

```
An action needed to test is:

```

def register  
@user=User.new(params[:user])

```
if params[:user] && @user.save
  # if province=="åŒ—äº¬"...,set the city attr'value the same as

```

province  
province=params[:user][:province]  
if province==“åŒ—äº¬” || province==“å¤©æ´¥” || province==“é‡åº†” ||  
province==“ä¸Šæµ·” || province==“é¦™æ¸¯” || province==“æ¾³é—¨”  
@user.city=@user.province  
@user.save  
end  
session[:login]=@user.id  
flash[:register]="#{@user.name}å·²åˆ›å»º"  
redirect\_to :action=\>“upanel”  
else  
render :action=\>“register”  
end  
end

#########################  
The test is :  
require File.dirname( **FILE** ) + ‘/…/test\_helper’  
require ‘login\_controller’  
class LoginControllerTest \< ActionController::TestCase

# Replace this with your real tests.

def setup  
@login\_instance=LoginController.new  
@request=ActionController::TestRequest.new  
@response=ActionController::TestResponse.new  
end  
def test\_truth  
assert true  
end  
def test\_register\_suc  
post :register,:user=\>{:id=\>1,  
:photo=\>"/images/users/fan\_hong.jpg",  
:ball\_kind=\>“ç¯®çƒ”,  
:name=\>“èŒƒå®”,  
:password=\>“3338179”,  
:password\_confirmation=\>“3338179”,  
:age=\>“30”,  
:sex=\>“ç”·”,  
:education=\>“æœ¬ç§‘”,  
:career=\>“å·¥ç¨‹å¸ˆ”,  
:province=\>“åŒ—äº¬”,  
:section=\>“æœé˜³åŒº”,  
:email=\>“removed\_email\_address@domain.invalid”,  
:qq=\>“369963”}  
assert\_response :success  
assert\_redirected\_to :action=\>“upanel”  
assert\_equal 1,session[:login]  
assert\_equal “èŒƒå®å·²åˆ›å»º”,flash[:register]  
assert\_equal “åŒ—äº¬”,assigns(:user).city  
end  
end

#############  
when i run the test,there is one fail,which says like this:  
expected 1 or "èŒƒå®å·²åˆ›å»º"or “åŒ—äº¬”,but is nil.  
it seems that this test does not call the method register.But in  
reality,the register method work fine when i submit the form.I do not  
know where is wrong in my test code.please help me! thank you!

---

<div class="post-metadata">

**Author:** ![daociyiyou](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/0ea827/32.png) [@daociyiyou](https://www.ruby-forum.com/u/daociyiyou)\
**Post date:** [July 26, 2008, 3:11am UTC](https://www.ruby-forum.com/t/about-registe-test/144127/2 "2008-07-26T03:11:21Z")

</div>

who can help me?

---

<div class="post-metadata">

**Author:** ![daociyiyou](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/0ea827/32.png) [@daociyiyou](https://www.ruby-forum.com/u/daociyiyou)\
**Post date:** [July 26, 2008, 3:42am UTC](https://www.ruby-forum.com/t/about-registe-test/144127/3 "2008-07-26T03:42:00Z")

</div>

On Fri, 2008-07-25 at 17:21 +0200, Guo Y. wrote:

> ```
> if province=="åŒ—äº¬" || province=="å¤©æ´¥" || province=="é‡åº†" ||
> 
> ```
> 
> end  
> @response=ActionController::TestResponse.new  
> :password\_confirmation=\>“3338179”,  
> assert\_equal 1,session[:login]  
> know where is wrong in my test code.please help me! thank you!

* * *

look in your test.log - the answer should be there.

Craig
