//**************************************************************************
//
//
// National Institute Of Standards and Technology
// DTS Version 1.1
//
// HTMLFormElement Interface
//**************************************************************************
function HTMLFormElement()
{
var tests = new Array (HTML0001HFME(),HTML0002HFME(),HTML0003HFME(),HTML0004HFME(),HTML0005HFME(),HTML0006HFME(),HTML0007HFME(),HTML0008HFME(),HTML0009HFME(),HTML0010HFME());
return tests;
}
//------------------------ test case HTML-0001HFME -------------------------
//
// Testing feature - The "elements" attribute returns a collection of
// all control elements in the form.
//
// Testing approach - Retrieve the "elements" attribute from the first
// FORM element of the testing document and examine
// its value. It should be equal to a collection
// whose length is 1.
//
// Semantic Requirements: 1
//
// Last modification date - October 25, 1999
//
// Written by: Carmelo Montanez
//----------------------------------------------------------------------------
function HTML0001HFME()
{
var computedValue = "";
var expectedValue = 10;
var results = "";
var testNode = "";
var formsCollection = "";
results = new testResults("HTML0001HFME");
results.description = "The \"elements\" attribute returns a "+
"collection of all control elements in "+
"the form.";
//
// Retrieve targeted data.
//
testNode = new HTMLNodeObject(FORM,FIRST);
//
// and access its "elements" attribute.
//
formsCollection = testNode.node.elements;
computedValue = formsCollection.length;
//
// Write out results
//
results.expected = expectedValue;
results.actual = computedValue;
return results;
}
//------------------------ End test case HTML-0001HFME -------------------------
//
//------------------------ test case HTML-0002HFME -------------------------
//
// Testing feature - The "length" attribute contains the number of form
// controls in the form.
//
// Testing approach - Retrieve the "length" attribute from the first
// FORM element of the testing document and examine
// its value.
//
// Semantic Requirements: 2
//
// Last modification date - October 25, 1999
//
// Written by: Carmelo Montanez
//----------------------------------------------------------------------------
function HTML0002HFME()
{
var computedValue = "";
var expectedValue = 10;
var results = "";
var testNode = "";
results = new testResults("HTML0002HFME");
results.description = "The \"length\" attribute contains the "+
"number of form controls in the form.";
//
// Retrieve targeted data.
//
testNode = new HTMLNodeObject(FORM,FIRST);
//
// and access its "length" attribute.
//
computedValue = testNode.node.length;
//
// Write out results
//
results.expected = expectedValue;
results.actual = computedValue;
return results;
}
//------------------------ End test case HTML-0002HFME -------------------------
//
//------------------------ test case HTML-0003HFME -------------------------
//
// Testing feature - The "name" attribute names the form.
//
// Testing approach - Retrieve the first FORM element of the testing document
// and set its "name" attribute to "form1_name", then
// retrieve it back.
//
// Semantic Requirements: 3
//
// Last modification date - November 1, 1999
//
// Written by: Carmelo Montanez
//----------------------------------------------------------------------------
function HTML0003HFME()
{
var computedValue = "";
var expectedValue = "FORM1_NAME";
var results = "";
var testNode = "";
results = new testResults("HTML0003HFME");
results.description = "The \"name\" attribute names the form.";
//
// Retrieve targeted data.
//
testNode = new HTMLNodeObject(FORM,FIRST);
//
// and set its "name" attribute.
//
testNode.node.name="form1_name";
computedValue = testNode.node.name;
computedValue = computedValue.toUpperCase();
//
// Write out results
//
results.expected = expectedValue;
results.actual = computedValue;
return results;
}
//------------------------ End test case HTML-0003HFME -------------------------
//
//------------------------ test case HTML-0004HFME -------------------------
//
// Testing feature - The "acceptCharset" attribute contains a list of
// character sets supported by the server.
//
// Testing approach - Retrieve the "acceptCharset" attribute from the first
// FORM element of the testing document and examine
// its value. It should be equal to "US-ASCII".
//
// Semantic Requirements: 4
//
// Last modification date - August 25, 1999
//
// Written by: Carmelo Montanez
//----------------------------------------------------------------------------
function HTML0004HFME()
{
var computedValue = "";
var expectedValue = "US-ASCII";
var results = "";
var testNode = "";
results = new testResults("HTML0004HFME");
results.description = "The \"acceptCharset\" attribute contains a "+
"list of character sets supported by the "+
"server.";
//
// Retrieve targeted data.
//
testNode = new HTMLNodeObject(FORM,FIRST);
//
// and access its "acceptCharset" attribute.
//
computedValue = testNode.node.acceptCharset;
computedVAlue = computedValue.toUpperCase();
//
// Write out results
//
results.expected = expectedValue;
results.actual = computedValue;
return results;
}
//------------------------ End test case HTML-0004HFME -------------------------
//
//------------------------ test case HTML-0005HFME -------------------------
//
// Testing feature - The "action" attribute specifies the server-side form
// handler.
//
// Testing approach - Retrieve the "action" attribute from the first
// FORM element of the testing document and examine
// its value. It should be equal to "./files/getData.pl".
//
// Semantic Requirements: 5
//
// Last modification date - October 4, 1999
//
// Written by: Carmelo Montanez
//----------------------------------------------------------------------------
function HTML0005HFME()
{
var computedValue = "";
var expectedValue = "./FILES/GETDATA.PL";
var results = "";
var testNode = "";
results = new testResults("HTML0005HFME");
results.description = "The \"action\" attribute specifies the "+
"server-side form handler";
//
// Retrieve targeted data.
//
testNode = new HTMLNodeObject(FORM,FIRST);
//
// and access its "action" attribute.
//
computedValue = testNode.node.action;
computedValue = computedValue.toUpperCase();
//
// Write out results
//
results.expected = expectedValue;
results.actual = computedValue;
return results;
}
//------------------------ End test case HTML-0005HFME -------------------------
//
//------------------------ test case HTML-0006HFME -------------------------
//
// Testing feature - The "enctype" attribute specifies the content type of
// the subimitted form.
//
// Testing approach - Retrieve the "enctype" attribute from the first
// FORM element of the testing document and examine
// its value. It should be equal to "application/x-www
// -form-urlencoded".
//
// Semantic Requirements: 6
//
// Last modification date - September 2, 1999
//
// Written by: Carmelo Montanez
//----------------------------------------------------------------------------
function HTML0006HFME()
{
var computedValue = "";
var expectedValue = "APPLICATION/X-WWW-FORM-URLENCODED";
var results = "";
var testNode = "";
results = new testResults("HTML0006HFME");
results.description = "The \"enctype\" attribute specifies the "+
"content type of the submitted form.";
//
// Retrieve targeted data.
//
testNode = new HTMLNodeObject(FORM,FIRST);
//
// and access its "enctype" attribute.
//
computedValue = testNode.node.enctype;
// computedValue = computedValue.toUpperCase();
//
// Write out results
//
results.expected = expectedValue;
results.actual = computedValue;
return results;
}
//------------------------ End test case HTML-0006HFME -------------------------
//
//------------------------ test case HTML-0007HFME -------------------------
//
// Testing feature - The "method" attribute specifies the HTTP method
// used to submit the form.
//
// Testing approach - Retrieve the "method" attribute from the first
// FORM element of the testing document and examine
// its value. It should be equal to "post".
//
// Semantic Requirements: 7
//
// Last modification date - September 2, 1999
//
// Written by: Carmelo Montanez
//----------------------------------------------------------------------------
function HTML0007HFME()
{
var computedValue = "";
var expectedValue = "POST";
var results = "";
var testNode = "";
results = new testResults("HTML0007HFME");
results.description = "The \"method\" attribute specifies the "+
"HTTP method used to submit the form.";
//
// Retrieve targeted data.
//
testNode = new HTMLNodeObject(FORM,FIRST);
//
// and access its "method" attribute.
//
computedValue = testNode.node.method;
computedValue = computedValue.toUpperCase();
//
// Write out results
//
results.expected = expectedValue;
results.actual = computedValue;
return results;
}
//------------------------ End test case HTML-0007HFME -------------------------
//
//------------------------ test case HTML-0008HFME -------------------------
//
// Testing feature - The "target" attribute specifies the frame to
// render the resource in.
//
// Testing approach - Retrieve the "target" attribute from the first
// FORM element of the testing document and examine
// its value. It should be equal to "_blank".
//
// Semantic Requirements: 8
//
// Last modification date - September 2, 1999
//
// Written by: Carmelo Montanez
//----------------------------------------------------------------------------
function HTML0008HFME()
{
var computedValue = "";
var expectedValue = "_BLANK";
var results = "";
var testNode = "";
results = new testResults("HTML0008HFME");
results.description = "The \"target\" attribute specifies the "+
"frame to render the resource in.";
//
// Retrieve targeted data.
//
testNode = new HTMLNodeObject(FORM,FIRST);
//
// and access its "target" attribute.
//
computedValue = testNode.node.target;
computedValue = computedValue.toUpperCase();
//
// Write out results
//
results.expected = expectedValue;
results.actual = computedValue;
return results;
}
//------------------------ End test case HTML-0008HFME -------------------------
//
//------------------------ test case HTML-0009HFME -------------------------
//
// Testing feature - The "submit()" method submits this form.
//
// Testing approach - Retrieve the the second FORM element of the testing
// document and invoke its "submit()" method. Invocation
// of this method should cause the "onsubmit" event to be
// triggered and in turn the JavaScript method "setName"
// to be executed which changes the element's name. This
// test does not work properly.
//
// Semantic Requirements: 9
//
// Last modification date - November 1, 1999
//
// Written by: Carmelo Montanez
//----------------------------------------------------------------------------
function HTML0009HFME()
{
var computedValue = "";
var expectedValue = "EN-US";
var results = "";
var testNode = "";
results = new testResults("HTML0009HFME");
results.description = "The \"submit()\" method submits this "+
"form.";
//
// Retrieve targeted data.
//
testNode = new HTMLNodeObject(FORM,SECOND);
//
// and invoke its "submit()" method.
//
// testNode.node.submit();
computedValue = testNode.node.lang;
computedValue = computedValue.toUpperCase();
//
// Write out results
//
results.expected = expectedValue;
results.actual = computedValue;
return results;
}
//------------------------ End test case HTML-0009HFME -------------------------
//
//------------------------ test case HTML-0010HFME -------------------------
//
// Testing feature - The "reset()" method submits this form.
//
// Testing approach - Retrieve the the first FORM element of the testing
// document and change to name of the element to "newname",
// then invoke its "reset()" method. Upon invocation of
// this method, the form should have all its elements
// restored to their default values.
//
// Semantic Requirements: 10
//
// Last modification date - October 4, 1999
//
// Written by: Carmelo Montanez
//----------------------------------------------------------------------------
function HTML0010HFME()
{
var computedValue = "";
var expectedValue = "NEW_TITLE";
var results = "";
var testNode = "";
results = new testResults("HTML0010HFME");
results.description = "The \"reset()\" method restores the "+
"element's default values.";
//
// Retrieve targeted data.
//
testNode = new HTMLNodeObject(FORM,SECOND);
//
// and access its "reset()" method.
//
testNode.node.reset();
computedValue = testNode.node.title;
computedValue = computedValue.toUpperCase();
//
// Write out results
//
results.expected = expectedValue;
results.actual = computedValue;
return results;
}
//------------------------ End test case HTML-0010HFME -------------------------