File: FunctionSpaceTestCase.cpp

package info (click to toggle)
python-escript 5.6-10
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 144,304 kB
  • sloc: python: 592,074; cpp: 136,909; ansic: 18,675; javascript: 9,411; xml: 3,384; sh: 738; makefile: 207
file content (72 lines) | stat: -rw-r--r-- 2,251 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72

/*****************************************************************************
*
* Copyright (c) 2003-2020 by The University of Queensland
* http://www.uq.edu.au
*
* Primary Business: Queensland, Australia
* Licensed under the Apache License, version 2.0
* http://www.apache.org/licenses/LICENSE-2.0
*
* Development until 2012 by Earth Systems Science Computational Center (ESSCC)
* Development 2012-2013 by School of Earth Sciences
* Development from 2014-2017 by Centre for Geoscience Computing (GeoComp)
* Development from 2019 by School of Earth and Environmental Sciences
**
*****************************************************************************/

#include <escript/FunctionSpace.h>

#include "FunctionSpaceTestCase.h"

#include <escript/NullDomain.h>

#include <cppunit/TestCaller.h>
#include <iostream>
#include <sstream>

using namespace CppUnit;
using namespace escript;
using namespace std;


void FunctionSpaceTestCase::testAll()
{
  cout << endl;
  cout << "\tTest default FunctionSpace constructor." << endl;

  // Test Default constructor
  FunctionSpace testFunctionSpace0;
  FunctionSpace testFunctionSpace1;

  CPPUNIT_ASSERT(testFunctionSpace0==testFunctionSpace1);

  cout << "\tTest FunctionSpace constructor." << endl;

  // Test constructor
  NullDomain* nullDomain=new NullDomain();	// the shared ptr will deal with it
  int testfunctionSpaceType = nullDomain->getFunctionCode();
  Domain_ptr nulldom(nullDomain);

  FunctionSpace testFunctionSpace2(nulldom, testfunctionSpaceType);
  
  CPPUNIT_ASSERT(testFunctionSpace1.getTypeCode()==testfunctionSpaceType);
  CPPUNIT_ASSERT(*(testFunctionSpace2.getDomain())==*nullDomain);
  CPPUNIT_ASSERT(testFunctionSpace1.getDim()==1);
  CPPUNIT_ASSERT(testFunctionSpace1==testFunctionSpace1);
  CPPUNIT_ASSERT(!(testFunctionSpace1!=testFunctionSpace1));

  FunctionSpace testFunctionSpace3=testFunctionSpace2;	// test copy constructor
cout << "Testing equality\n";
  CPPUNIT_ASSERT(testFunctionSpace3==testFunctionSpace2);
}

TestSuite* FunctionSpaceTestCase::suite()
{
  TestSuite *testSuite = new TestSuite("FunctionSpaceTestCase");

  testSuite->addTest(new TestCaller<FunctionSpaceTestCase>(
              "testAll",&FunctionSpaceTestCase::testAll));
  return testSuite;
}