1) Python Requests status code checks:
r.status_code == requests.codes.ok
2) Docker publish ports:
$ docker run -p 127.0.0.1:80:8080/tcp ubuntu bash This binds port 8080 of the container to TCP port 80 on 127.0.0.1 of the host machine. You can also specify udp and sctp ports. The Docker User Guide explains in detail how to manipulate ports in Docker.
3) HTTP status codes:
1xx informational 2xx Successful 201 created 204 no content (post received by server) 3xx Redirect 301 moved permanently - future requests should be directed to the given URI 302 found - requested resource resides temporally under a different URI 304 not modified 4xx Client Error 400 bad request 401 unauthorized (user not authenticated or failed) 403 forbidden (need permissions) 404 not found 5xx Server Error 500 internal server err - generic error message 501 not implemented 503 service unavailable
4) Python dictionary filters:
my_dict = {8:'u',4:'t',9:'z',10:'j',5:'k',3:'s'} # filter(function,iterables) new_dict = dict(filter(lambda val: val[0] % 3 == 0, my_dict.items())) print("Filter dictionary:",new_filt)
5) HTTP Authentication
Basic: For "Basic"
authentication the credentials are constructed by first combining the username and the password with a colon (aladdin:opensesame
), and then by encoding the resulting string in base64
(YWxhZGRpbjpvcGVuc2VzYW1l
).
Authorization: Basic YWxhZGRpbjpvcGVuc2VzYW1l --- auth_type = 'Basic' creds = '{}:{}'.format(user,pass) creds_b64 = base64.b64encode(creds) header = {'Authorization': '{}{}'.format(auth_type,creds_b64)}
Authorization: Bearer <TOKEN>
6) “diff -u file1.txt file2.txt”. link1 link2
The unified format is an option you can add to display output without any redundant context lines
$ diff -u file1.txt file2.txt --- file1.txt 2018-01-11 10:39:38.237464052 +0000 +++ file2.txt 2018-01-11 10:40:00.323423021 +0000 @@ -1,4 +1,4 @@ cat -mv -comm cp +diff +comm
- The first file is indicated by —
- The second file is indicated by +++.
- The first two lines of this output show us information about file 1 and file 2. It lists the file name, modification date, and modification time of each of our files, one per line.
- The lines below display the content of the files and how to modify file1.txt to make it identical to file2.txt.
-
(minus) – it needs to be deleted from the first file.+
(plus) – it needs to be added to the first file.
- The next line has two at sign @ followed by a line range from the first file (in our case lines 1 through 4, separated by a comma) prefixed by “-“ and then space and then again followed by a line range from the second file prefixed by “+” and at the end two at sign @. Followed by the file content in output tells us which line remain unchanged and which lines needs to added or deleted(indicated by symbols) in the file 1 to make it identical to file 2.
7) Python Testing: Assertions
.assertEqual(a, b) a == b .assertTrue(x) bool(x) is True .assertFalse(x) bool(x) is False .assertIs(a, b) a is b .assertIsNone(x) x is None .assertIn(a, b) a in b .assertIsInstance(a, b) isinstance(a, b) *** .assertIs(), .assertIsNone(), .assertIn(), and .assertIsInstance() all have opposite methods, named .assertIsNot(), and so forth.