1 | var mocha = require('mocha');
|
2 | var assert = require('assert');
|
3 | var nconf = require('nconf');
|
4 | var testingKeys = nconf.env().file({
|
5 | file: __dirname + '/testing_keys.json'
|
6 | });
|
7 | var util = require('util');
|
8 | var merge = require('merge');
|
9 |
|
10 | var postmark = require('../lib/postmark/index.js');
|
11 |
|
12 | describe('admin client signature management', function() {
|
13 | this.timeout(4000);
|
14 | var prefix = "node-js-tests";
|
15 |
|
16 | var _client = null;
|
17 | var _email = null
|
18 |
|
19 | beforeEach(function() {
|
20 |
|
21 | _email = testingKeys.get('WRITE_TEST_SENDER_SIGNATURE_PROTOTYPE')
|
22 | .replace(/\[TOKEN]/i, prefix + new Date().valueOf());
|
23 | _client = new postmark.AdminClient(testingKeys.get('WRITE_ACCOUNT_TOKEN'));
|
24 | });
|
25 |
|
26 | after(function() {
|
27 | var rulePrefixTester = new RegExp(prefix);
|
28 | var c = new postmark.AdminClient(testingKeys.get('WRITE_ACCOUNT_TOKEN'));
|
29 | c.listSenderSignatures(function(err, resp) {
|
30 | if (!err) {
|
31 | for (var i = 0; i < resp.SenderSignatures.length; i++) {
|
32 | var signature = resp.SenderSignatures[i];
|
33 | if (rulePrefixTester.test(signature.Name)) {
|
34 | c.deleteSenderSignature(signature.ID);
|
35 | }
|
36 | }
|
37 | }
|
38 | });
|
39 | });
|
40 |
|
41 | it("can list signatures", function(done) {
|
42 | _client.listSenderSignatures(done);
|
43 | });
|
44 |
|
45 | it("can get a signature", function(done) {
|
46 | _client.createSenderSignature({
|
47 | Name: _email,
|
48 | FromEmail: _email
|
49 | }, function(err, signature) {
|
50 | _client.getSenderSignature(signature.ID, done);
|
51 | });
|
52 | });
|
53 |
|
54 | it("can create a signature", function(done) {
|
55 | _client.createSenderSignature({
|
56 | Name: _email,
|
57 | FromEmail: _email
|
58 | }, done);
|
59 | });
|
60 |
|
61 | it("can edit a signature", function(done) {
|
62 | _client.createSenderSignature({
|
63 | Name: _email,
|
64 | FromEmail: _email
|
65 | }, function(err, signature) {
|
66 | _client.editSenderSignature(signature.ID, {
|
67 | Name: _email + "-updated"
|
68 | }, done);
|
69 | });
|
70 | });
|
71 |
|
72 | it("can delete a signature", function(done) {
|
73 | _client.createSenderSignature({
|
74 | Name: _email,
|
75 | FromEmail: _email
|
76 | }, function(err, signature) {
|
77 | _client.deleteSenderSignature(signature.ID, done);
|
78 | });
|
79 | });
|
80 |
|
81 | it("can resend confirmation for signature", function(done) {
|
82 | _client.createSenderSignature({
|
83 | Name: _email,
|
84 | FromEmail: _email
|
85 | }, function(err, signature) {
|
86 | _client.resendSenderSignatureConfirmation(signature.ID, done);
|
87 | });
|
88 | });
|
89 |
|
90 | it("can verify SPF for signature", function(done) {
|
91 | _client.createSenderSignature({
|
92 | Name: _email,
|
93 | FromEmail: _email
|
94 | }, function(err, signature) {
|
95 | _client.verifySenderSignatureSPF(signature.ID, done);
|
96 | });
|
97 | });
|
98 |
|
99 |
|
100 |
|
101 |
|
102 | }); |
\ | No newline at end of file |