Skip to content

Commit a7c4534

Browse files
authored
Merge pull request #108 from iivvoo/master
Do not send zero-datetime (0001-01-01T00:00:00Z) if not set
2 parents bf934da + 1261a4b commit a7c4534

File tree

2 files changed

+14
-2
lines changed

2 files changed

+14
-2
lines changed

voicemessage/voice_message.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,9 @@ func paramsToRequest(recipients []string, body string, params *Params) (*voiceMe
119119
request.Voice = params.Voice
120120
request.Repeat = params.Repeat
121121
request.IfMachine = params.IfMachine
122-
request.ScheduledDatetime = params.ScheduledDatetime.Format(time.RFC3339)
122+
if !params.ScheduledDatetime.IsZero() {
123+
request.ScheduledDatetime = params.ScheduledDatetime.Format(time.RFC3339)
124+
}
123125

124126
return request, nil
125127
}

voicemessage/voice_message_test.go

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import (
55
"testing"
66
"time"
77

8-
"github.com/messagebird/go-rest-api/v9"
8+
messagebird "github.com/messagebird/go-rest-api/v9"
99
"github.com/messagebird/go-rest-api/v9/internal/mbtest"
1010
"github.com/stretchr/testify/assert"
1111
)
@@ -124,3 +124,13 @@ func TestRequestDataForVoiceMessage(t *testing.T) {
124124
assert.Equal(t, "continue", request.IfMachine)
125125
assert.Equal(t, voiceParams.ScheduledDatetime.Format(time.RFC3339), request.ScheduledDatetime)
126126
}
127+
128+
func TestRequestDataForVoiceMessageZeroScheduledDatetime(t *testing.T) {
129+
voiceParams := &Params{
130+
// ScheduledDatetime will default to zero-time
131+
}
132+
133+
request, err := paramsToRequest([]string{"31612345678"}, "MyBody", voiceParams)
134+
assert.NoError(t, err)
135+
assert.Equal(t, "", request.ScheduledDatetime, "Uninitialized ScheduledDatetime should default to empty string")
136+
}

0 commit comments

Comments
 (0)