Example #1
0
        /// <summary>
        /// Create a new record for a domain.
        /// </summary>
        public Task <DomainRecord> Create(string domainName, Models.Requests.DomainRecord record)
        {
            var parameters = new List <Parameter> {
                new Parameter("name", domainName, ParameterType.UrlSegment)
            };

            return(_connection.ExecuteRequest <DomainRecord>("domains/{name}/records", parameters, record,
                                                             "domain_record", Method.POST));
        }
        public void CorrectRequestForUpdate() {
            var factory = Substitute.For<IConnection>();
            var domainClient = new DomainRecordsClient(factory);

            var data = new Models.Requests.DomainRecord { Name = "CNAME" };
            domainClient.Update("vevix.net", 9001, data);

            var parameters = Arg.Is<List<Parameter>>(list =>
                (string)list[0].Value == "vevix.net" && (int)list[1].Value == 9001);
            factory.Received().ExecuteRequest<DomainRecord>(
                "domains/{name}/records/{id}", parameters, data, "domain_record", Method.PUT);
        }
        /// <inheritdoc />
        /// <summary>
        /// Create a new record for a domain.
        /// </summary>
        public Task <DomainRecord> Create(string domainName, Models.Requests.DomainRecord record, CancellationToken token = default)
        {
            var parameters = new List <Parameter>
            {
                new Parameter {
                    Name = "name", Value = domainName, Type = ParameterType.UrlSegment
                }
            };

            return(_connection.ExecuteRequest <DomainRecord>("domains/{name}/records", parameters, record,
                                                             "domain_record", Method.POST, token));
        }
        /// <summary>
        /// Update an existing record for a domain
        /// </summary>
        public Task <DomainRecord> Update(string domainName, int recordId, Models.Requests.DomainRecord newRecord)
        {
            var parameters = new List <Parameter> {
                new Parameter {
                    Name = "name", Value = domainName, Type = ParameterType.UrlSegment
                },
                new Parameter {
                    Name = "id", Value = recordId, Type = ParameterType.UrlSegment
                }
            };

            return(_connection.ExecuteRequest <DomainRecord>("domains/{name}/records/{id}", parameters, newRecord,
                                                             "domain_record", Method.PUT));
        }
        public void CorrectRequireForCreate()
        {
            var factory      = Substitute.For <IConnection>();
            var domainClient = new DomainRecordsClient(factory);

            var data = new Models.Requests.DomainRecord {
                Name = "CNAME"
            };

            domainClient.Create("vevix.net", data);

            var parameters = Arg.Is <List <Parameter> >(list => (string)list[0].Value == "vevix.net");

            factory.Received()
            .ExecuteRequest <DomainRecord>("domains/{name}/records", parameters, data,
                                           "domain_record", Method.POST);
        }