Skip to content

Commit 5572724

Browse files
committed
Fixed #6, #2, #1, #4
1 parent c3898e2 commit 5572724

23 files changed

+891
-75
lines changed

README.md

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,17 @@ Classes for data validation
66

77
## Completed classes
88

9-
- `new WJSCppValidatorStringRegexpBase("testre", "^[a-zA-Z]+$")` - validate value by regular expression
10-
- `new WJSCppValidatorStringListBase("lang", {"en", "de", "ru"})` - validate value from a list
11-
- `new WJSCppValidatorEmail()` - validate format email
12-
- `new WJSCppValidatorUUID()` - validate format uuid
13-
- `new WJSCppValidatorStringLength(1,100)` - validate min length and max length
9+
- `new WSJCppValidatorStringRegexpBase("testre", "^[a-zA-Z]+$")` - validate value by regular expression
10+
- `new WSJCppValidatorStringListBase("lang", {"en", "de", "ru"})` - validate value from a list
11+
- `new WSJCppValidatorEmail()` - validate format email
12+
- `new WSJCppValidatorUUID()` - validate format uuid
13+
- `new WSJCppValidatorStringLength(1,100)` - validate min length and max length
14+
- `new WSJCppValidatorJWT()` - validate format of JWT
15+
- `new WSJCppValidatorDate()` - validate format date like 'YYYY-MM-DD'
16+
- `new WSJCppValidatorTimeH24()` - validate format date like 'HH:mm:ss' (24 hours)
17+
- `new WSJCppValidatorBase64()` - validate format of base64
18+
- `new WSJCppValidatorNumber()` - validate format of number
19+
- `new WSJCppValidatorHex()` - validate hex value
1420

1521
## Integrate to your project
1622

@@ -29,7 +35,7 @@ $ wsjcpp install https://github.com/wsjcpp/wsjcpp-validators:master
2935

3036
``` cpp
3137

32-
WJSCppValidatorUUID *pValidatorUUID = new WJSCppValidatorUUID();
38+
WSJCppValidatorUUID *pValidatorUUID = new WSJCppValidatorUUID();
3339
std::string sError = "";
3440
if (!pValidatorUUID->isValid("abcdef01-ABCD-EF23-1000-000000000001", sError)) {
3541
std::cout << sError << std::endl;
@@ -39,14 +45,14 @@ if (!pValidatorUUID->isValid("abcdef01-ABCD-EF23-1000-000000000001", sError)) {
3945
## Example for yuor implementations
4046
4147
``` cpp
42-
class WJSCppValidatorUUID : public WJSCppValidatorStringRegexpBase {
48+
class WSJCppValidatorUUID : public WSJCppValidatorStringRegexpBase {
4349
public:
44-
WJSCppValidatorUUID()
45-
: WJSCppValidatorStringRegexpBase(
50+
WSJCppValidatorUUID()
51+
: WSJCppValidatorStringRegexpBase(
4652
"uuid", // name
4753
"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"
4854
) {
49-
TAG = "WJSCppValidatorUUID";
55+
TAG = "WSJCppValidatorUUID";
5056
}
5157
};
52-
```
58+
```

src/main.cpp

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -31,16 +31,22 @@ int main(int argc, char* argv[]) {
3131
}
3232
std::string sArg1(argv[1]);
3333

34-
std::vector<WJSCppValidatorStringBase *> vValidators;
35-
vValidators.push_back(new WJSCppValidatorStringLength(5, 100));
36-
vValidators.push_back(new WJSCppValidatorStringLength(1, 5));
37-
vValidators.push_back(new WJSCppValidatorEmail());
38-
vValidators.push_back(new WJSCppValidatorUUID());
39-
vValidators.push_back(new WJSCppValidatorStringListBase("lang", {"en", "de", "ru"}));
40-
vValidators.push_back(new WJSCppValidatorStringRegexpBase("testre", "^[a-zA-Z]+$"));
34+
std::vector<WSJCppValidatorStringBase *> vValidators;
35+
vValidators.push_back(new WSJCppValidatorStringLength(5, 100));
36+
vValidators.push_back(new WSJCppValidatorStringLength(1, 5));
37+
vValidators.push_back(new WSJCppValidatorEmail());
38+
vValidators.push_back(new WSJCppValidatorUUID());
39+
vValidators.push_back(new WSJCppValidatorStringListBase("lang", {"en", "de", "ru"}));
40+
vValidators.push_back(new WSJCppValidatorStringRegexpBase("testre", "^[a-zA-Z]+$"));
41+
vValidators.push_back(new WSJCppValidatorJWT());
42+
vValidators.push_back(new WSJCppValidatorDate());
43+
vValidators.push_back(new WSJCppValidatorTimeH24());
44+
vValidators.push_back(new WSJCppValidatorBase64());
45+
vValidators.push_back(new WSJCppValidatorNumber());
46+
vValidators.push_back(new WSJCppValidatorHex());
4147

4248
for (int i = 0; i < vValidators.size(); i++) {
43-
WJSCppValidatorStringBase *pValidator = vValidators[i];
49+
WSJCppValidatorStringBase *pValidator = vValidators[i];
4450
std::string sError;
4551
if (pValidator->isValid(sArg1, sError)) {
4652
WSJCppLog::ok(TAG, "ok -> [" + pValidator->getTypeName() + "]: '" + sArg1 + "'");
@@ -50,4 +56,4 @@ int main(int argc, char* argv[]) {
5056
}
5157

5258
return 0;
53-
}
59+
}

0 commit comments

Comments
 (0)