11import socket from 'src/main'
2- import { dft_response , TestConsole } from './_shared'
2+ import { dft_response , TestConsole , enquiry_options } from './_shared'
33
44describe ( 'main.js' , done => {
55 let server
@@ -146,7 +146,7 @@ describe('main.js', () => {
146146 el . setAttribute ( 'id' , 'socket' )
147147 document . body . appendChild ( el )
148148
149- const vm = socket ( 'public-key' , { contractor_enquiry_button : 'Speak to {contractor_name}' } )
149+ const vm = socket ( 'public-key' )
150150 vm . get_enquiry ( )
151151
152152 setTimeout ( ( ) => {
@@ -155,3 +155,37 @@ describe('main.js', () => {
155155 } , 50 )
156156 } )
157157} )
158+
159+ describe ( 'main.js' , ( ) => {
160+ let server
161+ before ( ( ) => {
162+ server = sinon . fakeServer . create ( )
163+ server . autoRespond = true
164+ server . respondWith ( '/public-key/contractors' , dft_response )
165+ server . respondWith ( '/public-key/enquiry' ,
166+ [ 200 , { 'Content-Type' : 'application/json' } , JSON . stringify ( enquiry_options ) ] )
167+ server . respondWith ( 'POST' , '/public-key/enquiry' ,
168+ [ 201 , { 'Content-Type' : 'application/json' } , '{"response": "ok"}' ] )
169+ } )
170+ after ( ( ) => { server . restore ( ) } )
171+
172+ it ( 'should post enquiry data' , done => {
173+ let el = document . createElement ( 'div' )
174+ el . setAttribute ( 'id' , 'socket' )
175+ document . body . appendChild ( el )
176+
177+ const vm = socket ( 'public-key' )
178+ vm . get_enquiry ( )
179+
180+ setTimeout ( ( ) => {
181+ vm . $set ( vm . enquiry_data , 'first_field' , 'foobar' )
182+ expect ( vm . enquiry_data ) . to . deep . equal ( { first_field : 'foobar' } )
183+ let callback = ( ) => {
184+ expect ( vm . enquiry_data ) . to . deep . equal ( { } )
185+ done ( )
186+ }
187+ vm . submit_enquiry ( callback )
188+ } , 50 )
189+ } )
190+ } )
191+
0 commit comments