Sha256: 92283ec75e044fbd6e272caa680663e483dc41d4c6b86657c1b7edee2856db69

Contents?: true

Size: 714 Bytes

Versions: 26

Compression:

Stored size: 714 Bytes

Contents

#include "unittest.hpp"
#include "rice/Critical_Guard.hpp"
#include <stdexcept>

#if RICE__RUBY_VERSION_CODE < 190

using namespace Rice;

TESTSUITE(Critical_Guard);

SETUP(Critical_Guard)
{
  ruby_init();
}

TESTCASE(normal_path)
{
  rb_thread_critical = 1;
  {
    Critical_Guard g;
    ASSERT(rb_thread_critical);
  }
  ASSERT(!rb_thread_critical);
}

TESTCASE(unset_thread_critical_on_destruction)
{
  rb_thread_critical = 1;
  {
    Critical_Guard g;
    ASSERT(rb_thread_critical);
  }
  ASSERT(!rb_thread_critical);
}

TESTCASE(exception)
{
  rb_thread_critical = 1;
  try
  {
    Critical_Guard g;
    throw std::runtime_error("testing");
  }
  catch(...)
  {
  }
  ASSERT(!rb_thread_critical);
}

#endif

Version data entries

26 entries across 26 versions & 5 rubygems

Version Path
rice-1.7.0 test/test_Critical_Guard.cpp
rice-1.6.3 test/test_Critical_Guard.cpp
jameskilton-rice-1.2.0 test/test_Critical_Guard.cpp
rice-1.6.2 test/test_Critical_Guard.cpp
rice-1.6.1 test/test_Critical_Guard.cpp
rice-1.6.0 test/test_Critical_Guard.cpp
rice-1.6.0.pre test/test_Critical_Guard.cpp
rice-1.5.3 test/test_Critical_Guard.cpp
rice-1.5.2 test/test_Critical_Guard.cpp
keyme-rice-1.5.1.keyme1 test/test_Critical_Guard.cpp
keyme-rice-1.5.1.keyme test/test_Critical_Guard.cpp
rice-1.5.1 test/test_Critical_Guard.cpp
rice-1.5.0 test/test_Critical_Guard.cpp
rice-jdguyot-1.4.3p1 test/test_Critical_Guard.cpp
rice-1.4.3 test/test_Critical_Guard.cpp
wurlinc-rice-1.4.0.4 test/test_Critical_Guard.cpp
wurlinc-rice-1.4.0.1 test/test_Critical_Guard.cpp
rice-1.4.2 test/test_Critical_Guard.cpp
rice-jdguyot-1.4.0.p1 test/test_Critical_Guard.cpp
rice-jdguyot-1.4.0 test/test_Critical_Guard.cpp