Skip to content

Commit c773743

Browse files
committed
Series sales form: validate url length.
Fix #699
1 parent 321ce5b commit c773743

File tree

4 files changed

+37
-0
lines changed

4 files changed

+37
-0
lines changed

src/main/java/ru/mystamps/web/Db.java

+4
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,10 @@ public static final class SeriesImportRequest {
4444
public static final int URL_LENGTH = 285;
4545
}
4646

47+
public static final class SeriesSales {
48+
public static final int TRANSACTION_URL_LENGTH = 255;
49+
}
50+
4751
public static final class SuspiciousActivity {
4852
public static final int PAGE_URL_LENGTH = 100;
4953
public static final int METHOD_LENGTH = 7;

src/main/java/ru/mystamps/web/controller/dto/AddSeriesSalesForm.java

+3
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import java.util.Date;
2222

2323
import javax.validation.constraints.NotNull;
24+
import javax.validation.constraints.Size;
2425

2526
import org.springframework.format.annotation.DateTimeFormat;
2627

@@ -29,6 +30,7 @@
2930

3031
import ru.mystamps.web.dao.dto.Currency;
3132
import ru.mystamps.web.service.dto.AddSeriesSalesDto;
33+
import ru.mystamps.web.validation.ValidationRules;
3234

3335
@Getter
3436
@Setter
@@ -40,6 +42,7 @@ public class AddSeriesSalesForm implements AddSeriesSalesDto {
4042
@NotNull
4143
private Integer sellerId;
4244

45+
@Size(max = ValidationRules.SERIES_SALES_URL_MAX_LENGTH, message = "{value.too-long}")
4346
private String url;
4447

4548
@NotNull

src/main/java/ru/mystamps/web/validation/ValidationRules.java

+2
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,8 @@ public final class ValidationRules {
6767
public static final int PARTICIPANT_NAME_MAX_LENGTH = Db.TransactionParticipant.NAME_LENGTH;
6868
public static final int PARTICIPANT_URL_MAX_LENGTH = Db.TransactionParticipant.URL_LENGTH;
6969

70+
public static final int SERIES_SALES_URL_MAX_LENGTH = Db.SeriesSales.TRANSACTION_URL_LENGTH;
71+
7072
public static final int IMPORT_REQUEST_URL_MAX_LENGTH = Db.SeriesImportRequest.URL_LENGTH;
7173

7274
/** Maximum uploading image size in kilobytes. */
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
*** Settings ***
2+
Documentation Verify validation scenarios for adding series sales
3+
Library Selenium2Library
4+
Resource ../../auth.steps.robot
5+
Suite Setup Before Test Suite
6+
Suite Teardown After Test Suite
7+
Force Tags series sales validation
8+
9+
*** Test Cases ***
10+
Create series sales with too long url
11+
[Documentation] Verify validation of too long url
12+
${letter}= Set Variable j
13+
Input Text id=url http://${letter * 255}
14+
Submit Form id=add-series-sales-form
15+
Element Text Should Be id=url.errors Value is greater than allowable maximum of 255 characters
16+
17+
*** Keywords ***
18+
Before Test Suite
19+
[Documentation] Login as admin and open a page with series
20+
Open Browser ${SITE_URL} ${BROWSER}
21+
Register Keyword To Run On Failure Log Source
22+
Log In As login=admin password=test
23+
Go To ${SITE_URL}/series/1
24+
25+
After Test Suite
26+
[Documentation] Log out and close browser
27+
Log Out
28+
Close Browser

0 commit comments

Comments
 (0)