All Downloads are FREE. Search and download functionalities are using the official Maven repository.

FitNesseRoot.files.testResults.RestFixtureTests.OverrideContentHandlers.20160309221200_1_0_0_0.xml Maven / Gradle / Ivy

<?xml version="1.0"?>
<testResults>
  <FitNesseVersion>v20150424</FitNesseVersion>
  <rootPath>RestFixtureTests.OverrideContentHandlers</rootPath>
    <result>
    <counts>
      <right>12</right>
      <wrong>0</wrong>
      <ignores>0</ignores>
      <exceptions>0</exceptions>
    </counts>
   <runTimeInMillis>65</runTimeInMillis>
    <content>&lt;div class="collapsible closed"&gt;&lt;ul&gt;&lt;li&gt;&lt;a href='#' class='expandall'&gt;Expand&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href='#' class='collapseall'&gt;Collapse&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
	&lt;p class="title"&gt;Included page: &lt;a href="RestFixtureTests.SetUp"&gt;.RestFixtureTests.SetUp&lt;/a&gt; &lt;a href="RestFixtureTests.SetUp?edit&amp;amp;redirectToReferer=true&amp;amp;redirectAction=" class="edit"&gt;(edit)&lt;/a&gt;&lt;/p&gt;
	&lt;div&gt;&lt;table&gt;
	&lt;tr class="slimRowTitle"&gt;
		&lt;td&gt;script&lt;/td&gt;
		&lt;td colspan="2"&gt;&lt;span class="pass"&gt;smartrics.rest.test.fitnesse.fixture.HttpServerFixture&lt;/span&gt;&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class="slimRowColor0"&gt;
		&lt;td&gt;check&lt;/td&gt;
		&lt;td&gt;is started&lt;/td&gt;
		&lt;td&gt;&lt;span class="pass"&gt;true&lt;/span&gt;&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class="slimRowColor9"&gt;
		&lt;td colspan="3"&gt;&lt;span class="pass"&gt;reset resources database&lt;/span&gt;&lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;br/&gt;RestFixture uses three content handlers to parse and set expectations used to verify the behaviour of HTTP calls. &lt;br/&gt;These are the handlers currently available:&lt;br/&gt;&lt;ul&gt;
	&lt;li&gt;&lt;b&gt;XML&lt;/b&gt; interprets the body as an xml string and allows XPath expressions as expectations on that content&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;JSON&lt;/b&gt; interprets the body as a JSON string and allows expectations to be written in JavaScript&lt;a title="create page" href="RestFixtureTests.JavaScript?edit&amp;amp;nonExistent=true"&gt;[?]&lt;/a&gt;.&lt;/li&gt;
	&lt;li&gt;&lt;b&gt;TEXT&lt;/b&gt; interprets the body as a string and allows regular expression expectations.&lt;/li&gt;
&lt;/ul&gt;
&lt;br/&gt;These are the defaults&lt;br/&gt;&lt;br/&gt;&lt;ul&gt;
	&lt;li&gt;default=XML&lt;/li&gt;
	&lt;li&gt;application/xml=XML&lt;/li&gt;
	&lt;li&gt;application/json=JSON&lt;/li&gt;
	&lt;li&gt;text/plain=TEXT&lt;/li&gt;
&lt;/ul&gt;
&lt;br/&gt;&lt;div class="collapsible"&gt;&lt;ul&gt;&lt;li&gt;&lt;a href='#' class='expandall'&gt;Expand&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href='#' class='collapseall'&gt;Collapse&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
	&lt;p class="title"&gt;Note: unrecognised content types.&lt;/p&gt;
	&lt;div&gt;Content types not recogised will be mapped to the default content handler (XML).&lt;br/&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;br/&gt;For example, XML handler is used for for content types of application/xml; hence XPaths can be used to set expectations:&lt;br/&gt;&lt;br/&gt;&lt;table&gt;
	&lt;tr class="slimRowTitle"&gt;
		&lt;td&gt;&lt;span class="pass"&gt;Table: Rest Fixture&lt;/span&gt;&lt;/td&gt;
		&lt;td colspan="4"&gt;&lt;a href="http://localhost:9876"&gt;http://localhost:9876&lt;/a&gt;&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class="slimRowColor0"&gt;
		&lt;td&gt;GET&lt;/td&gt;
		&lt;td&gt;&lt;div&gt;&lt;a href='http://localhost:9876/resources/0'&gt;/resources/0&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;
		&lt;td&gt;&lt;span class="pass"&gt;&lt;div&gt;200&lt;/div&gt;&lt;/span&gt;&lt;/td&gt;
		&lt;td&gt;&lt;span class="pass"&gt;&lt;div&gt;Content-Type&amp;nbsp;:&amp;nbsp;application/xml;.+&lt;br/&gt;&lt;i&gt;&lt;span class='fit_label'&gt;expected&lt;/span&gt;&lt;/i&gt;&lt;hr/&gt;&lt;br/&gt;Set-Cookie&amp;nbsp;:&amp;nbsp;JID="ABC.${a.y}";&lt;br/&gt;Content-Type&amp;nbsp;:&amp;nbsp;application/xml;charset=ISO-8859-1&lt;br/&gt;Content-Length&amp;nbsp;:&amp;nbsp;183&lt;br/&gt;Server&amp;nbsp;:&amp;nbsp;Jetty(6.0.2)&lt;br/&gt;&lt;i&gt;&lt;span class='fit_label'&gt;actual&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;/span&gt;&lt;/td&gt;
		&lt;td&gt;&lt;span class="pass"&gt;&lt;div&gt;&lt;br/&gt;&amp;nbsp;/resource/name[text()='a&amp;nbsp;funky&amp;nbsp;name']&amp;nbsp;&amp;lt;br/&amp;gt;&lt;br/&gt;&amp;nbsp;/resource/data[text()='an&amp;nbsp;important&amp;nbsp;message']&lt;br/&gt;&lt;br/&gt;&lt;i&gt;&lt;span class='fit_label'&gt;expected&lt;/span&gt;&lt;/i&gt;&lt;hr/&gt;&lt;br/&gt;&amp;lt;resource&amp;gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;name&amp;gt;a&amp;nbsp;funky&amp;nbsp;name&amp;lt;/name&amp;gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;data&amp;gt;an&amp;nbsp;important&amp;nbsp;message&amp;lt;/data&amp;gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;nstag&amp;nbsp;xmlns:ns1='http://smartrics/ns1'&amp;gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;ns1:number&amp;gt;3&amp;lt;/ns1:number&amp;gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/nstag&amp;gt;&lt;br/&gt;&amp;lt;/resource&amp;gt;&lt;br/&gt;&lt;i&gt;&lt;span class='fit_label'&gt;actual&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;/span&gt;&lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;
&lt;br/&gt;Bespoke mapping can be defined in the config using the config key &lt;b&gt;restfixture.content.handlers.map&lt;/b&gt;&lt;br/&gt;&lt;br/&gt;&lt;table&gt;
	&lt;tr class="slimRowTitle"&gt;
		&lt;td&gt;&lt;span class="pass"&gt;Table: Rest Fixture Config&lt;/span&gt;&lt;/td&gt;
		&lt;td&gt;overridesContentHandlerConfig&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class="slimRowColor0"&gt;
		&lt;td&gt;restfixture.content.handlers.map&lt;/td&gt;
		&lt;td&gt;&lt;span class="pass"&gt;&amp;lt;br/&amp;gt;application/xml=TEXT&amp;lt;br/&amp;gt;&lt;/span&gt;&lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;
&lt;br/&gt;&lt;table&gt;
	&lt;tr class="slimRowTitle"&gt;
		&lt;td&gt;&lt;span class="pass"&gt;Table: Rest Fixture&lt;/span&gt;&lt;/td&gt;
		&lt;td&gt;&lt;a href="http://localhost:9876"&gt;http://localhost:9876&lt;/a&gt;&lt;/td&gt;
		&lt;td colspan="3"&gt;overridesContentHandlerConfig&lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class="slimRowColor0"&gt;
		&lt;td&gt;GET&lt;/td&gt;
		&lt;td&gt;&lt;div&gt;&lt;a href='http://localhost:9876/resources/0'&gt;/resources/0&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;
		&lt;td&gt;&lt;span class="pass"&gt;&lt;div&gt;200&lt;/div&gt;&lt;/span&gt;&lt;/td&gt;
		&lt;td&gt;&lt;span class="pass"&gt;&lt;div&gt;Content-Type&amp;nbsp;:&amp;nbsp;application/xml;.+&lt;br/&gt;&lt;i&gt;&lt;span class='fit_label'&gt;expected&lt;/span&gt;&lt;/i&gt;&lt;hr/&gt;&lt;br/&gt;Set-Cookie&amp;nbsp;:&amp;nbsp;JID="ABC.${a.y}";&lt;br/&gt;Content-Type&amp;nbsp;:&amp;nbsp;application/xml;charset=ISO-8859-1&lt;br/&gt;Content-Length&amp;nbsp;:&amp;nbsp;183&lt;br/&gt;Server&amp;nbsp;:&amp;nbsp;Jetty(6.0.2)&lt;br/&gt;&lt;i&gt;&lt;span class='fit_label'&gt;actual&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;/span&gt;&lt;/td&gt;
		&lt;td&gt;&lt;span class="pass"&gt;&lt;div&gt;&amp;lt;resource&amp;gt;[\s.]*&amp;lt;name&amp;gt;a&amp;nbsp;funky&amp;nbsp;name&amp;lt;/name&amp;gt;[\s\w\d&amp;lt;&amp;gt;/=\:'.]*&amp;lt;/resource&amp;gt;[\s]*&lt;br/&gt;&lt;i&gt;&lt;span class='fit_label'&gt;expected&lt;/span&gt;&lt;/i&gt;&lt;hr/&gt;&lt;br/&gt;&amp;lt;resource&amp;gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;name&amp;gt;a&amp;nbsp;funky&amp;nbsp;name&amp;lt;/name&amp;gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;data&amp;gt;an&amp;nbsp;important&amp;nbsp;message&amp;lt;/data&amp;gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;nstag&amp;nbsp;xmlns:ns1='http://smartrics/ns1'&amp;gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;ns1:number&amp;gt;3&amp;lt;/ns1:number&amp;gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/nstag&amp;gt;&lt;br/&gt;&amp;lt;/resource&amp;gt;&lt;br/&gt;&lt;i&gt;&lt;span class='fit_label'&gt;actual&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;/span&gt;&lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;
&lt;br/&gt;</content>
    <relativePageName>OverrideContentHandlers</relativePageName>
            <instructions>
            <instructionResult>
        <instruction>{id='scriptTable_0_0', instruction='make', instanceName='scriptTableActor', className='smartrics.rest.test.fitnesse.fixture.HttpServerFixture', args=[]}</instruction>
        <slimResult>pass(smartrics.rest.test.fitnesse.fixture.HttpServerFixture)</slimResult>
                <expectation>
                    <status>pass</status>
                    <instructionId>scriptTable_0_0</instructionId>
                    <col>1</col>
                              <row>0</row>
                    <type>ConstructionExpectation</type>
                                        <evaluationMessage>smartrics.rest.test.fitnesse.fixture.HttpServerFixture</evaluationMessage>
                  </expectation>
              </instructionResult>
            <instructionResult>
        <instruction>{id='scriptTable_0_1', instruction='call', instanceName='scriptTableActor', methodName='isStarted', args=[]}</instruction>
        <slimResult>pass(true)</slimResult>
                <expectation>
                    <status>pass</status>
                    <instructionId>scriptTable_0_1</instructionId>
                    <col>2</col>
                              <row>1</row>
                    <type>ReturnedValueExpectation</type>
                                        <evaluationMessage>true</evaluationMessage>
                  </expectation>
              </instructionResult>
            <instructionResult>
        <instruction>{id='scriptTable_0_2', instruction='call', instanceName='scriptTableActor', methodName='resetResourcesDatabase', args=[]}</instruction>
        <slimResult>pass()</slimResult>
                <expectation>
                    <status>pass</status>
                    <instructionId>scriptTable_0_2</instructionId>
                    <col>0</col>
                              <row>2</row>
                    <type>ScriptActionExpectation</type>
                                      </expectation>
              </instructionResult>
            <instructionResult>
        <instruction>{id='tableTable_1_0', instruction='make', instanceName='tableTable_1', className='RestFixture', args=[&lt;a href="http://localhost:9876"&gt;http://localhost:9876&lt;/a&gt;]}</instruction>
        <slimResult>pass(Table: Rest Fixture)</slimResult>
                <expectation>
                    <status>pass</status>
                    <instructionId>tableTable_1_0</instructionId>
                    <col>0</col>
                              <row>0</row>
                    <type>ConstructionExpectation</type>
                                        <evaluationMessage>Table: Rest Fixture</evaluationMessage>
                  </expectation>
              </instructionResult>
            <instructionResult>
        <instruction>{id='tableTable_1_1', instruction='call', instanceName='tableTable_1', methodName='doTable', args=[[[GET, /resources/0, 200, Content-Type : application/xml;.+, 
 /resource/name[text()='a funky name'] &lt;br/&gt;
 /resource/data[text()='an important message']
]]]}</instruction>
        <slimResult>pass()</slimResult>
                <expectation>
                    <status>pass</status>
                    <instructionId>tableTable_1_1</instructionId>
                              <type>TableTableExpectation</type>
                                      </expectation>
              </instructionResult>
            <instructionResult>
        <instruction>{id='tableTable_2_0', instruction='make', instanceName='tableTable_2', className='RestFixtureConfig', args=[overridesContentHandlerConfig]}</instruction>
        <slimResult>pass(Table: Rest Fixture Config)</slimResult>
                <expectation>
                    <status>pass</status>
                    <instructionId>tableTable_2_0</instructionId>
                    <col>0</col>
                              <row>0</row>
                    <type>ConstructionExpectation</type>
                                        <evaluationMessage>Table: Rest Fixture Config</evaluationMessage>
                  </expectation>
              </instructionResult>
            <instructionResult>
        <instruction>{id='tableTable_2_1', instruction='call', instanceName='tableTable_2', methodName='doTable', args=[[[restfixture.content.handlers.map, 
application/xml=TEXT
]]]}</instruction>
        <slimResult>pass()</slimResult>
                <expectation>
                    <status>pass</status>
                    <instructionId>tableTable_2_1</instructionId>
                              <type>TableTableExpectation</type>
                                      </expectation>
              </instructionResult>
            <instructionResult>
        <instruction>{id='tableTable_3_0', instruction='make', instanceName='tableTable_3', className='RestFixture', args=[&lt;a href="http://localhost:9876"&gt;http://localhost:9876&lt;/a&gt;, overridesContentHandlerConfig]}</instruction>
        <slimResult>pass(Table: Rest Fixture)</slimResult>
                <expectation>
                    <status>pass</status>
                    <instructionId>tableTable_3_0</instructionId>
                    <col>0</col>
                              <row>0</row>
                    <type>ConstructionExpectation</type>
                                        <evaluationMessage>Table: Rest Fixture</evaluationMessage>
                  </expectation>
              </instructionResult>
            <instructionResult>
        <instruction>{id='tableTable_3_1', instruction='call', instanceName='tableTable_3', methodName='doTable', args=[[[GET, /resources/0, 200, Content-Type : application/xml;.+, &lt;resource&gt;[\s.]*&lt;name&gt;a funky name&lt;/name&gt;[\s\w\d&lt;&gt;/=\:'.]*&lt;/resource&gt;[\s]*]]]}</instruction>
        <slimResult>pass()</slimResult>
                <expectation>
                    <status>pass</status>
                    <instructionId>tableTable_3_1</instructionId>
                              <type>TableTableExpectation</type>
                                      </expectation>
              </instructionResult>
          </instructions>
      </result>
    <finalCounts>
    <right>1</right>
    <wrong>0</wrong>
    <ignores>0</ignores>
    <exceptions>0</exceptions>
  </finalCounts>
  <totalRunTimeInMillis>65</totalRunTimeInMillis>
</testResults>





© 2015 - 2024 Weber Informatics LLC | Privacy Policy